1# its.cnf 2# Intelligent Transport Systems (ITS) 3 4#.OPT 5PER 6UNALIGNED 7#.END 8 9#.EXPORTS 10 11#.OMIT_ASSIGNMENT 12# Get rid of unused code warnings 13TisTpgTransactionsPdu 14DENM 15DENMv1 16CAM 17CAMv1 18SSEM 19SREM 20IVIM 21MAPEM 22SPATEM 23EV-RSR 24RTCMEM 25CPM 26EvcsnPdu 27 28# Could be Language but size of Language bit string is 10 and DriverLanguage max is 15... 29DriverLanguage 30ChargingPower 31StatusResponseCode 32CurrentVehicleConfiguration 33TpgLocation 34CS5 35DSRCmsgID 36#.NO_EMIT 37Code-Units WITHOUT_VALS 38 39#.MODULE 40CAMv1-PDU-Descriptions camv1 41CAM-PDU-Descriptions cam 42DENMv1-PDU-Descriptions denmv1 43DENM-PDU-Descriptions denm 44EVCSN-PDU-Descriptions evcsn 45EV-RechargingSpotReservation-PDU-Descriptions evrsr 46IVIM-PDU-Descriptions ivim 47TIS-TPG-Transactions-Descriptions tistpg 48SPATEM-PDU-Descriptions spatem 49MAPEM-PDU-Descriptions mapem 50SREM-PDU-Descriptions srem 51SSEM-PDU-Descriptions ssem 52AVIAEINumberingAndDataStructures anads 53ITS-Container its 54ITS-ContainerV1 itsv1 55ElectronicRegistrationIdentificationVehicleDataModule erivdm 56CITSapplMgmtIDs csmid 57EfcDsrcApplication dsrc_app 58IVI ivi 59GDD gdd 60DSRC dsrc 61RTCMEM-PDU-Descriptions rtcmem 62CPM-PDU-Descriptions cpm 63#.END 64 65#.PDU 66CoopAwareness 67CoopAwarenessV1 68DecentralizedEnvironmentalNotificationMessage 69DecentralizedEnvironmentalNotificationMessageV1 70EVChargingSpotNotificationPOIMessage 71EV-RSR-MessageBody 72TisTpgTransaction 73IviStructure 74SPAT 75MapData 76SignalRequestMessage 77SignalStatusMessage 78RTCMcorrections 79CollectivePerceptionMessage 80ItsPduHeader 81# AddGrpC regional extension 82ConnectionManeuverAssist-addGrpC 83ConnectionTrajectory-addGrpC 84NodeAttributeSet-addGrpC 85IntersectionState-addGrpC 86MapData-addGrpC 87Position3D-addGrpC 88RestrictionUserType-addGrpC 89SignalStatusPackage-addGrpC 90LaneAttributes-addGrpC 91MovementEvent-addGrpC 92RequestorDescription-addGrpC 93 94#.TYPE_RENAME 95 96# GicPart 97GicPart/relevanceZoneIds T_GicPartRelevanceZoneIds 98GicPart/detectionZoneIds T_GicPartDetectionZoneIds 99GicPart/driverAwarenessZoneIds T_GicPartDriverAwarenessZoneIds 100GicPart/extraText T_GicPartExtraText 101 102TcPart/relevanceZoneIds T_TcPartRelevanceZoneIds 103TcPart/detectionZoneIds T_TcPartDetectionZoneIds 104TcPart/driverAwarenessZoneIds T_TcPartDriverAwarenessZoneIds 105TcPart/text T_TcPartText 106 107TractorCharacteristics/equalTo T_TractorCharactEqualTo 108TractorCharacteristics/notEqualTo T_TractorCharactNotEqualTo 109 110TrailerCharacteristics/equalTo T_TrailerCharactEqualTo 111TrailerCharacteristics/notEqualTo T_TrailerCharactNotEqualTo 112 113SPAT/regional T_SPATRegional 114SignalRequestMessage/regional T_SRMRegional 115SignalStatusMessage/regional T_SSMRegional 116MapData/regional T_MAPRegional 117AdvisorySpeed/regional T_AdvisorySpeedRegional 118ComputedLane/regional T_ComputedLaneRegional 119ConnectionManeuverAssist/regional T_ConnectionManeuverAssistRegional 120GenericLane/regional T_GenericLaneRegional 121IntersectionGeometry/regional T_IntersectionGeometryRegional 122IntersectionState/regional T_IntersectionStateRegional 123LaneDataAttribute/regional T_LaneDataAttributeRegional 124MovementEvent/regional T_MovementEventRegional 125MovementState/regional T_MovementStateRegional 126NodeAttributeSetXY/regional T_NodeAttributeSetXYRegional 127Position3D/regional T_Position3DRegional 128RequestorDescription/regional T_RequestorDescriptionRegional 129RestrictionUserType/regional T_RestrictionUserTypeRegional 130RoadSegment/regional T_RoadSegmentRegional 131SignalRequestPackage/regional T_SignalRequestPackageRegional 132SignalRequest/regional T_SignalRequestRegional 133SignalStatusPackage/regional T_SignalStatusPackageRegional 134SignalStatus/regional T_SignalStatusRegional 135#.END 136 137#.FIELD_RENAME 138TisTpgDRM/location drmLocation 139TisTpgTRM/location trmLocation 140TisTpgTCM/location tcmLocation 141 142TisTpgVDRM/management vdrmManagement 143TisTpgDRM/management drmManagement 144TisTpgEOFM/management eofmManagement 145TisTpgTCM/management tcmManagement 146TisTpgVDPM/management vdpmManagement 147TisTpgTRM/management trmManagement 148TisTpgSNM/management snmManagement 149 150TisTpgDRM/situation drmSituation 151TisTpgTRM/situation trmSituation 152TisTpgTCM/situation tcmSituation 153 154Distance/value dValue 155DistanceOrDuration/value dodValue 156Weight/value wValue 157AnyCatalogue/value acValue 158VcCode/value vcValue 159 160Ext1/content e1Content 161Ext2/content e2Content 162VarLengthNumber/content vlnContent 163 164Ext2/extension e1Extension 165Ext1/extension e2Extension 166VarLengthNumber/extension vlnExtension 167 168RSCode/layoutComponentId rscLayoutComponentId 169Text/layoutComponentId tLayoutComponentId 170LayoutComponent/layoutComponentId lcLayoutComponentId 171 172ISO14823Code/pictogramCode icPictogramCode 173AnyCatalogue/pictogramCode acPictogramCode 174 175VcCode/validity vcValidity 176LaneInformation/validity liValidity 177 178RoadSegmentReferenceID/id rsrId 179RoadSegment/id rsId 180RequestorDescription/id rdId 181SignalRequesterInfo/id sriId 182IntersectionGeometry/id igId 183IntersectionState/id isId 184SignalRequest/id srId 185SignalStatus/id ssId 186IntersectionReferenceID/id irId 187RestrictionClassAssignment/id scaId 188 189AdvisorySpeed/confidence asConfidence 190TimeChangeDetails/confidence tcdConfidence 191 192SPAT/intersections spatIntersections 193MapData/intersections mdIntersections 194 195RequestorPositionVector/position rpvPosition 196RequestorDescription/position rdPosition 197 198SPAT/regional spatRegional 199SignalRequestMessage/regional srmRegional 200SignalStatusMessage/regional ssmRegional 201MapData/regional mapRegional 202AdvisorySpeed/regional asRegional 203ComputedLane/regional clRegional 204ConnectionManeuverAssist/regional cmaRegional 205GenericLane/regional glRegional 206IntersectionGeometry/regional igRegional 207IntersectionState/regional isRegional 208LaneDataAttribute/regional ldaRegional 209MovementEvent/regional meRegional 210MovementState/regional msRegional 211NodeAttributeSetXY/regional nasxyRegional 212Position3D/regional p3dRegional 213RequestorDescription/regional rdRegional 214RestrictionUserType/regional rutRegional 215RoadSegment/regional rsRegional 216SignalRequestPackage/regional srpRegional 217SignalRequest/regional srRegional 218SignalStatusPackage/regional sspRegional 219SignalStatus/regional ssRegional 220 221LaneAttributes/regional laRegional 222NodeOffsetPointXY/regional nopxyRegional 223RequestorType/regional rtRegional 224 225SignalRequestPackage/request srpRequest 226SignalRequesterInfo/request sriRequest 227RequestorType/request rtRequest 228 229RegulatorySpeedLimit/speed rslSpeed 230TransmissionAndSpeed/speed tasSpeed 231RequestorPositionVector/speed rpvSpeed 232AdvisorySpeed/speed asSpeed 233FullPositionVector/speed fpvSpeed 234SpeedandHeadingandThrottleConfidence/speed shtcSpeed 235 236SignalRequestPackage/minute srpMinute 237SignalStatusPackage/minute sspMinute 238 239FullPositionVector/heading fpvHeading 240RequestorPositionVector/heading rpvHeading 241SpeedandHeadingandThrottleConfidence/heading shtcheading 242 243FullPositionVector/elevation fpvElevation 244PositionConfidenceSet/elevation pcsElevation 245Position3D/elevation p3dElevation 246 247IntersectionState/status isStatus 248SignalStatusPackage/status sspStatus 249SignalStatusMessage/status ssmStatus 250 251SPAT/timeStamp spatTimeStamp 252SignalRequestMessage/timeStamp srmTimeStamp 253SignalStatusMessage/timeStamp ssmTimeStamp 254MapData/timeStamp mdTimeStamp 255IntersectionState/timeStamp isTimeStamp 256 257AdvisorySpeed/type asType 258RegulatorySpeedLimit/type rslType 259RequestorDescription/type rdType 260 261TcPart/detectionZoneIds tpDetectionZoneIds 262TcPart/driverAwarenessZoneIds tpDriverAwarenessZoneIds 263TcPart/relevanceZoneIds tpRelevanceZoneIds 264 265GicPart/detectionZoneIds gpDetectionZoneIds 266GicPart/driverAwarenessZoneIds gpDriverAwarenessZoneIds 267GicPart/relevanceZoneIds gpRelevanceZoneIds 268 269TractorCharacteristics/equalTo toEqualTo 270TractorCharacteristics/notEqualTo toNotEqualTo 271 272TrailerCharacteristics/equalTo teEqualTo 273TrailerCharacteristics/notEqualTo teNotEqualTo 274 275Node-XY-20b/x n20bX 276Node-XY-22b/x n22bX 277Node-XY-24b/x n24bX 278Node-XY-26b/x n26bX 279Node-XY-28b/x n28bX 280Node-XY-32b/x n32bX 281 282Node-XY-20b/y n20bY 283Node-XY-22b/y n22bY 284Node-XY-24b/y n24bY 285Node-XY-26b/y n26bY 286Node-XY-28b/y n28bY 287Node-XY-32b/y n32bY 288 289#.TYPE_ATTR 290Longitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_longitude_fmt) 291Latitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_latitude_fmt) 292AltitudeValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_altitude_fmt) 293DeltaLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_longitude_fmt) 294DeltaLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_latitude_fmt) 295DeltaAltitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_altitude_fmt) 296PathDeltaTime DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_path_delta_time_fmt) 297SemiAxisLength DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_sax_length_fmt) 298HeadingValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_heading_value_fmt) 299HeadingConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_heading_confidence_fmt) 300SpeedValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_speed_value_fmt) 301SpeedConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_speed_confidence_fmt) 302VehicleLengthValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_vehicle_length_value_fmt) 303VehicleWidth DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_vehicle_width_fmt) 304LongitudinalAccelerationValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_acceleration_value_fmt) 305LateralAccelerationValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_acceleration_value_fmt) 306VerticalAccelerationValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_acceleration_value_fmt) 307AccelerationConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_acceleration_confidence_fmt) 308CurvatureValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_curvature_value_fmt) 309YawRateValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_yaw_rate_value_fmt) 310SteeringWheelAngleValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_swa_value_fmt) 311SteeringWheelAngleConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_swa_confidence_fmt) 312 313GenerationDeltaTime STRINGS=NULL 314 315MinuteOfTheYear DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_moi_fmt) 316DSecond DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_dsecond_fmt) 317TimeMark DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_time_mark_fmt) 318TimeIntervalConfidence STRINGS=VALS(dsrc_TimeIntervalConfidence_vals) 319Velocity DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_velocity_fmt) 320Angle DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_angle_fmt) 321HeadingDSRC DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_angle_fmt) 322DeltaTime DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(dsrc_delta_time_fmt) 323 324TimeOfMeasurement STRINGS=NULL 325ClassConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_general_confidence_fmt) 326FreeSpaceConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_general_confidence_fmt) 327ObjectConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_general_confidence_fmt) 328DistanceValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_distance_value_fmt) 329DistanceConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_distance_confidence_fmt) 330SpeedValueExtended DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_speed_value_ext_fmt) 331CartesianAngleValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_cartesian_angle_value_fmt) 332AngleConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_angle_confidence_fmt) 333ObjectDimensionValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_object_dimension_value_fmt) 334ObjectDimensionConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_object_dimension_confidence_fmt) 335 336#.END 337 338#.FIELD_ATTR 339IntersectionState/status ABBREV=intersectionState.status 340SignalStatusPackage/status ABBREV=signalStatusPackage.status 341SignalStatusMessage/status ABBREV=signalStatusMessage.status 342FullPositionVector/elevation ABBREV=fullPositionVector.elevation 343PositionConfidenceSet/elevation ABBREV=positionConfidenceSet.elevation 344Position3D/elevation ABBREV=position3D.elevation 345 346#.END 347 348#.MAKE_DEFINES 349ItsPduHeader/messageID 350#.END 351 352#.MAKE_ENUM 353RegionId 354CauseCodeType 355 356#.FN_HDR CoopAwareness 357 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 358 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "CAM"); 359 col_set_str(actx->pinfo->cinfo, COL_INFO, "CAM"); 360#.END 361 362#.FN_HDR CoopAwarenessV1 363 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 364 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "CAMv1"); 365 col_set_str(actx->pinfo->cinfo, COL_INFO, "CAMv1"); 366#.END 367 368#.FN_HDR DecentralizedEnvironmentalNotificationMessage 369 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 370 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "DENM"); 371 col_set_str(actx->pinfo->cinfo, COL_INFO, "DENM"); 372#.END 373 374#.FN_HDR DecentralizedEnvironmentalNotificationMessageV1 375 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 376 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "DENMv1"); 377 col_set_str(actx->pinfo->cinfo, COL_INFO, "DENMv1"); 378#.END 379 380#.FN_HDR EVChargingSpotNotificationPOIMessage 381 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 382 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "EVCSN"); 383 col_set_str(actx->pinfo->cinfo, COL_INFO, "EVCSN"); 384#.END 385 386#.FN_HDR EV-RSR-MessageBody 387 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 388 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "EV-RSR"); 389 col_set_str(actx->pinfo->cinfo, COL_INFO, "EV-RSR"); 390#.END 391 392#.FN_HDR TisTpgTransaction 393 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 394 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "TISTPG"); 395 col_set_str(actx->pinfo->cinfo, COL_INFO, "TISTPG"); 396#.END 397 398#.FN_HDR IviStructure 399 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 400 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "IVIM"); 401 col_set_str(actx->pinfo->cinfo, COL_INFO, "IVIM"); 402#.END 403 404#.FN_HDR SignalStatusMessage 405 its_private_data_t *regext = wmem_new0(actx->pinfo->pool, its_private_data_t); 406 actx->private_data = (void*)regext; 407 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "SSEM"); 408 col_set_str(actx->pinfo->cinfo, COL_INFO, "SSEM"); 409 regext->type = Reg_SignalStatusMessage; 410#.END 411 412#.FN_HDR SignalRequestMessage 413 its_private_data_t *regext = wmem_new0(actx->pinfo->pool, its_private_data_t); 414 actx->private_data = (void*)regext; 415 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "SREM"); 416 col_set_str(actx->pinfo->cinfo, COL_INFO, "SREM"); 417 regext->type = Reg_SignalRequestMessage; 418#.END 419 420#.FN_HDR MapData 421 its_private_data_t *regext = wmem_new0(actx->pinfo->pool, its_private_data_t); 422 actx->private_data = (void*)regext; 423 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "MAPEM"); 424 col_set_str(actx->pinfo->cinfo, COL_INFO, "MAPEM"); 425 regext->type = Reg_MapData; 426#.END 427 428#.FN_HDR SPAT 429 its_private_data_t *regext = wmem_new0(actx->pinfo->pool, its_private_data_t); 430 actx->private_data = (void*)regext; 431 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "SPATEM"); 432 col_set_str(actx->pinfo->cinfo, COL_INFO, "SPATEM"); 433 regext->type = Reg_SPAT; 434#.END 435 436 437#.FN_HDR RTCMcorrections 438 its_private_data_t *regext = wmem_new0(actx->pinfo->pool, its_private_data_t); 439 actx->private_data = (void*)regext; 440 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "RTCMEM"); 441 col_set_str(actx->pinfo->cinfo, COL_INFO, "RTCMEM"); 442 regext->type = Reg_RTCMcorrections; 443#.END 444 445#.FN_HDR CollectivePerceptionMessage 446 actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t); 447 col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "CPM"); 448 col_set_str(actx->pinfo->cinfo, COL_INFO, "CPM"); 449#.END 450 451 452#.FN_HDR ConnectionManeuverAssist-addGrpC 453 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 454#.END 455 456 457#.FN_HDR ConnectionTrajectory-addGrpC 458 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 459#.END 460 461 462#.FN_HDR NodeAttributeSet-addGrpC 463 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 464#.END 465 466 467#.FN_HDR IntersectionState-addGrpC 468 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 469#.END 470 471 472#.FN_HDR MapData-addGrpC 473 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 474#.END 475 476 477#.FN_HDR Position3D-addGrpC 478 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 479#.END 480 481 482#.FN_HDR RestrictionUserType-addGrpC 483 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 484#.END 485 486 487#.FN_HDR SignalStatusPackage-addGrpC 488 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 489#.END 490 491 492#.FN_HDR LaneAttributes-addGrpC 493 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 494#.END 495 496 497#.FN_HDR MovementEvent-addGrpC 498 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 499#.END 500 501 502#.FN_HDR RequestorDescription-addGrpC 503 actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t); 504#.END 505 506 507#.FN_HDR AdvisorySpeed 508 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 509 ((its_private_data_t*)actx->private_data)->type = Reg_AdvisorySpeed; 510#.END 511#.FN_FTR AdvisorySpeed 512 ((its_private_data_t*)actx->private_data)->type = save; 513#.END 514 515 516#.FN_HDR ComputedLane 517 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 518 ((its_private_data_t*)actx->private_data)->type = Reg_ComputedLane; 519#.END 520#.FN_FTR ComputedLane 521 ((its_private_data_t*)actx->private_data)->type = save; 522#.END 523 524 525#.FN_HDR ConnectionManeuverAssist 526 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 527 ((its_private_data_t*)actx->private_data)->type = Reg_ConnectionManeuverAssist; 528#.END 529#.FN_FTR ConnectionManeuverAssist 530 ((its_private_data_t*)actx->private_data)->type = save; 531#.END 532 533 534#.FN_HDR GenericLane 535 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 536 ((its_private_data_t*)actx->private_data)->type = Reg_GenericLane; 537#.END 538#.FN_FTR GenericLane 539 ((its_private_data_t*)actx->private_data)->type = save; 540#.END 541 542 543#.FN_HDR IntersectionGeometry 544 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 545 ((its_private_data_t*)actx->private_data)->type = Reg_IntersectionGeometry; 546#.END 547#.FN_FTR IntersectionGeometry 548 ((its_private_data_t*)actx->private_data)->type = save; 549#.END 550 551 552#.FN_HDR IntersectionState 553 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 554 ((its_private_data_t*)actx->private_data)->type = Reg_IntersectionState; 555#.END 556#.FN_FTR IntersectionState 557 ((its_private_data_t*)actx->private_data)->type = save; 558#.END 559 560 561#.FN_HDR LaneAttributes 562 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 563 ((its_private_data_t*)actx->private_data)->type = Reg_LaneAttributes; 564#.END 565#.FN_FTR LaneAttributes 566 ((its_private_data_t*)actx->private_data)->type = save; 567#.END 568 569 570#.FN_HDR LaneDataAttribute 571 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 572 ((its_private_data_t*)actx->private_data)->type = Reg_LaneDataAttribute; 573#.END 574#.FN_FTR LaneDataAttribute 575 ((its_private_data_t*)actx->private_data)->type = save; 576#.END 577 578 579#.FN_HDR MovementEvent 580 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 581 ((its_private_data_t*)actx->private_data)->type = Reg_MovementEvent; 582#.END 583#.FN_FTR MovementEvent 584 ((its_private_data_t*)actx->private_data)->type = save; 585#.END 586 587 588#.FN_HDR MovementState 589 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 590 ((its_private_data_t*)actx->private_data)->type = Reg_MovementState; 591#.END 592#.FN_FTR MovementState 593 ((its_private_data_t*)actx->private_data)->type = save; 594#.END 595 596 597#.FN_HDR NodeAttributeSetXY 598 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 599 ((its_private_data_t*)actx->private_data)->type = Reg_NodeAttributeSetXY; 600#.END 601#.FN_FTR NodeAttributeSetXY 602 ((its_private_data_t*)actx->private_data)->type = save; 603#.END 604 605 606#.FN_HDR NodeOffsetPointXY 607 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 608 ((its_private_data_t*)actx->private_data)->type = Reg_NodeOffsetPointXY; 609#.END 610#.FN_FTR NodeOffsetPointXY 611 ((its_private_data_t*)actx->private_data)->type = save; 612#.END 613 614 615#.FN_HDR Position3D 616 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 617 ((its_private_data_t*)actx->private_data)->type = Reg_Position3D; 618#.END 619#.FN_FTR Position3D 620 ((its_private_data_t*)actx->private_data)->type = save; 621#.END 622 623 624#.FN_HDR RequestorDescription 625 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 626 ((its_private_data_t*)actx->private_data)->type = Reg_RequestorDescription; 627#.END 628#.FN_FTR RequestorDescription 629 ((its_private_data_t*)actx->private_data)->type = save; 630#.END 631 632 633#.FN_HDR RequestorType 634 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 635 ((its_private_data_t*)actx->private_data)->type = Reg_RequestorType; 636#.END 637#.FN_FTR RequestorType 638 ((its_private_data_t*)actx->private_data)->type = save; 639#.END 640 641 642#.FN_HDR RestrictionUserType 643 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 644 ((its_private_data_t*)actx->private_data)->type = Reg_RestrictionUserType; 645#.END 646#.FN_FTR RestrictionUserType 647 ((its_private_data_t*)actx->private_data)->type = save; 648#.END 649 650 651#.FN_HDR RoadSegment 652 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 653 ((its_private_data_t*)actx->private_data)->type = Reg_RoadSegment; 654#.END 655#.FN_FTR RoadSegment 656 ((its_private_data_t*)actx->private_data)->type = save; 657#.END 658 659 660#.FN_HDR SignalRequestPackage 661 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 662 ((its_private_data_t*)actx->private_data)->type = Reg_SignalRequestPackage; 663#.END 664#.FN_FTR SignalRequestPackage 665 ((its_private_data_t*)actx->private_data)->type = save; 666#.END 667 668 669#.FN_HDR SignalRequest 670 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 671 ((its_private_data_t*)actx->private_data)->type = Reg_SignalRequest; 672#.END 673#.FN_FTR SignalRequest 674 ((its_private_data_t*)actx->private_data)->type = save; 675#.END 676 677 678#.FN_HDR SignalStatusPackage 679 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 680 ((its_private_data_t*)actx->private_data)->type = Reg_SignalStatusPackage; 681#.END 682#.FN_FTR SignalStatusPackage 683 ((its_private_data_t*)actx->private_data)->type = save; 684#.END 685 686 687#.FN_HDR SignalStatus 688 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 689 ((its_private_data_t*)actx->private_data)->type = Reg_SignalStatus; 690#.END 691#.FN_FTR SignalStatus 692 ((its_private_data_t*)actx->private_data)->type = save; 693#.END 694 695 696#.FN_HDR SignalControlZone 697 enum regext_type_enum save = ((its_private_data_t*)actx->private_data)->type; 698 ((its_private_data_t*)actx->private_data)->type = Reg_SignalControlZone; 699#.END 700#.FN_FTR SignalControlZone 701 ((its_private_data_t*)actx->private_data)->type = save; 702#.END 703 704#.FN_PARS RegionId VAL_PTR = &((its_private_data_t*)actx->private_data)->region_id 705 706#.FN_PARS ItsPduHeader/protocolVersion VAL_PTR = &((its_header_t*)actx->private_data)->version 707#.FN_PARS ItsPduHeader/messageID VAL_PTR = &((its_header_t*)actx->private_data)->msgId 708#.FN_PARS StationID VAL_PTR = actx->private_data?&((its_header_t*)actx->private_data)->stationId:NULL 709 710#.FN_BODY ItsPduHeader 711 guint8 version = tvb_get_guint8(tvb, 0); 712 int test_offset = offset; 713 if ((test_offset = dissector_try_uint(its_version_subdissector_table, version, tvb, actx->pinfo, tree))) { 714 return test_offset; 715 } 716 // Lets try it that way, regarless of version value... 717 its_header_t *hdr = wmem_new0(actx->pinfo->pool, its_header_t); 718 actx->private_data = (void*)hdr; 719%(DEFAULT_BODY)s 720 tap_queue_packet(its_tap, actx->pinfo, actx->private_data); 721 tvbuff_t *next_tvb = tvb_new_subset_length(tvb, offset >> 3, -1); 722 int data_offset = dissector_try_uint(its_msgid_subdissector_table, (hdr->version << 16)+hdr->msgId, next_tvb, actx->pinfo, tree); 723 if (!data_offset) { 724 proto_tree_add_expert(tree, actx->pinfo, &ei_its_no_sub_dis, next_tvb, 0, - 1); 725 data_offset = call_data_dissector(next_tvb, actx->pinfo, tree); 726 } 727 offset += data_offset; 728#.END 729 730#.ASSIGN_VALUE_TO_TYPE # ISO_TS_19091_DSRC ASN.1 does not have constants assigned to types 731 732#RegionId 733noRegion RegionId 734addGrpA RegionId 735addGrpB RegionId 736addGrpC RegionId 737 738#.END 739 740#.REGISTER 741# Not used due to "protocol" detection issue: we shall register for its subdissector not dsrc 742#.END 743 744#.FN_PARS RegionalExtension/regExtValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_regextval_pdu 745 746 747#.FN_BODY TypeOfReceptacle VAL_PTR=¶meter_tvb LEN_PTR=&len 748 tvbuff_t *parameter_tvb = NULL; 749 int len; 750%(DEFAULT_BODY)s 751 /* TODO Provide values? 752 * See ETSI TS 101 556-1 V1.1.1 Annex B Description for data elements 753 * Table B.2: Coding of the type of receptacle field 754 * 755 * Code Charging Standard plug / Type of Nb of Maximum Maximum 756 * spot type cable current phases Voltage Current 757 * ------------------------------------------------------------------------- 758 * 0000 Socket IEC 62196-2 type 1 AC Single 240V 16A 759 * 0001 Socket IEC 62196-2 type 1 AC Single 240V 32A 760 * 0010 Socket IEC 62196-2 type 1 AC Single 240V 80A 761 * 0011 Socket IEC 62196-2 type 1 AC Single 120V 12A 762 * 0100 Socket IEC 62196-2 type 1 AC Single 120V 16A 763 * 0101 Socket Standard Household AC Single 250V 16A 764 * 0110 Socket Standard Household AC Single 480V 16A 765 * 0111 Socket IEC 62196-2 type 2 AC Single 230V 16A 766 * 1000 Socket IEC 62196-2 type 2 AC Single 250V 32A 767 * 1001 Socket IEC 62196-2 type 2 AC Single 480V 32A 768 * 1010 Socket IEC 62196-2 type 2 AC Single 400V 32/250A 769 * 1011 Socket IEC 62196-2 type 3A AC Single 250V 32A 770 * 1100 Socket IEC 62196-2 type 3B AC Single 480V 32A 771 * 1101 Socket Reserved for Future AC Single 1000V 400A 772 IEC 62196-3 773 * 1110 Cable for Reserved 774 DC charging 775 * 1111 Cable for Reserved 776 DC charging 777 */ 778 779#.NO_EMIT WITH_VALS 780#.END 781 782#.NO_EMIT ONLY_VALS 783Latitude 784Longitude 785AltitudeValue 786DeltaLatitude 787DeltaLongitude 788DeltaAltitude 789PathDeltaTime 790SemiAxisLength 791$ITS-ContainerV1$HeadingValue 792HeadingConfidence 793SpeedValue 794SpeedConfidence 795VehicleLengthValue 796VehicleWidth 797LongitudinalAccelerationValue 798LateralAccelerationValue 799VerticalAccelerationValue 800AccelerationConfidence 801CurvatureValue 802YawRateValue 803SteeringWheelAngleValue 804SteeringWheelAngleConfidence 805GenerationDeltaTime 806TimeOfMeasurement 807ClassConfidence 808FreeSpaceConfidence 809ObjectConfidence 810DistanceValue 811DistanceConfidence 812SpeedValueExtended 813CartesianAngleValue 814AngleConfidence 815ObjectDimensionValue 816ObjectDimensionConfidence 817#.END 818 819#.NO_EMIT WITHOUT_VALS 820# Just keep the vals. hf are made manually and used in cause/subcause decoding 821PostCrashSubCauseCode 822VehicleBreakdownSubCauseCode 823DangerousSituationSubCauseCode 824DangerousEndOfQueueSubCauseCode 825RescueAndRecoveryWorkInProgressSubCauseCode 826SignalViolationSubCauseCode 827CollisionRiskSubCauseCode 828HazardousLocation-AnimalOnTheRoadSubCauseCode 829HazardousLocation-ObstacleOnTheRoadSubCauseCode 830HazardousLocation-SurfaceConditionSubCauseCode 831HazardousLocation-DangerousCurveSubCauseCode 832EmergencyVehicleApproachingSubCauseCode 833HumanProblemSubCauseCode 834StationaryVehicleSubCauseCode 835SlowVehicleSubCauseCode 836AdverseWeatherCondition-PrecipitationSubCauseCode 837AdverseWeatherCondition-VisibilitySubCauseCode 838AdverseWeatherCondition-AdhesionSubCauseCode 839AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode 840WrongWayDrivingSubCauseCode 841HumanPresenceOnTheRoadSubCauseCode 842AccidentSubCauseCode 843TrafficConditionSubCauseCode 844#.END 845 846#.FN_PARS CauseCodeType VAL_PTR = &((its_private_data_t*)actx->private_data)->cause_code 847 848#.FN_BODY SubCauseCodeType 849 // Overwrite hf_index 850 hf_index = *find_subcause_from_cause((CauseCodeType_enum) ((its_private_data_t*)actx->private_data)->cause_code); 851%(DEFAULT_BODY)s 852#.END 853 854# 855# RCUnit subtypes bodies implemented manually as asn2wrs is not able to handle subtype constraint 856# 857 858#.FN_BODY InternationalSign-speedLimits/unit 859 offset = dissect_per_constrained_integer(%(TVB)s, %(OFFSET)s, %(ACTX)s, %(TREE)s, %(HF_INDEX)s, 860 0U, 1U, %(VAL_PTR)s, FALSE); 861#.END 862 863#.FN_BODY Weight/unit 864 offset = dissect_per_constrained_integer(%(TVB)s, %(OFFSET)s, %(ACTX)s, %(TREE)s, %(HF_INDEX)s, 865 10U, 12U, %(VAL_PTR)s, FALSE); 866#.END 867 868#.FN_BODY DistOrDuration-Units 869 offset = dissect_per_constrained_integer(%(TVB)s, %(OFFSET)s, %(ACTX)s, %(TREE)s, %(HF_INDEX)s, 870 2U, 9U, %(VAL_PTR)s, FALSE); 871#.END 872 873#.FN_BODY Distance/unit 874 offset = dissect_per_constrained_integer(%(TVB)s, %(OFFSET)s, %(ACTX)s, %(TREE)s, %(HF_INDEX)s, 875 2U, 8U, %(VAL_PTR)s, FALSE); 876#.END 877 878#=== PtActivation ======================================================= 879 880#.FN_HDR PtActivation 881 void *priv_data = actx->private_data; 882 its_pt_activation_data_t *pta; 883 884 pta = wmem_new0(actx->pinfo->pool, its_pt_activation_data_t); 885 actx->private_data = pta; 886#.FN_FTR 887 dissector_try_uint_new(cam_pt_activation_table, pta->type, pta->data, actx->pinfo, tree, TRUE, NULL); 888 actx->private_data = priv_data; 889#.END 890 891#.FN_PARS 892PtActivationType VAL_PTR = &((its_pt_activation_data_t*)actx->private_data)->type 893PtActivationData VAL_PTR = &((its_pt_activation_data_t*)actx->private_data)->data 894#.END 895