ITS
facilitiesApi.cpp
Go to the documentation of this file.
1 #include <facilitiesApi.h>
2 
3 /*
4  * Getters
5  */
6 /*
7  * DE
8  */
9 /*
10 CurvatureCalculationMode_t getConfCurvatureCalculationMode(){return CurvatureCalculationMode_unavailable;}
11 
12 DangerousGoodsBasic_t getConfDangerousGoodsBasic(){return DangerousGoodsBasic_miscellaneousDangerousSubstances;}
13 
14 DriveDirection_t getConfDriveDirection(){return DriveDirection_unavailable;}
15 
16 EmbarkationStatus_t getConfEmbarkationStatus(){return false;}
17 
18 ExteriorLights_t getConfExteriorLights()
19 {
20  ExteriorLights_t e;
21 
22  e.bits_unused = 0;
23  e.size = 1;
24  e.buf = (uint8_t*)calloc(e.size, 1);
25 
26  return e;
27 }
28 
29 LightBarSirenInUse_t getConfLightBarSirenInUse()
30 {
31  LightBarSirenInUse_t l;
32 
33  l.bits_unused = 6;
34  l.size = 1;
35  l.buf = (uint8_t*)calloc(l.size, 1);
36 
37  return l;
38 }
39 
40 SpecialTransportType_t getConfSpecialTransportType()
41 {
42  SpecialTransportType_t s;
43 
44  s.bits_unused = 4;
45  s.size = 1;
46  s.buf = (uint8_t*)calloc(s.size, 1);
47 
48  return s;
49 }
50 
51 StationID_t getConfStationID()
52 {
53  StationID_t s = rand() % 256;
54 
55  return s;
56 
57 }
58 
59 StationType_t getConfStationType(){return StationType_passengerCar;}
60 
61 VehicleRole_t getConfVehicleRole(){return VehicleRole_default;}
62 
63 VehicleWidth_t getConfVehicleWidth(){return VehicleWidth_unavailable;}
64 */
65 
66 /*
67  * DF
68  */
69 /*
70 Curvature_t getConfCurvature()
71 {
72  Curvature_t c;
73 
74  c.curvatureValue = CurvatureValue_unavailable;
75  c.curvatureConfidence = CurvatureConfidence_unavailable;
76 
77  return c;
78 }
79 
80 LongitudinalAcceleration_t getConfLongitudinalAcceleration()
81 {
82  LongitudinalAcceleration_t l;
83 
84  l.longitudinalAccelerationValue = LongitudinalAccelerationValue_unavailable;
85  l.longitudinalAccelerationConfidence = AccelerationConfidence_unavailable;
86 
87  return l;
88 }
89 
90 PathHistory_t getConfPathHistory()
91 {
92  PathHistory_t p;
93 
94  p.list.array = 0;
95  p.list.count = 0;
96 
97  return p;
98 }
99 
100 VehicleLength_t getConfVehicleLength()
101 {
102  VehicleLength_t v;
103 
104  v.vehicleLengthValue = VehicleLengthValue_unavailable;
105  v.vehicleLengthConfidenceIndication = VehicleLengthConfidenceIndication_unavailable;
106 
107  return v;
108 }
109 
110 YawRate_t getConfYawRate()
111 {
112  YawRate_t y;
113 
114  y.yawRateValue = YawRateValue_unavailable;
115  y.yawRateConfidence = YawRateConfidence_unavailable;
116 
117  return y;
118 }
119 */
120 
121 /*
122  * Setters
123  */
124 /*
125  * ASN.1
126  */
128 {
129  BIT_STRING_t other;
130 
131  other.bits_unused = b.bits_unused;
132  other.size = b.size;
133  other.buf = (uint8_t*)calloc(other.size, 1);
134  memcpy(other.buf, b.buf, other.size);
135 
136  return other;
137 }
138 
140 
142 {
143  IA5String_t other;
144 
145  other.size = i.size;
146  other.buf = (uint8_t*)calloc(i.size, 1);
147  memcpy(other.buf, i.buf, other.size);
148 
149  return other;
150 }
151 
153 {
154  INTEGER_t other;
155  memcpy(&other, &i, sizeof i);
156 
157  return other;
158 }
159 
161 {
162  OCTET_STRING_t other;
163 
164  other.size = o.size;
165  other.buf = (uint8_t*)calloc(other.size, 1);
166  memcpy(other.buf, o.buf, other.size);
167 
168  return other;
169 }
170 
172 {
173  UTF8String_t other;
174 
175  other.size = u.size;
176  other.buf = (uint8_t*)calloc(other.size, 1);
177  memcpy(other.buf, u.buf, other.size);
178 
179  return other;
180 }
181 
182 /*
183  * Common Data Dictionnary
184  */
185 /*
186  * DE
187  */
213 {return d;}
247 {return l;}
280 {return s;}
284 {return s;}
290 {return t;}
297 {return v;}
310 
311 /*
312  * DF
313  */
315 {
316  ActionID_t other;
317 
320 
321  return other;
322 }
323 
325 {
326  Altitude_t other;
327 
330 
331  return other;
332 }
333 
335 {
336  CauseCode_t other;
337 
340 
341  return other;
342 }
343 
345 {
346  CenDsrcTollingZone_t other;
347 
351  {
352  other.cenDsrcTollingZoneID = (CenDsrcTollingZoneID_t*)calloc(1,
353  sizeof *other.cenDsrcTollingZoneID);
355  }
356  else
357  other.cenDsrcTollingZoneID = 0;
358 
359  return other;
360 }
361 
363 {
364  ClosedLanes_t other;
365 
366  if(c.hardShoulderStatus)
367  {
368  other.hardShoulderStatus = (HardShoulderStatus_t*)calloc(1, sizeof *other.hardShoulderStatus);
370  }
371  else
372  other.hardShoulderStatus = 0;
374 
375  return other;
376 }
377 
379 {
380  Curvature_t other;
381 
384 
385  return other;
386 }
387 
389 {
391 
393  other.unNumber = d.unNumber;
397  if(d.emergencyActionCode)
398  {
399  other.emergencyActionCode = (IA5String_t*)calloc(1, sizeof *other.emergencyActionCode);
401  }
402  else
403  other.emergencyActionCode = 0;
404  if(d.phoneNumber)
405  {
406  other.phoneNumber = (IA5String_t*)calloc(1, sizeof *other.phoneNumber);
407  *other.phoneNumber = setIA5String(*d.phoneNumber);
408  }
409  else
410  other.phoneNumber = 0;
411  if(d.companyName)
412  {
413  other.companyName = (UTF8String_t*)calloc(1, sizeof *other.companyName);
415  }
416  else
417  other.companyName = 0;
418 
419  return other;
420 }
421 
423 {
425 
429 
430  return other;
431 }
432 
434 {
435  EventHistory_t other;
436  EventPoint_t ep;
437  int i;
438 
439  if(e.list.count)
440  {
441  other.list.count = 0;
442  other.list.array = (EventPoint_t**)calloc(1, sizeof *other.list.array);
443  for(i = 0 ; i < e.list.count ; i++)
444  {
445  ep = setEventPoint(*e.list.array[i]);
446  other.list.array[i] = (EventPoint_t*)calloc(1, sizeof *other.list.array[i]);
447  ASN_SEQUENCE_ADD(&other, &ep);
448  }
449  }
450  else
451  {
452  other.list.array = 0;
453  other.list.count = 0;
454  }
455 
456  return other;
457 }
458 
460 {
461  EventPoint_t other;
462 
464  if(e.eventDeltaTime)
465  {
466  other.eventDeltaTime = (PathDeltaTime_t*)calloc(1, sizeof *other.eventDeltaTime);
468  }
469  else
470  other.eventDeltaTime = 0;
472 
473  return other;
474 }
475 
477 {
478  Heading_t other;
479 
482 
483  return other;
484 }
485 
487 {
488  ItineraryPath_t other;
490  int j;
491 
492  if(i.list.count)
493  {
494  other.list.count = 0;
495  other.list.array = (ReferencePosition_t**)calloc(1, sizeof *other.list.array);
496  for(j = 0 ; j < i.list.count ; j++)
497  {
498  rp = setReferencePosition(*i.list.array[j]);
499  other.list.array[j] = (ReferencePosition_t*)calloc(1, sizeof *other.list.array[j]);
500  ASN_SEQUENCE_ADD(&other, &rp);
501  }
502  }
503  else
504  {
505  other.list.array = 0;
506  other.list.count = 0;
507  }
508 
509  return other;
510 }
511 
513 {
514  ItsPduHeader_t other;
515 
517  other.messageID = i.messageID;
518  other.stationID = setStationID(i.stationID);
519 
520  return other;
521 }
522 
524 {
525  LateralAcceleration_t other;
526 
529 
530  return other;
531 }
532 
534 {
536 
541 
542  return other;
543 }
544 
546 {
547  PathHistory_t other;
548  PathPoint_t pp;
549  int i;
550 
551  if(p.list.count)
552  {
553  other.list.array = (PathPoint_t**)calloc(1, sizeof *other.list.array);
554  other.list.count = 0;
555  for(i = 0 ; i < p.list.count ; i++)
556  {
557  pp = setPathPoint(*p.list.array[i]);
558  other.list.array[i] = (PathPoint_t*)calloc(1, sizeof *other.list.array[i]);
559  ASN_SEQUENCE_ADD(&other, &pp);
560  }
561  }
562  else
563  {
564  other.list.array = 0;
565  other.list.count = 0;
566  }
567 
568  return other;
569 }
570 
572 {
573  PathPoint_t other;
574 
576  if(p.pathDeltaTime)
577  {
578  other.pathDeltaTime = (PathDeltaTime_t*) calloc(1, sizeof *other.pathDeltaTime);
580  }
581  else
582  other.pathDeltaTime = 0;
583 
584  return other;
585 }
586 
588 {
590 
594 
595  return other;
596 }
597 
599 {
600  PositionOfPillars_t other;
601  PosPillar_t *pp = 0;
602  int i;
603 
605  if(p.list.count)
606  {
607  other.list.count = 0;
608  other.list.array = (PosPillar_t**)calloc(1, sizeof *other.list.array);
609  for(i = 0 ; i < p.list.count ; i++)
610  {
611  pp = (PosPillar_t*)calloc(1, sizeof *pp);
612  *pp = setPosPillar(*p.list.array[i]);
613  other.list.array[i] = (PosPillar_t*)calloc(1, sizeof *other.list.array[i]);
614  ASN_SEQUENCE_ADD(&other, pp);
615  }
616  }
617  else
618  {
619  other.list.array = 0;
620  other.list.count = 0;
621  }
622 
623  return other;
624 }
625 
627 {
629 
631  if(p.expiryTime)
632  {
633  other.expiryTime = (TimestampIts_t*)calloc(1, sizeof *other.expiryTime);
635  }
636  else
637  other.expiryTime = 0;
640  if(p.protectedZoneRadius)
641  {
642  other.protectedZoneRadius = (ProtectedZoneRadius_t*)calloc(1, sizeof *other.protectedZoneRadius);
644  }
645  else
646  other.protectedZoneRadius = 0;
647  if(p.protectedZoneID)
648  {
649  other.protectedZoneID = (ProtectedZoneID_t*)calloc(1, sizeof *p.protectedZoneID);
651  }
652  else
653  other.protectedZoneID = 0;
654 
655  return other;
656 }
657 
659 {
662  int i;
663 
664  if(p.list.count)
665  {
666  other.list.count = 0;
667  other.list.array = (ProtectedCommunicationZone_t**)calloc(1, sizeof *other.list.array);
668  for(i = 0 ; i < p.list.count ; i++)
669  {
670  pcz = setProtectedCommunicationZone(*p.list.array[i]);
671  other.list.array[i] = (ProtectedCommunicationZone_t*)calloc(1, sizeof *other.list.array[i]);
672  ASN_SEQUENCE_ADD(&other, &pcz);
673  }
674  }
675  else
676  {
677  other.list.array = 0;
678  other.list.count = 0;
679  }
680 
681  return other;
682 }
683 
685 {
686  PtActivation_t other;
687 
690 
691  return other;
692 }
693 
695 {
696  ReferencePosition_t other;
697 
698  other.latitude = setLatitude(r.latitude);
699  other.longitude = setLongitude(r.longitude);
701  other.altitude = setAltitude(r.altitude);
702 
703  return other;
704 }
705 
707 {
708  RestrictedTypes_t other;
709  StationType_t st;
710  int i;
711 
712  if(r.list.count)
713  {
714  other.list.count = 0;
715  other.list.array = (StationType_t**)calloc(1, sizeof *other.list.array);
716  for(i = 0 ; i < r.list.count ; i++)
717  {
718  st = setStationType(*r.list.array[i]);
719  other.list.array[i] = (StationType_t*)calloc(1, sizeof *other.list.array[i]);
720  ASN_SEQUENCE_ADD(&other, &st);
721  }
722  }
723  else
724  {
725  other.list.array = 0;
726  other.list.count = 0;
727  }
728 
729  return other;
730 }
731 
733 {
734  Speed_t other;
735 
738 
739  return other;
740 }
741 
743 {
744  SteeringWheelAngle_t other;
745 
747  other.steeringWheelAngleConfidence = setSteeringWheelangleConfidence(s.steeringWheelAngleConfidence);
748 
749  return other;
750 }
751 
753 {
754  Traces_t other;
755  int i;
756 
757  if(t.list.count)
758  {
759  other.list.count = t.list.count;
760  other.list.array = (PathHistory_t**)calloc(1, sizeof *other.list.array);
761  other.list.free = t.list.free;
762  other.list.size = t.list.size;
763 
764  for(i = 0 ; i < t.list.count ; i++)
765  other.list.array[i] = t.list.array[i];
766  }
767  else
768  {
769  other.list.array = 0;
770  other.list.count = 0;
771  other.list.free = 0;
772  other.list.size = 0;
773  }
774 
775  return other;
776 }
777 
779 {
781 
784 
785  return other;
786 }
787 
789 {
791 
792  if(v.wMInumber)
793  {
794  other.wMInumber = (WMInumber_t*)calloc(1, sizeof *v.wMInumber);
795  *other.wMInumber = setWMInumber(*v.wMInumber);
796  }
797  else
798  other.wMInumber = 0;
799  if(v.vDS)
800  {
801  other.vDS = (VDS_t*)calloc(1, sizeof *v.vDS);
802  *other.vDS = setVDS(*v.vDS);
803  }
804  else
805  other.vDS = 0;
806 
807  return other;
808 }
809 
811 {
812  VehicleLength_t other;
813 
817 
818  return other;
819 }
820 
822 {
823  YawRate_t other;
824 
827 
828  return other;
829 }
830 
831 /*
832  * CAM
833  */
834 /*
835  * DE
836  */
838 /*
839  * DF
840  */
842 {
843  BasicContainer_t other;
844 
847 
848  return other;
849 }
850 
853 {
855 
856  other.heading = setHeading(b.heading);
857  other.speed = setSpeed(b.speed);
862  other.curvature = setCurvature(b.curvature);
864  other.yawRate = setYawRate(b.yawRate);
865  if(b.accelerationControl)
866  {
867  other.accelerationControl = (AccelerationControl_t*)calloc(1, sizeof *other.accelerationControl);
869  }
870  else
871  other.accelerationControl = 0;
872  if(b.lanePosition)
873  {
874  other.lanePosition = (LanePosition_t*)calloc(1, sizeof *other.lanePosition);
876  }
877  else
878  other.lanePosition = 0;
879  if(b.steeringWheelAngle)
880  {
881  other.steeringWheelAngle = (SteeringWheelAngle_t*)calloc(1, sizeof *other.steeringWheelAngle);
883  }
884  else
885  other.steeringWheelAngle = 0;
886  if(b.lateralAcceleration)
887  {
888  other.lateralAcceleration = (LateralAcceleration_t*)calloc(1, sizeof *other.lateralAcceleration);
890  }
891  else
892  other.lateralAcceleration = 0;
894  {
895  other.verticalAcceleration = (VerticalAcceleration_t*)calloc(1,
896  sizeof *other.verticalAcceleration);
898  }
899  else
900  other.verticalAcceleration = 0;
901  if(b.performanceClass)
902  {
903  other.performanceClass = (PerformanceClass_t*)calloc(1, sizeof *other.performanceClass);
905  }
906  else
907  other.performanceClass = 0;
908  if(b.cenDsrcTollingZone)
909  {
910  other.cenDsrcTollingZone = (CenDsrcTollingZone_t*)calloc(1, sizeof *other.cenDsrcTollingZone);
912  }
913  else
914  other.cenDsrcTollingZone = 0;
915 
916  return other;
917 }
918 
921 {
923 
927 
928  return other;
929 }
930 
932 {
933  CAM_t other;
934 
935  other.header = setItsPduHeader(c.header);
936  other.cam = setCoopAwareness(c.cam);
937 
938  return other;
939 }
940 
942 {
943  CamParameters_t other;
944 
948  {
949  other.lowFrequencyContainer =
950  (LowFrequencyContainer_t*)calloc(1, sizeof *other.lowFrequencyContainer);
952  }
953  else
954  other.lowFrequencyContainer = 0;
956  {
958  (SpecialVehicleContainer_t*)calloc(1, sizeof *c.specialVehicleContainer);
960  }
961  else
962  other.specialVehicleContainer = 0;
963 
964  return other;
965 }
966 
968 {
969  CoopAwareness_t other;
970 
973 
974  return other;
975 }
976 
978 {
980 
982 
983  return other;
984 }
985 
987 {
988  EmergencyContainer_t other;
989 
991  if(e.incidentIndication)
992  {
993  other.incidentIndication = (CauseCode_t*)calloc(1, sizeof *other.incidentIndication);
995  }
996  else
997  other.incidentIndication = 0;
998  if(e.emergencyPriority)
999  {
1000  other.emergencyPriority = (EmergencyPriority_t*)calloc(1, sizeof *other.emergencyPriority);
1002  }
1003  else
1004  other.emergencyPriority = 0;
1005 
1006  return other;
1007 }
1008 
1010 {
1012 
1013  other.present = h.present;
1014  switch (other.present)
1015  {
1019  break;
1023  break;
1024  default:
1025  break;
1026  }
1027 
1028  return other;
1029 }
1030 
1032 {
1034 
1035  other.present = l.present;
1036  switch (other.present)
1037  {
1041  break;
1042  default:
1043  break;
1044  }
1045 
1046  return other;
1047 }
1048 
1050 {
1052 
1054  if(p.ptActivation)
1055  {
1056  other.ptActivation = (PtActivation_t*)calloc(1, sizeof *other.ptActivation);
1058  }
1059  else
1060  other.ptActivation = 0;
1061 
1062  return other;
1063 }
1064 
1066 {
1067  RescueContainer_t other;
1068 
1070 
1071  return other;
1072 }
1073 
1075 {
1077 
1078  if(r.roadworksSubCauseCode)
1079  {
1080  other.roadworksSubCauseCode =
1081  (RoadworksSubCauseCode_t*)calloc(1, sizeof other.roadworksSubCauseCode);
1083  }
1084  else
1085  other.roadworksSubCauseCode = 0;
1087  if(r.closedLanes)
1088  {
1089  other.closedLanes = (ClosedLanes_t*)calloc(1, sizeof *other.closedLanes);
1090  *other.closedLanes = setClosedLanes(*r.closedLanes);
1091  }
1092  else
1093  other.closedLanes = 0;
1094 
1095  return other;
1096 }
1097 
1099 {
1101 
1103  {
1106  sizeof *other.protectedCommunicationZonesRSU);
1109  }
1110  else
1112 
1113  return other;
1114 }
1115 
1117 {
1118  SafetyCarContainer_t other;
1119 
1121  if(s.incidentIndication)
1122  {
1123  other.incidentIndication = (CauseCode_t*)calloc(1, sizeof *s.incidentIndication);
1125  }
1126  else
1127  other.incidentIndication = 0;
1128  if(s.trafficRule)
1129  {
1130  other.trafficRule = (TrafficRule_t*)calloc(1, sizeof *other.trafficRule);
1131  *other.trafficRule = setTrafficRule(*s.trafficRule);
1132  }
1133  else
1134  other.trafficRule = 0;
1135  if(s.speedLimit)
1136  {
1137  other.speedLimit = (SpeedLimit_t*)calloc(1, sizeof *other.speedLimit);
1138  *other.speedLimit = setSpeedLimit(*s.speedLimit);
1139  }
1140  else
1141  other.speedLimit = 0;
1142 
1143  return other;
1144 }
1145 
1147 {
1149 
1152 
1153  return other;
1154 }
1155 
1157 {
1159 
1160  other.present = s.present;
1161  switch (other.present)
1162  {
1166  break;
1170  break;
1174  break;
1178  break;
1181  break;
1184  break;
1187  break;
1188  default:
1189  break;
1190  }
1191 
1192  return other;
1193 }
1194 
1195 /*
1196  * DENM
1197  */
1198 /*
1199  * DE
1200  */
1202 
1203 /*
1204  * DF
1205  */
1207 {
1208  AlacarteContainer_t other;
1209 
1210  memset(&other, 0, sizeof other);
1211 
1212  if(a.lanePosition)
1213  {
1214  other.lanePosition = (LanePosition_t*)calloc(1, sizeof *other.lanePosition);
1216  }
1217  else
1218  other.lanePosition = 0;
1219  if(a.impactReduction)
1220  {
1221  other.impactReduction = (ImpactReductionContainer_t*)calloc(1, sizeof *other.impactReduction);
1223  }
1224  else
1225  other.impactReduction = 0;
1226  if(a.externalTemperature)
1227  {
1228  other.externalTemperature = (Temperature_t*)calloc(1, sizeof *other.externalTemperature);
1230  }
1231  else
1232  other.externalTemperature = 0;
1233  if(a.roadWorks)
1234  {
1235  other.roadWorks = (RoadWorksContainerExtended_t*)calloc(1, sizeof *other.roadWorks);
1237  }
1238  else
1239  other.roadWorks = 0;
1240  if(a.positioningSolution)
1241  {
1242  other.positioningSolution =
1243  (PositioningSolutionType_t*)calloc(1, sizeof *other.positioningSolution);
1245  }
1246  else
1247  other.positioningSolution = 0;
1248  if(a.stationaryVehicle)
1249  {
1251  sizeof *other.stationaryVehicle);
1253  }
1254  else
1255  other.stationaryVehicle = 0;
1256 
1257  return other;
1258 }
1259 
1262 {
1264 
1266  if(d.situation)
1267  {
1268  other.situation = (SituationContainer_t*)calloc(1, sizeof *other.situation);
1270  }
1271  else
1272  other.situation = 0;
1273  if(d.location)
1274  {
1275  other.location = (LocationContainer_t*)calloc(1, sizeof *other.location);
1276  *other.location = setLocationContainer(*d.location);
1277  }
1278  else
1279  other.location = 0;
1280  if(d.alacarte)
1281  {
1282  other.alacarte = (AlacarteContainer_t*)calloc(1, sizeof *other.alacarte);
1283  *other.alacarte = setAlacarteContainer(*d.alacarte);
1284  }
1285  else
1286  other.alacarte = 0;
1287 
1288  return other;
1289 }
1290 
1292 {
1293  DENM_t other;
1294 
1295  other.header = setItsPduHeader(d.header);
1297 
1298  return other;
1299 }
1300 
1302 {
1304 
1313  other.posFrontAx = setPosFrontAx(i.posFrontAx);
1317 
1318  return other;
1319 }
1320 
1322 {
1323  LocationContainer_t other;
1324 
1325  if(l.eventSpeed)
1326  {
1327  other.eventSpeed = (Speed_t*)calloc(1, sizeof *other.eventSpeed);
1328  *other.eventSpeed = setSpeed(*l.eventSpeed);
1329  }
1330  else
1331  other.eventSpeed = 0;
1332  if(l.eventPositionHeading)
1333  {
1334  other.eventPositionHeading = (Heading_t*)calloc(1, sizeof *other.eventPositionHeading);
1336  }
1337  else
1338  other.eventPositionHeading = 0;
1339  other.traces = setTraces(l.traces);
1340  if(l.roadType)
1341  {
1342  other.roadType = (RoadType_t*)calloc(1, sizeof *other.roadType);
1343  *other.roadType = setRoadType(*l.roadType);
1344  }
1345  else
1346  other.roadType = 0;
1347 
1348  return other;
1349 }
1350 
1352 {
1353  ManagementContainer_t other;
1354 
1355  other.actionID = setActionID(m.actionID);
1358  if(m.termination)
1359  {
1360  other.termination = (Termination_t*)calloc(1, sizeof *other.termination);
1361  *other.termination = setTermination(*m.termination);
1362  }
1363  else
1364  other.termination = 0;
1366  if(m.relevanceDistance)
1367  {
1368  other.relevanceDistance = (RelevanceDistance_t*)calloc(1, sizeof *other.relevanceDistance);
1370  }
1371  else
1372  other.relevanceDistance = 0;
1374  {
1376  (RelevanceTrafficDirection_t*)calloc(1, sizeof *other.relevanceTrafficDirection);
1378  }
1379  else
1380  other.relevanceTrafficDirection = 0;
1381  if(m.validityDuration)
1382  {
1383  other.validityDuration = (ValidityDuration_t*)calloc(1, sizeof *other.validityDuration);
1385  }
1386  else
1387  other.validityDuration = 0;
1388  if(m.transmissionInterval)
1389  {
1390  other.transmissionInterval = (TransmissionInterval_t*)calloc(1,
1391  sizeof *other.transmissionInterval);
1393  }
1394  else
1395  other.transmissionInterval = 0;
1397 
1398  return other;
1399 }
1400 
1402 {
1403  ReferenceDenms_t other;
1404  ActionID_t aid;
1405  int i;
1406 
1407  if(r.list.count)
1408  {
1409  other.list.count = 0;
1410  other.list.array = (ActionID_t**)calloc(1, sizeof *other.list.array);
1411  for(i = 0 ; i < r.list.count ; i++)
1412  {
1413  aid = setActionID(*r.list.array[i]);
1414  other.list.array[i] = (ActionID_t*)calloc(1, sizeof *other.list.array[i]);
1415  ASN_SEQUENCE_ADD(&other, &aid);
1416  }
1417  }
1418  else
1419  {
1420  other.list.array = 0;
1421  other.list.count = 0;
1422  }
1423 
1424  return other;
1425 }
1426 
1428 {
1430 
1431  if(r.lightBarSirenInUse)
1432  {
1433  other.lightBarSirenInUse = (LightBarSirenInUse_t*)calloc(1, sizeof *other.lightBarSirenInUse);
1435  }
1436  else
1437  other.lightBarSirenInUse = 0;
1438  if(r.closedLanes)
1439  {
1440  other.closedLanes = (ClosedLanes_t*)calloc(1, sizeof *other.closedLanes);
1441  *other.closedLanes = setClosedLanes(*r.closedLanes);
1442  }
1443  else
1444  other.closedLanes = 0;
1445  if(r.restriction)
1446  {
1447  other.restriction = (RestrictedTypes_t*)calloc(1, sizeof *other.restriction);
1449  }
1450  else
1451  other.restriction = 0;
1452  if(r.speedLimit)
1453  {
1454  other.speedLimit = (SpeedLimit_t*)calloc(1, sizeof *other.speedLimit);
1455  *other.speedLimit = setSpeedLimit(*r.speedLimit);
1456  }
1457  else
1458  other.speedLimit = 0;
1459  if(r.incidentIndication)
1460  {
1461  other.incidentIndication = (CauseCode_t*)calloc(1, sizeof *other.incidentIndication);
1463  }
1464  else
1465  other.incidentIndication = 0;
1466  if(r.recommendedPath)
1467  {
1468  other.recommendedPath = (ItineraryPath_t*)calloc(1, sizeof *other.recommendedPath);
1470  }
1471  else
1472  other.recommendedPath = 0;
1474  {
1475  other.startingPointSpeedLimit =
1476  (DeltaReferencePosition_t*)calloc(1, sizeof *other.startingPointSpeedLimit);
1478  }
1479  else
1480  other.startingPointSpeedLimit = 0;
1481  if(r.trafficFlowRule)
1482  {
1483  other.trafficFlowRule = (TrafficRule_t*)calloc(1, sizeof *other.trafficFlowRule);
1485  }
1486  else
1487  other.trafficFlowRule = 0;
1488  if(r.referenceDenms)
1489  {
1490  other.referenceDenms = (ReferenceDenms_t*)calloc(1, sizeof *other.referenceDenms);
1492  }
1493  else
1494  other.referenceDenms = 0;
1495 
1496  return other;
1497 }
1498 
1500 {
1501  SituationContainer_t other;
1502 
1504  other.eventType = setCauseCode(s.eventType);
1505  if(s.linkedCause)
1506  {
1507  other.linkedCause = (CauseCode_t*)calloc(1, sizeof *other.linkedCause);
1508  *other.linkedCause = setCauseCode(*s.linkedCause);
1509  }
1510  else
1511  other.linkedCause = 0;
1512  if(s.eventHistory)
1513  {
1514  other.eventHistory = (EventHistory_t*)calloc(1, sizeof *other.eventHistory);
1516  }
1517  else
1518  other.eventHistory = 0;
1519 
1520  return other;
1521 }
1522 
1524 {
1526 
1527  if(s.stationarySince)
1528  {
1529  other.stationarySince = (StationarySince_t*)calloc(1, sizeof *other.stationarySince);
1531  }
1532  else
1533  other.stationarySince = 0;
1534  if(s.stationaryCause)
1535  {
1536  other.stationaryCause = (CauseCode_t*)calloc(1, sizeof *other.stationaryCause);
1538  }
1539  else
1540  other.stationaryCause = 0;
1542  {
1543  other.carryingDangerousGoods =
1544  (DangerousGoodsExtended_t*)calloc(1, sizeof *other.carryingDangerousGoods);
1546  }
1547  else
1548  other.carryingDangerousGoods = 0;
1549  if(s.numberOfOccupants)
1550  {
1551  other.numberOfOccupants = (NumberOfOccupants_t*)calloc(1, sizeof *other.numberOfOccupants);
1553  }
1554  else
1555  other.numberOfOccupants = 0;
1556  if(s.vehicleIdentification)
1557  {
1558  other.vehicleIdentification =
1559  (VehicleIdentification_t*)calloc(1, sizeof *other.vehicleIdentification);
1561  }
1562  else
1563  other.vehicleIdentification = 0;
1564  if(s.energyStorageType)
1565  {
1566  other.energyStorageType = (EnergyStorageType_t*)calloc(1, sizeof *other.energyStorageType);
1568  }
1569  else
1570  other.energyStorageType = 0;
1571 
1572  return other;
1573 }
DecentralizedEnvironmentalNotificationMessage_t setDecentralizedEnvironmentalNotificationMessage(DecentralizedEnvironmentalNotificationMessage_t d)
setDecentralizedEnvironmentalNotificationMessage DecentralizedEnvironmentalNotificationMessage copy...
#define ASN_SEQUENCE_ADD(headptr, ptr)
long VehicleLengthConfidenceIndication_t
ManagementContainer_t setManagementContainer(ManagementContainer_t m)
setManagementContainer ManagementContainer copy.
PathPoint_t setPathPoint(PathPoint_t p)
setPathPoint PathPoint copy.
DriveDirection_t setDriveDirection(DriveDirection_t d)
setDriveDirection DriveDirection copy.
long HeightLonCarr_t
Definition: HeightLonCarr.h:27
YawRateValue_t yawRateValue
Definition: YawRate.h:24
PathDeltaTime_t setPathDeltaTime(PathDeltaTime_t p)
setPathDeltaTime PathDeltaTime copy.
struct CauseCode * incidentIndication
SemiAxisLength_t semiMinorConfidence
LightBarSirenInUse_t * lightBarSirenInUse
PathDeltaTime_t * eventDeltaTime
Definition: EventPoint.h:26
struct VehicleIdentification * vehicleIdentification
CamParameters_t camParameters
Definition: CoopAwareness.h:25
BOOLEAN_t EmbarkationStatus_t
long protocolVersion
Definition: ItsPduHeader.h:38
RelevanceTrafficDirection_t * relevanceTrafficDirection
CauseCodeType_t setCauseCodeType(CauseCodeType_t c)
setCauseCodeType CauseCodeType copy.
UTF8String_t setUTF8String(UTF8String_t u)
setUTF8String UTF8String copy.
HardShoulderStatus_t setHardShoulderStatus(HardShoulderStatus_t h)
setHardShoulderStatus HardShoulderStatus copy.
long InformationQuality_t
HighFrequencyContainer_PR present
long TurningRadius_t
Definition: TurningRadius.h:27
Termination_t setTermination(Termination_t t)
setTermination Termination copy.
DrivingLaneStatus_t setDrivingLaneStatus(DrivingLaneStatus_t d)
setDrivingLaneStatus DrivingLaneStatus copy.
DecentralizedEnvironmentalNotificationMessage_t denm
Definition: DENM.h:25
DeltaAltitude_t setDeltaAltitude(DeltaAltitude_t d)
setDeltaAltitude DeltaAltitude copy.
PtActivation_t setPtActivation(PtActivation_t p)
setPtActivation PtActivation copy.
EmbarkationStatus_t embarkationStatus
NumberOfOccupants_t setNumberOfOccupants(NumberOfOccupants_t n)
setNumberOfOccupants NumberOfOccupants copy.
long AccidentSubCauseCode_t
StationType_t stationType
RoadworksSubCauseCode_t * roadworksSubCauseCode
LowFrequencyContainer_t setLowFrequencyContainer(LowFrequencyContainer_t l)
setLowFrequencyContainer LowFrequencyContainer copy.
struct RoadWorksContainerExtended * roadWorks
RoadWorksContainerExtended_t setRoadWorksContainerExtended(RoadWorksContainerExtended_t r)
setRoadWorksContainerExtended RoadWorksContainerExtended copy.
long RoadworksSubCauseCode_t
long DeltaAltitude_t
Definition: DeltaAltitude.h:28
CollisionRiskSubCauseCode_t setCollisionRiskSubCauseCode(CollisionRiskSubCauseCode_t c)
setCollisionRiskSubCauseCode CollisionRiskSubCauseCode copy.
EmergencyVehicleApproachingSubCauseCode_t setEmergencyVehicleApproachingSubCauseCode(EmergencyVehicleApproachingSubCauseCode_t e)
setEmergencyVehicleApproachingSubCauseCode EmergencyVehicleApproachingSubCauseCode copy...
long CurvatureValue_t
long CurvatureCalculationMode_t
RestrictedTypes_t setRestrictedTypes(RestrictedTypes_t r)
setRestrictedTypes RestrictedTypes copy.
DangerousGoodsExtended_t setDangerousGoodsExtended(DangerousGoodsExtended_t d)
setDangerousGoodsExtended DangerousGoodsExtended copy.
LightBarSirenInUse_t setLightBarSirenInUse(LightBarSirenInUse_t l)
setLightBarSirenInUse LightBarSirenInUse copy.
long PtActivationType_t
CoopAwareness_t setCoopAwareness(CoopAwareness_t c)
setCoopAwareness CoopAwareness copy.
StationID_t originatingStationID
Definition: ActionID.h:24
long RequestResponseIndication_t
long WheelBaseVehicle_t
struct SpecialVehicleContainer * specialVehicleContainer
Definition: CamParameters.h:31
Temperature_t * externalTemperature
unsigned long StationID_t
Definition: StationID.h:21
InformationQuality_t setInformationQuality(InformationQuality_t i)
setInformationQuality InformationQuality copy.
SpeedValue_t speedValue
Definition: Speed.h:24
EventHistory_t setEventHistory(EventHistory_t e)
setEventHistory EventHistory copy.
asn_TYPE_descriptor_t asn_DEF_PositionOfPillars
DeltaLongitude_t setDeltaLongitude(DeltaLongitude_t d)
setDeltaLongitude DeltaLongitude copy.
LongitudinalAcceleration_t setLongitudinalAcceleration(LongitudinalAcceleration_t l)
setLongitudinalAcceleration LongitudinalAcceleration copy.
long PosFrontAx_t
Definition: PosFrontAx.h:27
LowFrequencyContainer_PR present
RelevanceTrafficDirection_t setRelevanceTrafficDirection(RelevanceTrafficDirection_t r)
setRelevanceTrafficDirection RelevanceTrafficDirection copy.
StationID_t stationID
Definition: ItsPduHeader.h:40
long SteeringWheelAngleValue_t
ItsPduHeader_t header
Definition: DENM.h:24
long HardShoulderStatus_t
Definition: CAM.h:23
SafetyCarContainer_t setSafetyCarContainer(SafetyCarContainer_t s)
setSafetyCarContainer SafetyCarContainer copy.
long DangerousGoodsBasic_t
Termination_t * termination
VehicleLength_t setVehicleLength(VehicleLength_t v)
setVehicleLength VehicleLength copy.
AccelerationConfidence_t verticalAccelerationConfidence
HighFrequencyContainer_t highFrequencyContainer
Definition: CamParameters.h:29
long SequenceNumber_t
DeltaLatitude_t setDeltaLatitude(DeltaLatitude_t d)
setDeltaLatitude DeltaLatitude copy.
long LongitudinalAccelerationValue_t
HeadingConfidence_t setHeadingConfidence(HeadingConfidence_t h)
setHeadingConfidence HeadingConfidence copy.
RSUContainerHighFrequency_t setRSUContainerHighFrequency(RSUContainerHighFrequency_t r)
setRSUContainerHighFrequency RSUContainerHighFrequency copy.
long SubCauseCodeType_t
long CauseCodeType_t
Definition: CauseCodeType.h:50
Definition: Traces.h:25
HeadingConfidence_t headingConfidence
Definition: Heading.h:25
struct ImpactReductionContainer * impactReduction
BasicVehicleContainerLowFrequency_t basicVehicleContainerLowFrequency
SpeedConfidence_t setSpeedConfidence(SpeedConfidence_t s)
setSpeedConfidence SpeedConfidence copy.
SpecialTransportContainer_t setSpecialTransportContainer(SpecialTransportContainer_t s)
setSpecialTransportContainer SpecialTransportContainer copy.
SteeringWheelAngleValue_t steeringWheelAngleValue
SteeringWheelAngle_t setSteeringWheelangle(SteeringWheelAngle_t s)
setSteeringWheelAngle SteeringWheelAngle copy.
AdverseWeatherCondition_ExtremeWeatherConditionSubCauseCode_t setAdverseWeatherCondition_ExtremeWeatherConditionSubCauseCode(AdverseWeatherCondition_ExtremeWeatherConditionSubCauseCode_t a)
setAdverseWeatherCondition_ExtremeWeatherConditionSubCauseCode AdverseWeatherCondition_ExtremeWeather...
HeadingValue_t semiMajorOrientation
LightBarSirenInUse_t lightBarSirenInUse
Speed_t setSpeed(Speed_t s)
setSpeed Speed copy.
long PostCrashSubCauseCode_t
AccelerationConfidence_t lateralAccelerationConfidence
long CurvatureConfidence_t
EmergencyPriority_t * emergencyPriority
SpecialTransportType_t specialTransportType
long SpeedConfidence_t
long StationarySince_t
long HumanProblemSubCauseCode_t
PathHistory_t setPathHistory(PathHistory_t p)
setPathHistory PathHistory copy.
SpecialVehicleContainer_t setSpecialVehicleContainer(SpecialVehicleContainer_t s)
setSpecialVehicleContainer SpecialVehicleContainer copy.
StationarySince_t setStationarySince(StationarySince_t s)
setStationarySince StationarySince copy.
ProtectedZoneID_t CenDsrcTollingZoneID_t
VehicleBreakdownSubCauseCode_t setVehicleBreakdownSubCauseCode(VehicleBreakdownSubCauseCode_t v)
setVehicleBreakdownSubCauseCode VehicleBreakdownSubCauseCode copy.
TurningRadius_t setTurningRadius(TurningRadius_t t)
setTurningRadius TurningRadius copy.
struct ItineraryPath * recommendedPath
ProtectedCommunicationZone_t setProtectedCommunicationZone(ProtectedCommunicationZone_t p)
setProtectedCommunicationZone ProtectedCommunicationZone copy.
CurvatureCalculationMode_t setCurvatureCalculationMode(CurvatureCalculationMode_t c)
setCurvatureCalculationMode CurvatureCalculationMode copy.
ProtectedZoneID_t setProtectedZoneID(ProtectedZoneID_t p)
setProtectedZoneID ProtectedZoneID copy.
struct Heading * eventPositionHeading
SequenceNumber_t sequenceNumber
Definition: ActionID.h:25
SlowVehicleSubCauseCode_t setSlowVehicleSubCauseCode(SlowVehicleSubCauseCode_t s)
setSlowVehicleSubCauseCode SlowVehicleSubCauseCode copy.
NumberOfOccupants_t * numberOfOccupants
BasicVehicleContainerHighFrequency_t setBasicVehicleContainerHighFrequency(BasicVehicleContainerHighFrequency_t b)
setBasicVehicleContainerHighFrequency BasicVehicleContainerHighFrequency copy.
int BOOLEAN_t
Definition: BOOLEAN.h:19
long LateralAccelerationValue_t
long StationType_t
Definition: StationType.h:38
long SignalViolationSubCauseCode_t
YawRateConfidence_t yawRateConfidence
Definition: YawRate.h:25
struct LowFrequencyContainer * lowFrequencyContainer
Definition: CamParameters.h:30
HazardousLocation_AnimalOnTheRoadSubCauseCode_t setHazardousLocation_AnimalOnTheRoadSubCauseCode(HazardousLocation_AnimalOnTheRoadSubCauseCode_t h)
setHazardousLocation_AnimalOnTheRoadSubCauseCode HazardousLocation_AnimalOnTheRoadSubCauseCode copy...
long DeltaLatitude_t
Definition: DeltaLatitude.h:28
AdverseWeatherCondition_PrecipitationSubCauseCode_t setAdverseWeatherCondition_PrecipitationSubCauseCode(AdverseWeatherCondition_PrecipitationSubCauseCode a)
setAdverseWeatherCondition_PrecipitationSubCauseCode AdverseWeatherCondition_PrecipitationSubCauseCod...
long Longitude_t
Definition: Longitude.h:28
long HumanPresenceOnTheRoadSubCauseCode_t
long ProtectedZoneID_t
InformationQuality_t informationQuality
CurvatureConfidence_t setCurvatureConfidence(CurvatureConfidence_t c)
setCurvatureConfidence CurvatureConfidence copy.
long PosCentMass_t
Definition: PosCentMass.h:27
BOOLEAN_t setBoolean(BOOLEAN_t b)
setBoolean BOOLEAN copy.
long DangerousEndOfQueueSubCauseCode_t
union LowFrequencyContainer::LowFrequencyContainer_u choice
PosCentMass_t setPosCentMass(PosCentMass_t p)
setPosCentMass PosCentMass copy.
ValidityDuration_t setValidityDuration(ValidityDuration_t v)
setValidityDuration ValidityDuration copy.
TrafficRule_t * trafficRule
Curvature_t setCurvature(Curvature_t c)
setCurvature Curvature copy.
VehicleLengthValue_t vehicleLengthValue
Definition: VehicleLength.h:24
CenDsrcTollingZone_t setCenDsrcTollingZone(CenDsrcTollingZone_t c)
setCenDsrcTollingZone CenDsrcTollingZone copy.
TrafficRule_t setTrafficRule(TrafficRule_t t)
setTrafficRule TrafficRule copy.
StationID_t setStationID(StationID_t s)
setStationID StationID copy.
StationType_t setStationType(StationType_t s)
setStationType StationType copy.
VehicleLengthValue_t setVehicleLengthValue(VehicleLengthValue_t v)
setVehicleLengthValue VehicleLengthValue copy.
EventPoint_t setEventPoint(EventPoint_t e)
setEventPoint EventPoint copy.
long WrongWayDrivingSubCauseCode_t
AltitudeValue_t setAltitudeValue(AltitudeValue_t a)
setAltitudeValue AltitudeValue copy.
VehicleLengthConfidenceIndication_t setVehicleLengthConfidenceIndication(VehicleLengthConfidenceIndication_t v)
setVehicleLengthConfidenceIndication VehicleLengthConfidenceIndication copy.
long ProtectedZoneRadius_t
struct ClosedLanes * closedLanes
long VerticalAccelerationValue_t
InformationQuality_t informationQuality
Definition: EventPoint.h:27
DangerousSituationSubCauseCode_t setDangerousSituationSubCauseCode(DangerousSituationSubCauseCode_t d)
setDangerousSituationSubCauseCode DangerousSituationSubCauseCode copy.
ActionID_t setActionID(ActionID_t a)
setActionID ActionID copy.
SituationContainer_t setSituationContainer(SituationContainer_t s)
setSituationContainer SituationContainer copy.
SteeringWheelAngleValue_t setSteeringWheelangleValue(SteeringWheelAngleValue_t s)
setSteeringWheelAngleValue SteeringWheelAngleValue copy.
BasicContainer_t basicContainer
Definition: CamParameters.h:28
AccidentSubCauseCode_t setAccidentSubCauseCode(AccidentSubCauseCode_t a)
setAccidentSubCauseCode AccidentSubCauseCode copy.
HeadingValue_t headingValue
Definition: Heading.h:24
PositionOfOccupants_t positionOfOccupants
RequestResponseIndication_t setRequestResponseIndication(RequestResponseIndication_t r)
setRequestResponseIndication RequestResponseIndication copy.
long TrafficRule_t
Definition: TrafficRule.h:32
LongitudinalAccelerationValue_t setLongitudinalAccelerationValue(LongitudinalAccelerationValue_t l)
setLongitudinalAccelerationValue LongitudinalAccelerationValue copy.
long Termination_t
Definition: Termination.h:27
SemiAxisLength_t semiMajorConfidence
TimestampIts_t referenceTime
struct ReferenceDenms * referenceDenms
ItsPduHeader_t header
Definition: CAM.h:24
long NumberOfOccupants_t
RescueContainer_t setRescueContainer(RescueContainer_t r)
setRescueContainer RescueContainer copy.
struct DangerousGoodsExtended * carryingDangerousGoods
ValidityDuration_t * validityDuration
CenDsrcTollingZoneID_t * cenDsrcTollingZoneID
PosLonCarr_t setPosLonCarr(PosLonCarr_t p)
setPosLonCarr PosLonCarr copy.
PathDeltaTime_t * pathDeltaTime
Definition: PathPoint.h:25
VehicleRole_t setVehicleRole(VehicleRole_t v)
setVehicleRole VehicleRole copy.
SpeedValue_t setSpeedValue(SpeedValue_t s)
setSpeedValue SpeedValue copy.
struct CauseCode * incidentIndication
GenerationDeltaTime_t generationDeltaTime
Definition: CoopAwareness.h:24
long PosPillar_t
Definition: PosPillar.h:27
long YawRateConfidence_t
PosConfidenceEllipse_t positionConfidenceEllipse
long Temperature_t
Definition: Temperature.h:28
HardShoulderStatus_t * hardShoulderStatus
Definition: ClosedLanes.h:24
SemiAxisLength_t setSemiAxisLength(SemiAxisLength_t s)
setSemiAxisLength SemiAxisLength copy.
SpeedLimit_t * speedLimit
CoopAwareness_t cam
Definition: CAM.h:25
PositioningSolutionType_t setPositioningSolutionType(PositioningSolutionType_t p)
setPositioningSolutionType PositioningSolutionType copy.
LongitudinalAccelerationValue_t longitudinalAccelerationValue
ReferenceDenms_t setReferenceDenms(ReferenceDenms_t r)
setReferenceDenms ReferenceDenms copy.
DangerousEndOfQueueSubCauseCode_t setDangerousEndOfQueueSubCauseCode(DangerousEndOfQueueSubCauseCode_t d)
setDangerousEndOfQueue DangerousEndOfQueue copy.
CauseCodeType_t causeCode
Definition: CauseCode.h:24
WrongWayDrivingSubCauseCode_t setWrongWayDrivingSubCauseCode(WrongWayDrivingSubCauseCode_t w)
setWronWayDrivingSubCauseCode WronWayDrivingSubCauseCode copy.
long PosLonCarr_t
Definition: PosLonCarr.h:27
PtActivationData_t setPtActivationData(PtActivationData_t p)
setPtActivationData PtActivationData copy.
DangerousGoodsContainer_t setDangerousGoodsContainer(DangerousGoodsContainer_t d)
setDangerousGoodsContainer DangerousGoodsContainer copy.
long TrafficConditionSubCauseCode_t
long StationaryVehicleSubCauseCode_t
Heading_t setHeading(Heading_t h)
setHeading Heading copy.
PosConfidenceEllipse_t setPosConfidenceEllipse(PosConfidenceEllipse_t p)
setPosConfidenceEllipse PosConfidenceEllipse copy.
RoadType_t setRoadType(RoadType_t r)
setRoadType RoadType copy.
AltitudeConfidence_t altitudeConfidence
Definition: Altitude.h:25
TimestampIts_t detectionTime
long AltitudeConfidence_t
TrafficConditionSubCauseCode_t setTrafficConditionSubCauseCode(TrafficConditionSubCauseCode_t t)
setTrafficConditionSubCauseCode TrafficConditionSubCauseCode copy.
struct CauseCode * linkedCause
long HeadingConfidence_t
CurvatureConfidence_t curvatureConfidence
Definition: Curvature.h:25
HazardousLocation_SurfaceConditionSubCauseCode_t setHazardousLocation_SurfaceConditionSubCauseCode(HazardousLocation_SurfaceConditionSubCauseCode_t h)
setHazardousLocation_SurfaceConditionSubCauseCode HazardousLocation_SurfaceConditionSubCauseCode copy...
ProtectedZoneRadius_t * protectedZoneRadius
AccelerationConfidence_t longitudinalAccelerationConfidence
long ValidityDuration_t
AltitudeValue_t altitudeValue
Definition: Altitude.h:24
long LanePosition_t
Definition: LanePosition.h:29
AccelerationControl_t setAccelerationControl(AccelerationControl_t a)
setAccelerationControl AccelerationControl copy.
EmergencyContainer_t setEmergencyContainer(EmergencyContainer_t e)
setEmergencyContainer EmergencyContainer copy.
LightBarSirenInUse_t lightBarSirenInUse
EnergyStorageType_t * energyStorageType
RelevanceDistance_t * relevanceDistance
AlacarteContainer_t setAlacarteContainer(AlacarteContainer_t a)
setAlacarteContainer AlacarteContainer copy.
VehicleLengthConfidenceIndication_t vehicleLengthConfidenceIndication
Definition: VehicleLength.h:25
PtActivationType_t ptActivationType
Definition: PtActivation.h:24
LanePosition_t setLanePosition(LanePosition_t l)
setLanePosition LanePosition copy.
HumanPresenceOnTheRoadSubCauseCode_t setHumanPresenceOnTheRoadSubCauseCode(HumanPresenceOnTheRoadSubCauseCode_t h)
setHumanPresenceOnTheRoadSubCauseCode HumanPresenceOnTheRoadSubCauseCode copy.
ProtectedZoneType_t setProtectedZoneType(ProtectedZoneType_t p)
setProtectedZoneType ProtectedZoneType copy.
PositionOfOccupants_t setPositionOfOccupants(PositionOfOccupants_t p)
setPositionOfOccupants PositionOfOccupants copy.
Temperature_t setTemperature(Temperature_t t)
setTemperature Temperature copy.
StationaryVehicleContainer_t setStationaryVehicleContainer(StationaryVehicleContainer_t s)
setStationaryVehicleContainer StationaryVehicleContainer copy.
ProtectedCommunicationZonesRSU_t setProtectedCommunicationZoneRSU(ProtectedCommunicationZonesRSU_t p)
setProtectedCommunicationZoneRSU ProtectedCommunicationZoneRSU copy.
SpeedLimit_t setSpeedLimit(SpeedLimit_t s)
setSpeedLimit SpeedLimit copy.
long AltitudeValue_t
Definition: AltitudeValue.h:28
SequenceNumber_t setSequenceNumber(SequenceNumber_t s)
setSequenceNumber SequenceNumber copy.
PositionOfPillars_t setPositionOfPillars(PositionOfPillars_t p)
setPositionOfPillars PositionOfPillars copy.
int g(double dist_r, double dist_f, double dist_fr, int angleThreshold)
g Compute the g function.
Definition: api.cpp:272
LateralAcceleration_t setLateralAcceleration(LateralAcceleration_t l)
setLateralAcceleration LateralAcceleration copy.
BIT_STRING_t setBitString(BIT_STRING_t b)
setBitString BIT_STRING copy.
PosFrontAx_t setPosFrontAx(PosFrontAx_t p)
setPosFrontAx PosFrontAx copy.
WMInumber_t setWMInumber(WMInumber_t w)
setWMInumber WMInumber copy.
SteeringWheelAngleConfidence_t setSteeringWheelAngleConfidence(SteeringWheelAngleConfidence_t s)
setSteeringWheelAngleConfidence SteeringWheelAngleConfidence copy.
OCTET_STRING_t setOctetString(OCTET_STRING_t o)
setOCTET_STRING OCTET_STRING copy.
YawRateConfidence_t setYawRateConfidence(YawRateConfidence_t y)
setYawRateConfidence YawRateConfidence copy.
LateralAccelerationValue_t setLateralAccelerationValue(LateralAccelerationValue_t l)
setLateralAccelerationValue LateralAccelerationValue copy.
EmbarkationStatus_t setEmbarkationStatus(EmbarkationStatus_t e)
setEmbarkationStatus EmbarkationStatus copy.
ItsPduHeader_t setItsPduHeader(ItsPduHeader_t i)
setItsPduHeader ItsPduHeader copy.
RoadWorksContainerBasic_t setRoadWorksContainerBasic(RoadWorksContainerBasic_t r)
setRoadWorksContainerBasic RoadWorksContainerBasic copy.
long SpeedValue_t
Definition: SpeedValue.h:28
long YawRateValue_t
Definition: YawRateValue.h:29
HeadingValue_t setHeadingValue(HeadingValue_t h)
setHeadingValue HeadingValue copy.
long SpeedLimit_t
Definition: SpeedLimit.h:26
TransmissionInterval_t * transmissionInterval
HumanProblemSubCauseCode_t setHumanProblemSubCauseCode(HumanProblemSubCauseCode_t h)
setHumanProblemSubCauseCode HumanProblemSubCauseCode copy.
long VehicleRole_t
Definition: VehicleRole.h:41
Latitude_t setLatitude(Latitude_t l)
setLatitude Latitude copy.
PositionOfPillars_t positionOfPillars
AdverseWeatherCondition_VisibilitySubCauseCode_t setAdverseWeatherCondition_VisibilitySubCauseCode(AdverseWeatherCondition_VisibilitySubCauseCode_t a)
setAdverseWeatherCondition_VisibilitySubCauseCode AdverseWeatherCondition_VisibilitySubCauseCode copy...
long RelevanceDistance_t
VehicleMass_t setVehicleMass(VehicleMass_t v)
setVehicleMass VehicleMass copy.
DeltaReferencePosition_t eventPosition
Definition: EventPoint.h:25
union HighFrequencyContainer::HighFrequencyContainer_u choice
LanePosition_t * lanePosition
long RescueAndRecoveryWorkInProgressSubCauseCode_t
long RelevanceTrafficDirection_t
long VehicleWidth_t
Definition: VehicleWidth.h:28
DENM_t setDENM(DENM_t d)
setDENM DENM copy.
struct DeltaReferencePosition * startingPointSpeedLimit
ItineraryPath_t setItinerarryPath(ItineraryPath_t i)
setItineraryPath ItineraryPath copy.
BasicVehicleContainerHighFrequency_t basicVehicleContainerHighFrequency
CurvatureValue_t curvatureValue
Definition: Curvature.h:24
PtActivationType_t setPtActivationType(PtActivationType_t p)
setPtActivationType PtActivationType copy.
PtActivationData_t ptActivationData
Definition: PtActivation.h:25
PostCrashSubCauseCode_t setPostCrashSubCauseCode(PostCrashSubCauseCode_t p)
setPostCrashSubCauseCode PostCrashSubCauseCode copy.
long ProtectedZoneType_t
long PerformanceClass_t
EnergyStorageType_t setEnergyStorageType(EnergyStorageType_t e)
setEnergyStorageType EnergyStorageType copy.
int asn_fprint(FILE *stream, asn_TYPE_descriptor_t *td, const void *struct_ptr)
Definition: constr_TYPE.c:36
EmergencyPriority_t setEmergencyPriority(EmergencyPriority_t e)
setEmergencyPriority EmergencyPriority copy.
VehicleIdentification_t setVehicleIdentification(VehicleIdentification_t v)
setVehicleIdentification VehicleIdentification copy.
long DeltaLongitude_t
SubCauseCodeType_t setSubCauseCodeType(SubCauseCodeType_t s)
setSubCauseCodeType SubCauseCodeType copy.
HazardousLocation_DangerousCurveSubCauseCode_t setHazardousLocation_DangerousCurveSubCauseCode(HazardousLocation_DangerousCurveSubCauseCode_t h)
setHazardousLocation_DangerousCurveSubCauseCode HazardousLocation_DangerousCurveSubCauseCode copy...
SpecialVehicleContainer_PR present
HeightLonCarr_t setHeightLonCarr(HeightLonCarr_t h)
setHeightLonCarr HeightLonCarr copy.
AdverseWeatherCondition_AdhesionSubCauseCode_t setAdverseWeatherCondition_AdhesionSubCauseCode(AdverseWeatherCondition_AdhesionSubCauseCode_t a)
setAdverseWeatherCondition_AdhesionSubCauseCode AdverseWeatherCondition_AdhesionSubCauseCode copy...
ReferencePosition_t eventPosition
RequestResponseIndication_t requestResponseIndication
union SpecialVehicleContainer::SpecialVehicleContainer_u choice
ReferencePosition_t referencePosition
RescueAndRecoveryWorkInProgressSubCauseCode_t setRescueAndRecoveryWorkInProgressSubCauseCode(RescueAndRecoveryWorkInProgressSubCauseCode_t r)
setRescueAndRecoveryWorkInProgressSubCauseCode RescueAndRecoveryWorkInProgressSubCauseCode copy...
PositioningSolutionType_t * positioningSolution
Definition: DENM.h:23
uint8_t * buf
Definition: BIT_STRING.h:15
long SlowVehicleSubCauseCode_t
long PathDeltaTime_t
Definition: PathDeltaTime.h:26
long Latitude_t
Definition: Latitude.h:28
long SteeringWheelAngleConfidence_t
SignalViolationSubCauseCode_t setSignalViolationSubCauseCode(SignalViolationSubCauseCode_t s)
setSignalViolationSubCauseCode SignalViolationSubCauseCode copy.
int bits_unused
Definition: BIT_STRING.h:18
VehicleWidth_t setVehicleWidth(VehicleWidth_t v)
setVehicleWidth VehicleWidth copy.
RoadType_t * roadType
long PositioningSolutionType_t
IA5String_t setIA5String(IA5String_t i)
setIA5String IA5String copy.
RoadworksSubCauseCode_t setRoadworksSubCauseCode(RoadworksSubCauseCode_t r)
setRoadworksSubCauseCode RoadworksSubCauseCode copy.
Longitude_t setLongitude(Longitude_t l)
setLongitude Longitude copy.
ReferencePosition_t setReferencePosition(ReferencePosition_t r)
setReferencePosition ReferencePosition copy.
AltitudeConfidence_t setAltitudeConfidence(AltitudeConfidence_t a)
setAltitudeConfidence AltitudeConfidence copy.
API used by the Facilities layer.
uint8_t * buf
Definition: OCTET_STRING.h:15
BasicVehicleContainerLowFrequency_t setBasicVehicleContainerLowFrequency(BasicVehicleContainerLowFrequency_t b)
setBasicVehicleContainerLowFrequency BasicVehicleContainerLowFrequency copy.
VerticalAccelerationValue_t setVerticalAccelerationValue(VerticalAccelerationValue_t v)
setVerticalAccelerationValue VerticalAccelerationValue copy.
Latitude_t protectedZoneLatitude
TransmissionInterval_t setTransmissionInterval(TransmissionInterval_t t)
setTransmissionInterval TransmissionInterval copy.
DangerousGoodsBasic_t dangerousGoodsType
INTEGER_t setInteger(INTEGER_t i)
setInteger Integer copy.
VerticalAcceleration_t setVerticalAcceleration(VerticalAcceleration_t v)
setVerticalAcceleration VerticalAcceleration copy.
long VehicleLengthValue_t
DrivingLaneStatus_t drivingLaneStatus
Definition: ClosedLanes.h:25
struct EventHistory * eventHistory
SteeringWheelAngleConfidence_t steeringWheelAngleConfidence
struct PtActivation * ptActivation
AccelerationConfidence_t setAccelerationConfidence(AccelerationConfidence_t a)
setAccelerationConfidence AccelerationConfidence copy.
long DangerousSituationSubCauseCode_t
Altitude_t setAltitude(Altitude_t a)
setAltitude Altitude copy.
long GenerationDeltaTime_t
CAM_t setCAM(CAM_t c)
setCAM CAM copy.
struct Speed * eventSpeed
TimestampIts_t setTimestampIts(TimestampIts_t t)
setTimestampIts TimestampIts copy.
GenerationDeltaTime_t setGenerationDeltaTime(GenerationDeltaTime_t g)
setGenerationDeltaTime GenerationDeltaTime copy.
ProtectedZoneRadius_t setProtectedZoneRadius(ProtectedZoneRadius_t p)
setProtectedZoneRadius ProtectedZoneRadius copy.
YawRate_t setYawRate(YawRate_t y)
setYawRate YawRate copy.
PerformanceClass_t setPerformanceClass(PerformanceClass_t p)
setPerformanceClass PerformanceClass copy.
CauseCode_t setCauseCode(CauseCode_t c)
setCauseCode CauseCode copy.
YawRateValue_t setYawRateValue(YawRateValue_t y)
setYawRateValue YawRateValue copy.
Definition: Speed.h:23
StationaryVehicleSubCauseCode_t setStationaryVehicleSubCauseCode(StationaryVehicleSubCauseCode_t s)
setStationaryVehicleSubCauseCode StationaryVehicleSubCauseCode copy.
SubCauseCodeType_t subCauseCode
Definition: CauseCode.h:25
struct RestrictedTypes * restriction
long VehicleMass_t
Definition: VehicleMass.h:27
CenDsrcTollingZoneID_t setCenDsrcTollingZoneID(CenDsrcTollingZoneID_t c)
setCenDsrcTollingZoneID CenDsrcTollingZoneID copy.
struct StationaryVehicleContainer * stationaryVehicle
CurvatureValue_t setCurvatureValue(CurvatureValue_t c)
setCurvatureValue CurvatureValue copy.
SpeedConfidence_t speedConfidence
Definition: Speed.h:25
ExteriorLights_t setExteriorLights(ExteriorLights_t e)
setExteriorLights ExteriorLights copy.
ClosedLanes_t setClosedLanes(ClosedLanes_t c)
setClosedLanes ClosedLanes copy.
VerticalAccelerationValue_t verticalAccelerationValue
HighFrequencyContainer_t setHighFrequencyContainer(HighFrequencyContainer_t h)
setHighFrequencyContainer HighFrequencyContainer copy.
DangerousGoodsBasic_t dangerousGoodsBasic
VDS_t setVDS(VDS_t v)
setVDS VDS copy.
LateralAccelerationValue_t lateralAccelerationValue
long VehicleBreakdownSubCauseCode_t
Longitude_t protectedZoneLongitude
CamParameters_t setCamParameters(CamParameters_t c)
setCamParameters CamParameters copy.
BasicContainer_t setBasicContainer(BasicContainer_t b)
setBasicHeader BasicHeader copy.
WheelBaseVehicle_t setWheelBaseVehicle(WheelBaseVehicle_t w)
setWheelBaseVehicle WheelBaseVehicle copy.
PosPillar_t setPosPillar(PosPillar_t p)
setPosPillar PosPillar copy.
Traces_t setTraces(Traces_t t)
setTraces Traces copy.
long EmergencyVehicleApproachingSubCauseCode_t
SpecialTransportType_t setSpecialTransportType(SpecialTransportType_t s)
setSpecialTransportType SpecialTransportType copy.
LocationContainer_t setLocationContainer(LocationContainer_t l)
setLocationContainer LocationContainer copy.
long TransmissionInterval_t
LightBarSirenInUse_t lightBarSirenInUse
long AccelerationConfidence_t
DangerousGoodsBasic_t setDangerousGoodsBasic(DangerousGoodsBasic_t d)
setDangerousGoodsBasic DangerousGoodsBasic copy.
RelevanceDistance_t setRelevanceDistance(RelevanceDistance_t r)
setRelevanceDistance RelevanceDistance copy.
long CollisionRiskSubCauseCode_t
struct ProtectedCommunicationZonesRSU * protectedCommunicationZonesRSU
long DriveDirection_t
LightBarSirenInUse_t lightBarSirenInUse
DeltaReferencePosition_t setDeltaReferencePosition(DeltaReferencePosition_t d)
setDeltaReferencePosition DeltaReferencePosition copy.
long HeadingValue_t
Definition: HeadingValue.h:30
HazardousLocation_ObstacleOnTheRoadSubCauseCode_t setHazardousLocation_ObstacleOnTheRoadSubCauseCode(HazardousLocation_ObstacleOnTheRoadSubCauseCode_t h)
setHazardousLocation_ObstacleOnTheRoadSubCauseCode HazardousLocation_ObstacleOnTheRoadSubCauseCode co...
LightBarSirenInUse_t lightBarSirenInUse
ImpactReductionContainer_t setImpactReductionContainer(ImpactReductionContainer_t i)
setImpactReductionContainer ImpactReductionContainer copy.
DeltaReferencePosition_t pathPosition
Definition: PathPoint.h:24
long SemiAxisLength_t
PublicTransportContainer_t setPublicTransportContainer(PublicTransportContainer_t p)
setPublicTransportContainer PublicTransportContainer copy.
long RoadType_t
Definition: RoadType.h:29