| EM datagrams on *.kmall format Reg.no. 410224 rev F

EMdgmFormat.h
Go to the documentation of this file.
1 /*h+*/
13 #ifndef _EMDGMFORMAT_H
14 #define _EMDGMFORMAT_H
15
16 #include "stdint.h"
17
18 #ifndef _VXW
19 #pragma pack(4)
20 #endif
21
22 /*
23
24 Revision History:
25
26 01 01 SEP 2016 Rev A.
27 02 01 MAR 2017 Rev B.
28 03 05 JUL 2017 Rev C.
29 04 08 DES 2017 Rev D.
30 05 25 MAY 2018 Rev E.
31 06 16 NOV 2018 Rev F
32 */
33
34 #define EM_DGM_FORMAT_VERSION "Rev F 2018-11-16"
36 #define MAX_NUM_BEAMS 1024
37 #define MAX_EXTRA_DET 1024
38 #define MAX_EXTRA_DET_CLASSES 11
39 #define MAX_SIDESCAN_SAMP 60000
40 #define MAX_SIDESCAN_EXTRA_SAMP 15000
41 #define MAX_NUM_TX_PULSES 9
42 #define MAX_ATT_SAMPLES 148
43 #define MAX_SVP_POINTS 2000
44 #define MAX_SVT_SAMPLES 1
45 #define MAX_DGM_SIZE 64000
46 #define MAX_NUM_MST_DGMS 256
47 #define MAX_NUM_MWC_DGMS 256
48 #define MAX_NUM_MRZ_DGMS 32
50 #define MAX_SPO_DATALENGTH 250
51 #define MAX_ATT_DATALENGTH 250
52 #define MAX_SVT_DATALENGTH 64
53 #define MAX_SCL_DATALENGTH 64
54 #define MAX_SDE_DATALENGTH 32
55 #define MAX_SHI_DATALENGTH 32
57 #define MAX_CPO_DATALENGTH 250
58 #define MAX_CHE_DATALENGTH 64
60 #define UNAVAILABLE_POSFIX 0xffff
61 #define UNAVAILABLE_LATITUDE 200.0f
62 #define UNAVAILABLE_LONGITUDE 200.0f
63 #define UNAVAILABLE_SPEED -1.0f
64 #define UNAVAILABLE_COURSE -4.0f
65 #define UNAVAILABLE_ELLIPSOIDHEIGHT -999.0f
68 /*********************************************
69 Datagram names
70 *********************************************/
71
72 /* I - datagrams */
73 #define EM_DGM_I_INSTALLATION_PARAM "#IIP"
74 #define EM_DGM_I_OP_RUNTIME "#IOP"
75
76 /* S-datagrams */
77 #define EM_DGM_S_POSITION "#SPO"
78 #define EM_DGM_S_KM_BINARY "#SKM"
79 #define EM_DGM_S_SOUND_VELOCITY_PROFILE "#SVP"
80 #define EM_DGM_S_SOUND_VELOCITY_TRANSDUCER "#SVT"
81 #define EM_DGM_S_CLOCK "#SCL"
82 #define EM_DGM_S_DEPTH "#SDE"
83 #define EM_DGM_S_HEIGHT "#SHI"
84
85
86 /* M-datagrams */
87 #define EM_DGM_M_RANGE_AND_DEPTH "#MRZ"
88 #define EM_DGM_M_WATER_COLUMN "#MWC"
89
90
91 /* C-datagrams */
92 #define EM_DGM_C_POSITION "#CPO"
93 #define EM_DGM_C_HEAVE "#CHE"
94
95 /*********************************************
96
97 General datagram header
98
99 *********************************************/
100
103 struct EMdgmHeader_def
104 {
105 uint32_t numBytesDgm;
106 uint8_t dgmType[4];
107 uint8_t dgmVersion;
108 uint8_t systemID;
109 uint16_t echoSounderID;
110 uint32_t time_sec;
111 uint32_t time_nanosec;
112 };
113
114 typedef struct EMdgmHeader_def EMdgmHeader, *pEMdgmHeader;
115
116 /*********************************************
117
118 Sensor datagrams
119
120 *********************************************/
121
124 struct EMdgmScommon_def
125 {
126 uint16_t numBytesCmnPart;
127 uint16_t sensorSystem;
138 uint16_t sensorStatus;
166 uint16_t padding;
167 };
168
169 typedef struct EMdgmScommon_def EMdgmScommon, *pEMdgmScommon;
170
175 struct EMdgmSdataInfo_def
176 {
177 uint16_t numBytesInfoPart;
178 uint16_t numSamplesArray;
179 uint16_t numBytesPerSample;
180 uint16_t numBytesRawSensorData;
181 };
182
183 typedef struct EMdgmSdataInfo_def EMdgmSdataInfo, *pEMdgmSdataInfo;
184
185
186 /************************************
187 #SPO - Sensor Position data
188 ************************************/
193 struct EMdgmSPOdataBlock_def
194 {
195 uint32_t timeFromSensor_sec;
196 uint32_t timeFromSensor_nanosec;
197 float posFixQuality_m;
198 double correctedLat_deg;
199 double correctedLong_deg;
200 float speedOverGround_mPerSec;
201 float courseOverGround_deg;
202 float ellipsoidHeightReRefPoint_m;
203 int8_t posDataFromSensor[MAX_SPO_DATALENGTH];
204 };
205
206 typedef struct EMdgmSPOdataBlock_def EMdgmSPOdataBlock, *pEMdgmSPOdataBlock;
207
214 struct EMdgmSPO_def
215 {
216 struct EMdgmHeader_def header;
217 struct EMdgmScommon_def cmnPart;
218 struct EMdgmSPOdataBlock_def sensorData;
219 };
220
221 #define SPO_VERSION 0
222 typedef struct EMdgmSPO_def EMdgmSPO, *pEMdgmSPO;
223
224
225 /************************************
226 #SKM - KM binary sensor data
227 ************************************/
230 struct EMdgmSKMinfo_def
231 {
232 uint16_t numBytesInfoPart;
233 uint8_t sensorSystem;
234 uint8_t sensorStatus;
250 uint16_t sensorInputFormat;
263 uint16_t numSamplesArray;
264 uint16_t numBytesPerSample;
265 uint16_t sensorDataContents;
286 };
287
288 typedef struct EMdgmSKMinfo_def EMdgmSKMinfo, *pEMdgmSKMinfo;
294 struct KMbinary_def
295 {
296 uint8_t dgmType[4];
297 uint16_t numBytesDgm;
298 uint16_t dgmVersion;
299 uint32_t time_sec;
301 uint32_t time_nanosec;
303 uint32_t status;
338 double latitude_deg;
339 double longitude_deg;
340 float ellipsoidHeight_m;
344 float roll_deg;
345 float pitch_deg;
346 float heading_deg;
347 float heave_m;
352 float rollRate;
353 float pitchRate;
354 float yawRate;
359 float velNorth;
360 float velEast;
361 float velDown;
366 float latitudeError_m;
367 float longitudeError_m;
368 float ellipsoidHeightError_m;
369 float rollError_deg;
370 float pitchError_deg;
371 float headingError_deg;
372 float heaveError_m;
377 float northAcceleration;
378 float eastAcceleration;
379 float downAcceleration;
380 };
381
382 typedef struct KMbinary_def KMbinary, *pKMbinary;
383
387 struct KMdelayedHeave_def
388 {
389 uint32_t time_sec;
390 uint32_t time_nanosec;
391 float delayedHeave_m;
392 };
393 typedef struct KMdelayedHeave_def KMdelayedHeave, *pKMdelayedHeave;
394
400 struct EMdgmSKMsample_def
401 {
402 struct KMbinary_def KMdefault;
403 struct KMdelayedHeave_def delayedHeave;
404 };
405
406 typedef struct EMdgmSKMsample_def EMdgmSKMsample, *pEMdgmSKMsample;
407
417 struct EMdgmSKM_def
418 {
419 struct EMdgmHeader_def header;
420 struct EMdgmSKMinfo_def infoPart;
421 struct EMdgmSKMsample_def sample[MAX_ATT_SAMPLES];
422 };
423
424 #define SKM_VERSION 1
425 typedef struct EMdgmSKM_def EMdgmSKM, *pEMdgmSKM;
426
427
428 /************************************
429 #SVP - Sound Velocity Profile
430 ************************************/
435 struct EMdgmSVPpoint_def
436 {
437 float depth_m;
438 float soundVelocity_mPerSec;
439 uint32_t padding;
440 float temp_C;
441 float salinity;
442 };
443
444 typedef struct EMdgmSVPpoint_def EMdgmSVPpoint, *pEMdgmSVPpoint;
445
451 struct EMdgmSVP_def
452 {
453 struct EMdgmHeader_def header;
454 uint16_t numBytesCmnPart;
455 uint16_t numSamples;
457 uint8_t sensorFormat[4];
460 uint32_t time_sec;
462 double latitude_deg;
464 double longitude_deg;
467 struct EMdgmSVPpoint_def sensorData[MAX_SVP_POINTS];
469 };
470
471 #define SVP_VERSION 1
472 typedef struct EMdgmSVP_def EMdgmSVP, *pEMdgmSVP;
473
474 /************************************
475 * #SVT - Sensor sound Velocity measured at Transducer
476 ************************************/
480 struct EMdgmSVTinfo_def
481 {
482 uint16_t numBytesInfoPart;
483 uint16_t sensorStatus;
498 uint16_t sensorInputFormat;
510 uint16_t numSamplesArray;
511 uint16_t numBytesPerSample;
512 uint16_t sensorDataContents;
525 float filterTime_sec;
526 float soundVelocity_mPerSec_offset;
527 };
528
532 struct EMdgmSVTsample_def
533 {
534 uint32_t time_sec;
535 uint32_t time_nanosec;
536 float soundVelocity_mPerSec;
537 float temp_C;
538 float pressure_Pa;
539 float salinity;
540 };
541
542 typedef struct EMdgmSVTsample_def EMdgmSVTsample, *pEMdgmSVTsample;
543
547 struct EMdgmSVT_def
548 {
549 struct EMdgmHeader_def header;
550 struct EMdgmSVTinfo_def infoPart;
551 struct EMdgmSVTsample_def sensorData[MAX_SVT_SAMPLES];
552 };
553
554 #define SVT_VERSION 0
555 typedef struct EMdgmSVT_def EMdgmSVT, *pEMdgmSVT;
556
557 /************************************
558 #SCL - Sensor CLock datagram
559 ************************************/
563 struct EMdgmSCLdataFromSensor_def
564 {
565 float offset_sec;
566 int32_t clockDevPU_nanosec;
569 uint8_t dataFromSensor[MAX_SCL_DATALENGTH];
571 };
572
573 typedef struct EMdgmSCLdataFromSensor_def EMdgmSCLdataFromSensor, *pEMdgmSCLdataFromSensor;
574
578 struct EMdgmSCL_def
579 {
580 struct EMdgmHeader_def header;
581 struct EMdgmScommon_def cmnPart;
582 struct EMdgmSCLdataFromSensor_def sensData;
583 };
584
585 #define SCL_VERSION 0
586 typedef struct EMdgmSCL_def EMdgmSCL, *pEMdgmSCL;
587
588
589 /************************************
590 #SDE - Sensor Depth data
591 ************************************/
595 struct EMdgmSDEdataFromSensor_def
596 {
597 float depthUsed_m;
598 float offset;
599 float scale;
600 double latitude_deg;
602 double longitude_deg;
604 uint8_t dataFromSensor[MAX_SDE_DATALENGTH];
605 };
606
607 typedef struct EMdgmSDEdataFromSensor_def EMdgmSDEdataFromSensor, *pEMdgmSDEdataFromSensor;
608
612 struct EMdgmSDE_def
613 {
614 struct EMdgmHeader_def header;
615 struct EMdgmScommon_def cmnPart;
616 struct EMdgmSDEdataFromSensor_def sensorData;
617 };
618
619 #define SDE_VERSION 0
620 typedef struct EMdgmSDE_def EMdgmSDE, *pEMdgmSDE;
621
622 /************************************
623 #SHI - Sensor Height data
624 ************************************/
628 struct EMdgmSHIdataFromSensor_def
629 {
630 uint16_t sensorType;
631 float heigthUsed_m;
632 uint8_t dataFromSensor[MAX_SHI_DATALENGTH];
633 };
634
635 typedef struct EMdgmSHIdataFromSensor_def EMdgmSHIdataFromSensor, *pEMdgmSHIdataFromSensor;
636
640 struct EMdgmSHI_def
641 {
642 struct EMdgmHeader_def header;
643 struct EMdgmScommon_def cmnPart;
644 struct EMdgmSHIdataFromSensor_def sensData;
645 };
646
647 #define SHI_VERSION 0
648 typedef struct EMdgmSHI_def EMdgmSHI, *pEMdgmSHI;
649
650
651 /*********************************************
652
653 Multibeam datagrams
654
655 *********************************************/
663 struct EMdgmMpartition_def
664 {
665 uint16_t numOfDgms;
666 uint16_t dgmNum;
667 };
668
669 typedef struct EMdgmMpartition_def EMdgmMpartition, *pEMdgmMpartition;
670
708 struct EMdgmMbody_def
709 {
710 uint16_t numBytesCmnPart;
711 uint16_t pingCnt;
713 uint8_t rxFansPerPing;
715 uint8_t rxFanIndex;
716 uint8_t swathsPerPing;
717 uint8_t swathAlongPosition;
718 uint8_t txTransducerInd;
719 uint8_t rxTransducerInd;
720 uint8_t numRxTransducers;
721 uint8_t algorithmType;
723 };
724
725 typedef struct EMdgmMbody_def EMdgmMbody, *pEMdgmMbody;
726
727 /************************************
728 #MRZ - multibeam data for raw range,
729 depth, reflectivity, seabed image(SI) etc.
730 ************************************/
735 struct EMdgmMRZ_pingInfo_def
736 {
737 uint16_t numBytesInfoData;
738 uint16_t padding0;
742 float pingRate_Hz;
743 uint8_t beamSpacing;
744 uint8_t depthMode;
761 uint8_t subDepthMode;
762 uint8_t distanceBtwSwath;
766 uint8_t detectionMode;
768 uint8_t pulseForm;
769 uint16_t padding1;
770
771 float frequencyMode_Hz;
789 float freqRangeLowLim_Hz;
790 float freqRangeHighLim_Hz;
791 float maxTotalTxPulseLength_sec;
792 float maxEffTxPulseLength_sec;
793 float maxEffTxBandWidth_Hz;
794 float absCoeff_dBPerkm;
796 float portSectorEdge_deg;
797 float starbSectorEdge_deg;
798 float portMeanCov_deg;
799 float starbMeanCov_deg;
800 int16_t portMeanCov_m;
801 int16_t starbMeanCov_m;
803 uint8_t modeAndStabilisation;
815 uint8_t runtimeFilter1;
826 uint16_t runtimeFilter2;
836 uint32_t pipeTrackingStatus;
837 float transmitArraySizeUsed_deg;
838 float receiveArraySizeUsed_deg;
839 float transmitPower_dB;
840 uint16_t SLrampUpTimeRemaining;
841 uint16_t padding2;
842 float yawAngle_deg;
848 uint16_t numTxSectors;
849 uint16_t numBytesPerTxSector;
854 float headingVessel_deg;
855 float soundSpeedAtTxDepth_mPerSec;
856 float txTransducerDepth_m;
857 float z_waterLevelReRefPoint_m;
858 float x_kmallToall_m;
859 float y_kmallToall_m;
861 uint8_t latLongInfo;
862 uint8_t posSensorStatus;
863 uint8_t attitudeSensorStatus;
864 uint8_t padding3;
865 double latitude_deg;
866 double longitude_deg;
867 float ellipsoidHeightReRefPoint_m;
870 };
871
872 typedef struct EMdgmMRZ_pingInfo_def EMdgmMRZ_pingInfo, *pEMdgmMRZ_pingInfo;
873
879 struct EMdgmMRZ_txSectorInfo_def
880 {
881 uint8_t txSectorNumb;
882 uint8_t txArrNumber;
883 uint8_t txSubArray;
885 uint8_t padding0;
886 float sectorTransmitDelay_sec;
887 float tiltAngleReTx_deg;
889 float txNominalSourceLevel_dB;
890 float txFocusRange_m;
891 float centreFreq_Hz;
892 float signalBandWidth_Hz;
893 float totalSignalLength_sec;
894 uint8_t pulseShading;
895 uint8_t signalWaveForm;
896 uint16_t padding1;
898 };
899
900 typedef struct EMdgmMRZ_txSectorInfo_def EMdgmMRZ_txSectorInfo, *pEMdgmMRZ_txSectorInfo;
901
906 struct EMdgmMRZ_rxInfo_def
907 {
908 uint16_t numBytesRxInfo;
909 uint16_t numSoundingsMaxMain;
910 uint16_t numSoundingsValidMain;
911 uint16_t numBytesPerSounding;
912 float WCSampleRate;
913 float seabedImageSampleRate;
914 float BSnormal_dB;
915 float BSoblique_dB;
916 uint16_t extraDetectionAlarmFlag;
917 uint16_t numExtraDetections;
918 uint16_t numExtraDetectionClasses;
919 uint16_t numBytesPerClass;
921 };
922
923 typedef struct EMdgmMRZ_rxInfo_def EMdgmMRZ_rxInfo, *pEMdgmMRZ_rxInfo;
924
929 struct EMdgmMRZ_extraDetClassInfo_def
930 {
931 uint16_t numExtraDetInClass;
932 int8_t padding;
933 uint8_t alarmFlag;
935 };
936
937 typedef struct EMdgmMRZ_extraDetClassInfo_def EMdgmMRZ_extraDetClassInfo, *pEMdgmMRZ_extraDetClassInfo;
938
946 struct EMdgmMRZ_sounding_def
947 {
948
949 uint16_t soundingIndex;
950 uint8_t txSectorNumb;
954 uint8_t detectionType;
956 uint8_t detectionMethod;
957 uint8_t rejectionInfo1;
958 uint8_t rejectionInfo2;
959 uint8_t postProcessingInfo;
960 uint8_t detectionClass;
961 uint8_t detectionConfidenceLevel;
962 uint16_t padding;
963 float rangeFactor;
964 float qualityFactor;
965 float detectionUncertaintyVer_m;
966 float detectionUncertaintyHor_m;
967 float detectionWindowLength_sec;
968 float echoLength_sec;
973 uint16_t WCBeamNumb;
974 uint16_t WCrange_samples;
975 float WCNomBeamAngleAcross_deg;
980 float meanAbsCoeff_dBPerkm;
981 float reflectivity1_dB;
982 float reflectivity2_dB;
987 float receiverSensitivityApplied_dB;
988 float sourceLevelApplied_dB;
993 float BScalibration_dB;
994 float TVG_dB;
999 float beamAngleReRx_deg;
1000 float beamAngleCorrection_deg;
1001 float twoWayTravelTime_sec;
1002 float twoWayTravelTimeCorrection_sec;
1007 float deltaLatitude_deg;
1009 float deltaLongitude_deg;
1011 float z_reRefPoint_m;
1013 float y_reRefPoint_m;
1015 float x_reRefPoint_m;
1018 float beamIncAngleAdj_deg;
1019 uint16_t realTimeCleanInfo;
1024 uint16_t SIstartRange_samples;
1025 uint16_t SIcentreSample;
1026 uint16_t SInumSamples;
1028 };
1029
1030 typedef struct EMdgmMRZ_sounding_def EMdgmMRZ_sounding, *pEMdgmMRZ_sounding;
1031
1034 struct EMdgmMRZ_extraSI_def
1035 {
1036
1037 uint16_t portStartRange_samples;
1038 uint16_t numPortSamples;
1039 int16_t portSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP];
1040 uint16_t starbStartRange_samples;
1041 uint16_t numStarbSamples;
1042 int16_t starbSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP];
1044 };
1045
1046 typedef struct EMdgmMRZ_extraSI_def EMdgmMRZ_extraSI, *pEMdgmMRZ_extraSI;
1047
1062 struct EMdgmMRZ_def
1063 {
1064 struct EMdgmHeader_def header;
1065 struct EMdgmMpartition_def partition;
1066 struct EMdgmMbody_def cmnPart;
1067 struct EMdgmMRZ_pingInfo_def pingInfo;
1068 struct EMdgmMRZ_txSectorInfo_def sectorInfo[MAX_NUM_TX_PULSES];
1069 struct EMdgmMRZ_rxInfo_def rxInfo;
1070 struct EMdgmMRZ_extraDetClassInfo_def extraDetClassInfo[MAX_EXTRA_DET_CLASSES];
1071 struct EMdgmMRZ_sounding_def sounding[MAX_NUM_BEAMS+MAX_EXTRA_DET];
1072 int16_t SIsample_desidB[MAX_SIDESCAN_SAMP];
1080 };
1081
1082 #define MRZ_VERSION 0
1083 typedef struct EMdgmMRZ_def EMdgmMRZ, *pEMdgmMRZ;
1084
1085 /************************************
1086 #MWC - water column datagram
1087 ************************************/
1089 struct EMdgmMWCtxInfo_def
1090 {
1091 uint16_t numBytesTxInfo;
1092 uint16_t numTxSectors;
1094 uint16_t numBytesPerTxSector;
1095 int16_t padding;
1096 float heave_m;
1097 };
1098
1099 typedef struct EMdgmMWCtxInfo_def EMdgmMWCtxInfo, *pEMdgmMWCtxInfo;
1100
1102 struct EMdgmMWCtxSectorData_def
1103 {
1104 float tiltAngleReTx_deg;
1105 float centreFreq_Hz;
1106 float txBeamWidthAlong_deg;
1107 uint16_t txSectorNum;
1108 int16_t padding;
1109 };
1110
1111 typedef struct EMdgmMWCtxSectorData_def EMdgmMWCtxSectorData, *pEMdgmMWCtxSectorData;
1112
1114 struct EMdgmMWCrxInfo_def
1115 {
1116 uint16_t numBytesRxInfo;
1117 uint16_t numBeams;
1118 uint8_t numBytesPerBeamEntry;
1120 uint8_t phaseFlag;
1121 uint8_t TVGfunctionApplied;
1123 int8_t TVGoffset_dB;
1125 float sampleFreq_Hz;
1126 float soundVelocity_mPerSec;
1128 };
1129
1130 typedef struct EMdgmMWCrxInfo_def EMdgmMWCrxInfo, *pEMdgmMWCrxInfo;
1131
1133 struct EMdgmMWCrxBeamData_def
1134 {
1135 float beamPointAngReVertical_deg;
1136 uint16_t startRangeSampleNum;
1137 uint16_t detectedRangeInSamples;
1139 uint16_t beamTxSectorNum;
1140 uint16_t numSampleData;
1141 int8_t *sampleAmplitude05dB_p;
1142 };
1143
1144 typedef struct EMdgmMWCrxBeamData_def EMdgmMWCrxBeamData, *pEMdgmMWCrxBeamData;
1145
1147 struct EMdgmMWCrxBeamPhase1_def
1148 {
1149 int8_t rxBeamPhase;
1150 };
1151
1152 typedef struct EMdgmMWCrxBeamPhase1_def EMdgmMWCrxBeamPhase1, *pEMdgmMWCrxBeamPhase1;
1153
1155 struct EMdgmMWCrxBeamPhase2_def
1156 {
1157 int16_t rxBeamPhase;
1158 };
1159
1160 typedef struct EMdgmMWCrxBeamPhase2_def EMdgmMWCrxBeamPhase2, *pEMdgmMWCrxBeamPhase2;
1161
1163 struct EMdgmMWC_def
1164 {
1165 struct EMdgmHeader_def header;
1166 struct EMdgmMpartition_def partition;
1167 struct EMdgmMbody_def cmnPart;
1168 struct EMdgmMWCtxInfo_def txInfo;
1169 struct EMdgmMWCtxSectorData_def sectorData[MAX_NUM_TX_PULSES];
1170 struct EMdgmMWCrxInfo_def rxInfo;
1171 struct EMdgmMWCrxBeamData_def *beamData_p;
1184 };
1185
1186 #define MWC_VERSION 0
1187 typedef struct EMdgmMWC_def EMdgmMWC, *pEMdgmMWC;
1188
1189
1190
1191
1192 /*********************************************
1193
1194 Compatibility datagrams for .all to .kmall conversion support
1195
1196 *********************************************/
1197
1198 /************************************
1199 #CPO - Compatibility position sensor data
1200 ************************************/
1205 struct EMdgmCPOdataBlock_def
1206 {
1207 uint32_t timeFromSensor_sec;
1208 uint32_t timeFromSensor_nanosec;
1209 float posFixQuality_m;
1210 double correctedLat_deg;
1211 double correctedLong_deg;
1212 float speedOverGround_mPerSec;
1213 float courseOverGround_deg;
1214 float ellipsoidHeightReRefPoint_m;
1215 int8_t posDataFromSensor[MAX_CPO_DATALENGTH];
1216 };
1217
1218 typedef struct EMdgmCPOdataBlock_def EMdgmCPOdataBlock, *pEMdgmCPOdataBlock;
1219
1226 struct EMdgmCPO_def
1227 {
1228 struct EMdgmHeader_def header;
1229 struct EMdgmScommon_def cmnPart;
1230 struct EMdgmCPOdataBlock_def sensorData;
1231 };
1232
1233 #define CPO_VERSION 0
1234 typedef struct EMdgmCPO_def EMdgmCPO, *pEMdgmCPO;
1235
1236
1237 /************************************
1238 #CHE - Compatibility heave data
1239 ************************************/
1243 struct EMdgmCHEdata_def
1244 {
1245 float heave_m;
1246 };
1247
1248 typedef struct EMdgmCHEdata_def EMdgmCHEdata, *pEMdgmCHEdata;
1249
1256 struct EMdgmCHE_def
1257 {
1258 struct EMdgmHeader_def header;
1259 struct EMdgmMbody_def cmnPart;
1260 struct EMdgmCHEdata_def data;
1261 };
1262
1263 #define CHE_VERSION 0
1264 typedef struct EMdgmCHE_def EMdgmCHE, *pEMdgmCHE;
1265
1266
1267 /*********************************************
1268
1269 Installation and runtime datagrams
1270
1271 *********************************************/
1272
1273 /************************************
1274 #IIP - Info Installation PU
1275 ************************************/
1280 struct EMdgmIIP_def
1281 {
1282 EMdgmHeader header;
1283 uint16_t numBytesCmnPart;
1284 uint16_t info;
1285 uint16_t status;
1286 uint8_t install_txt;
1290 };
1291
1292 #define IIP_VERSION 0
1293 typedef struct EMdgmIIP_def dgm_IIP, *pdgm_IIP;
1294
1295
1296 /************************************
1297 #IOP - Runtime datagram
1298 ************************************/
1306 struct EMdgmIOP_def
1307 {
1308 EMdgmHeader header;
1309 uint16_t numBytesCmnPart;
1310 uint16_t info;
1311 uint16_t status;
1312 uint8_t runtime_txt;
1318 };
1319
1320 #define IOP_VERSION 0
1321 typedef struct EMdgmIOP_def dgm_IOP, *pdgm_IOP;
1322
1323
1324 /************************************
1325 #IB - BIST Error Datagrams
1326 ************************************/
1331 struct EMdgmIB_def
1332 {
1333 EMdgmHeader header;
1334 uint16_t numBytesCmnPart;
1335 uint8_t BISTInfo;
1336 uint8_t BISTStyle;
1337 uint8_t BISTNumber;
1338 int8_t BISTStatus;
1339 uint8_t BISTText;
1340 };
1341
1342 #define BIST_VERSION 0
1343 typedef struct EMdgmIB_def dgm_IB, *pdgm_IB;
1344
1345 #ifndef _VXW
1346 #pragma pack()
1347 #endif
1348 #endif
KMbinary_def::pitchError_deg
float pitchError_deg
Definition: EMdgmFormat.h:370
EMdgmMRZ_pingInfo_def::latLongInfo
uint8_t latLongInfo
Definition: EMdgmFormat.h:861
KMbinary_def::yawRate
float yawRate
Definition: EMdgmFormat.h:354
EMdgmSVPpoint_def::temp_C
float temp_C
Definition: EMdgmFormat.h:440
EMdgmSKMinfo_def::sensorSystem
uint8_t sensorSystem
Definition: EMdgmFormat.h:233
EMdgmMRZ_pingInfo_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:867
EMdgmIB_def::BISTNumber
uint8_t BISTNumber
Definition: EMdgmFormat.h:1337
EMdgmMRZ_extraSI_def::starbSIsample_desidB
int16_t starbSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP]
Definition: EMdgmFormat.h:1042
EMdgmIB_def::BISTText
uint8_t BISTText
Definition: EMdgmFormat.h:1339
EMdgmMRZ_txSectorInfo_def::signalBandWidth_Hz
float signalBandWidth_Hz
Definition: EMdgmFormat.h:892
EMdgmCPOdataBlock_def::courseOverGround_deg
float courseOverGround_deg
Definition: EMdgmFormat.h:1213
KMbinary_def::ellipsoidHeightError_m
float ellipsoidHeightError_m
Definition: EMdgmFormat.h:368
EMdgmMWCrxBeamData_def
#MWC - data block 2: receiver, specific info for each beam.
Definition: EMdgmFormat.h:1133
EMdgmMRZ_pingInfo_def::txTransducerDepth_m
float txTransducerDepth_m
Definition: EMdgmFormat.h:856
EMdgmMWCtxInfo_def::numBytesPerTxSector
uint16_t numBytesPerTxSector
Definition: EMdgmFormat.h:1094
EMdgmSVTsample_def
#SVT - Sound Velocity at Transducer. Data sample.
Definition: EMdgmFormat.h:532
EMdgmMRZ_rxInfo_def::BSoblique_dB
float BSoblique_dB
Definition: EMdgmFormat.h:915
EMdgmMRZ_txSectorInfo_def
#MRZ - sector information.
Definition: EMdgmFormat.h:879
EMdgmMWCrxInfo_def::numBytesRxInfo
uint16_t numBytesRxInfo
Definition: EMdgmFormat.h:1116
EMdgmSPOdataBlock_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:202
EMdgmMWCrxBeamPhase1_def::rxBeamPhase
int8_t rxBeamPhase
Definition: EMdgmFormat.h:1149
EMdgmMpartition_def::numOfDgms
uint16_t numOfDgms
Definition: EMdgmFormat.h:665
EMdgmSPOdataBlock_def::courseOverGround_deg
float courseOverGround_deg
Definition: EMdgmFormat.h:201
EMdgmMRZ_pingInfo_def::maxEffTxBandWidth_Hz
float maxEffTxBandWidth_Hz
Definition: EMdgmFormat.h:793
MAX_SVT_SAMPLES
#define MAX_SVT_SAMPLES
Definition: EMdgmFormat.h:44
EMdgmCPOdataBlock_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:1214
EMdgmSVP_def::sensorFormat
uint8_t sensorFormat[4]
Definition: EMdgmFormat.h:457
EMdgmSVP_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:460
EMdgmSVPpoint_def
#SVP - Sound Velocity Profile. Data from one depth point contains information specified in this struc...
Definition: EMdgmFormat.h:435
MAX_SHI_DATALENGTH
#define MAX_SHI_DATALENGTH
Definition: EMdgmFormat.h:55
EMdgmMWCtxSectorData_def
#MWC - data block 1: transmit sector data, loop for all i = numTxSectors.
Definition: EMdgmFormat.h:1102
KMbinary_def::downAcceleration
float downAcceleration
Definition: EMdgmFormat.h:379
EMdgmMbody_def::rxFansPerPing
uint8_t rxFansPerPing
Definition: EMdgmFormat.h:713
EMdgmSCLdataFromSensor_def
Part of clock datagram giving offsets and the raw input in text format.
Definition: EMdgmFormat.h:563
MAX_SIDESCAN_EXTRA_SAMP
#define MAX_SIDESCAN_EXTRA_SAMP
Definition: EMdgmFormat.h:40
EMdgmHeader_def::dgmType
uint8_t dgmType[4]
Definition: EMdgmFormat.h:106
EMdgmIIP_def::install_txt
uint8_t install_txt
Definition: EMdgmFormat.h:1286
EMdgmMRZ_txSectorInfo_def::txArrNumber
uint8_t txArrNumber
Definition: EMdgmFormat.h:882
EMdgmIOP_def::runtime_txt
uint8_t runtime_txt
Definition: EMdgmFormat.h:1312
EMdgmSKMinfo_def
Sensor (S) output datagram - info of KMB datagrams.
Definition: EMdgmFormat.h:230
EMdgmSKMinfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:263
EMdgmSVTsample_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:536
EMdgmMRZ_sounding_def::deltaLatitude_deg
float deltaLatitude_deg
Definition: EMdgmFormat.h:1007
MAX_SDE_DATALENGTH
#define MAX_SDE_DATALENGTH
Definition: EMdgmFormat.h:54
EMdgmMRZ_rxInfo_def::numBytesPerSounding
uint16_t numBytesPerSounding
Definition: EMdgmFormat.h:911
EMdgmScommon_def::sensorSystem
uint16_t sensorSystem
Definition: EMdgmFormat.h:127
EMdgmMRZ_extraSI_def::numPortSamples
uint16_t numPortSamples
Definition: EMdgmFormat.h:1038
EMdgmSKMinfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:232
EMdgmMRZ_sounding_def::z_reRefPoint_m
float z_reRefPoint_m
Definition: EMdgmFormat.h:1011
EMdgmMRZ_rxInfo_def::extraDetectionAlarmFlag
uint16_t extraDetectionAlarmFlag
Definition: EMdgmFormat.h:916
EMdgmCHE_def
#CHE - Struct of compatibility heave sensor datagram. Used for backward compatibility with ...
Definition: EMdgmFormat.h:1256
EMdgmMRZ_pingInfo_def::pingRate_Hz
float pingRate_Hz
Definition: EMdgmFormat.h:742
EMdgmMbody_def::rxTransducerInd
uint8_t rxTransducerInd
Definition: EMdgmFormat.h:719
EMdgmIOP_def::status
uint16_t status
Definition: EMdgmFormat.h:1311
EMdgmSdataInfo_def::numBytesRawSensorData
uint16_t numBytesRawSensorData
Definition: EMdgmFormat.h:180
EMdgmSVP_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:462
EMdgmMRZ_sounding_def::postProcessingInfo
uint8_t postProcessingInfo
Definition: EMdgmFormat.h:959
EMdgmMRZ_sounding_def::detectionMethod
uint8_t detectionMethod
Definition: EMdgmFormat.h:956
EMdgmMRZ_sounding_def::beamAngleCorrection_deg
float beamAngleCorrection_deg
Definition: EMdgmFormat.h:1000
EMdgmMRZ_pingInfo_def::soundSpeedAtTxDepth_mPerSec
float soundSpeedAtTxDepth_mPerSec
Definition: EMdgmFormat.h:855
EMdgmMRZ_txSectorInfo_def::signalWaveForm
uint8_t signalWaveForm
Definition: EMdgmFormat.h:895
EMdgmMRZ_sounding_def::deltaLongitude_deg
float deltaLongitude_deg
Definition: EMdgmFormat.h:1009
EMdgmMRZ_def::SIsample_desidB
int16_t SIsample_desidB[MAX_SIDESCAN_SAMP]
Definition: EMdgmFormat.h:1072
KMbinary_def::eastAcceleration
float eastAcceleration
Definition: EMdgmFormat.h:378
EMdgmMRZ_sounding_def::reflectivity1_dB
float reflectivity1_dB
Definition: EMdgmFormat.h:981
EMdgmHeader_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:110
EMdgmMRZ_rxInfo_def::numBytesRxInfo
uint16_t numBytesRxInfo
Definition: EMdgmFormat.h:908
EMdgmMWCtxInfo_def::numBytesTxInfo
uint16_t numBytesTxInfo
Definition: EMdgmFormat.h:1091
EMdgmMRZ_pingInfo_def::absCoeff_dBPerkm
float absCoeff_dBPerkm
Definition: EMdgmFormat.h:794
EMdgmMRZ_extraDetClassInfo_def::numExtraDetInClass
uint16_t numExtraDetInClass
Definition: EMdgmFormat.h:931
EMdgmMbody_def
Multibeam (M) datagrams - body part. Start of body of all M datagrams.
Definition: EMdgmFormat.h:708
EMdgmMWCrxBeamPhase2_def::rxBeamPhase
int16_t rxBeamPhase
Definition: EMdgmFormat.h:1157
EMdgmCPOdataBlock_def::posDataFromSensor
int8_t posDataFromSensor[MAX_CPO_DATALENGTH]
Definition: EMdgmFormat.h:1215
KMbinary_def::dgmType
uint8_t dgmType[4]
Definition: EMdgmFormat.h:296
EMdgmSKMinfo_def::sensorStatus
uint8_t sensorStatus
Definition: EMdgmFormat.h:234
EMdgmMRZ_pingInfo_def::runtimeFilter2
uint16_t runtimeFilter2
Definition: EMdgmFormat.h:826
EMdgmSDEdataFromSensor_def
Part of depth datagram giving depth as used, offsets, scale factor and data as received from sensor (...
Definition: EMdgmFormat.h:595
EMdgmMWCtxInfo_def::numTxSectors
uint16_t numTxSectors
Definition: EMdgmFormat.h:1092
EMdgmMRZ_pingInfo_def::y_kmallToall_m
float y_kmallToall_m
Definition: EMdgmFormat.h:859
EMdgmMRZ_pingInfo_def::portMeanCov_m
int16_t portMeanCov_m
Definition: EMdgmFormat.h:800
EMdgmIB_def::BISTInfo
uint8_t BISTInfo
Definition: EMdgmFormat.h:1335
EMdgmMWCtxInfo_def::padding
int16_t padding
Definition: EMdgmFormat.h:1095
KMbinary_def::rollRate
float rollRate
Definition: EMdgmFormat.h:352
EMdgmMWCrxBeamData_def::numSampleData
uint16_t numSampleData
Definition: EMdgmFormat.h:1140
EMdgmMRZ_rxInfo_def::WCSampleRate
float WCSampleRate
Definition: EMdgmFormat.h:912
EMdgmMRZ_txSectorInfo_def::sectorTransmitDelay_sec
float sectorTransmitDelay_sec
Definition: EMdgmFormat.h:886
EMdgmMRZ_pingInfo_def::modeAndStabilisation
uint8_t modeAndStabilisation
Definition: EMdgmFormat.h:803
EMdgmMbody_def::pingCnt
uint16_t pingCnt
Definition: EMdgmFormat.h:711
EMdgmMRZ_rxInfo_def::BSnormal_dB
float BSnormal_dB
Definition: EMdgmFormat.h:914
EMdgmMRZ_sounding_def::detectionConfidenceLevel
uint8_t detectionConfidenceLevel
Definition: EMdgmFormat.h:961
EMdgmMRZ_rxInfo_def::numBytesPerClass
uint16_t numBytesPerClass
Definition: EMdgmFormat.h:919
EMdgmMWCtxInfo_def::heave_m
float heave_m
Definition: EMdgmFormat.h:1096
EMdgmMpartition_def::dgmNum
uint16_t dgmNum
Definition: EMdgmFormat.h:666
EMdgmHeader_def::systemID
uint8_t systemID
Definition: EMdgmFormat.h:108
KMbinary_def::velEast
float velEast
Definition: EMdgmFormat.h:360
EMdgmMRZ_sounding_def::qualityFactor
float qualityFactor
Definition: EMdgmFormat.h:964
EMdgmSVTinfo_def
Part of Sound Velocity at Transducer datagram.
Definition: EMdgmFormat.h:480
EMdgmCPOdataBlock_def
#CPO - Compatibility sensor position compatibility data block. Data from active sensor is referenced ...
Definition: EMdgmFormat.h:1205
EMdgmMRZ_extraSI_def::starbStartRange_samples
uint16_t starbStartRange_samples
Definition: EMdgmFormat.h:1040
EMdgmMRZ_pingInfo_def::frequencyMode_Hz
float frequencyMode_Hz
Definition: EMdgmFormat.h:771
EMdgmMRZ_pingInfo_def::receiveArraySizeUsed_deg
float receiveArraySizeUsed_deg
Definition: EMdgmFormat.h:838
EMdgmMRZ_rxInfo_def::seabedImageSampleRate
float seabedImageSampleRate
Definition: EMdgmFormat.h:913
EMdgmSDE_def
#SDE - Depth datagram.
Definition: EMdgmFormat.h:612
EMdgmMRZ_pingInfo_def::maxEffTxPulseLength_sec
float maxEffTxPulseLength_sec
Definition: EMdgmFormat.h:792
EMdgmMRZ_pingInfo_def::portSectorEdge_deg
float portSectorEdge_deg
Definition: EMdgmFormat.h:796
EMdgmCHEdata_def::heave_m
float heave_m
Definition: EMdgmFormat.h:1245
EMdgmSVTinfo_def::soundVelocity_mPerSec_offset
float soundVelocity_mPerSec_offset
Definition: EMdgmFormat.h:526
EMdgmMRZ_sounding_def::TVG_dB
float TVG_dB
Definition: EMdgmFormat.h:994
EMdgmSVP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:454
EMdgmMRZ_extraDetClassInfo_def
#MRZ - Extra detection class information.
Definition: EMdgmFormat.h:929
EMdgmMRZ_extraSI_def::portStartRange_samples
uint16_t portStartRange_samples
Definition: EMdgmFormat.h:1037
EMdgmMRZ_sounding_def::twoWayTravelTimeCorrection_sec
float twoWayTravelTimeCorrection_sec
Definition: EMdgmFormat.h:1002
EMdgmSKMinfo_def::sensorInputFormat
uint16_t sensorInputFormat
Definition: EMdgmFormat.h:250
KMdelayedHeave_def::delayedHeave_m
float delayedHeave_m
Definition: EMdgmFormat.h:391
EMdgmCPOdataBlock_def::correctedLat_deg
double correctedLat_deg
Definition: EMdgmFormat.h:1210
EMdgmMRZ_pingInfo_def::pipeTrackingStatus
uint32_t pipeTrackingStatus
Definition: EMdgmFormat.h:836
EMdgmMbody_def::swathAlongPosition
uint8_t swathAlongPosition
Definition: EMdgmFormat.h:717
MAX_ATT_SAMPLES
#define MAX_ATT_SAMPLES
Definition: EMdgmFormat.h:42
EMdgmMRZ_sounding_def::padding
uint16_t padding
Definition: EMdgmFormat.h:962
EMdgmMRZ_pingInfo_def::SLrampUpTimeRemaining
uint16_t SLrampUpTimeRemaining
Definition: EMdgmFormat.h:840
EMdgmMWCrxInfo_def::phaseFlag
uint8_t phaseFlag
Definition: EMdgmFormat.h:1120
EMdgmHeader_def::numBytesDgm
uint32_t numBytesDgm
Definition: EMdgmFormat.h:105
EMdgmHeader_def::dgmVersion
uint8_t dgmVersion
Definition: EMdgmFormat.h:107
EMdgmIIP_def::info
uint16_t info
Definition: EMdgmFormat.h:1284
KMbinary_def::velDown
float velDown
Definition: EMdgmFormat.h:361
EMdgmSPOdataBlock_def::correctedLat_deg
double correctedLat_deg
Definition: EMdgmFormat.h:198
EMdgmSVPpoint_def::salinity
float salinity
Definition: EMdgmFormat.h:441
EMdgmSVTinfo_def::sensorInputFormat
uint16_t sensorInputFormat
Definition: EMdgmFormat.h:498
EMdgmIB_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1334
EMdgmSVTsample_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:534
KMbinary_def::status
uint32_t status
Definition: EMdgmFormat.h:303
EMdgmMRZ_extraDetClassInfo_def::alarmFlag
uint8_t alarmFlag
Definition: EMdgmFormat.h:933
EMdgmSKMsample_def
#SKM - all available data.
Definition: EMdgmFormat.h:400
EMdgmMRZ_txSectorInfo_def::txNominalSourceLevel_dB
float txNominalSourceLevel_dB
Definition: EMdgmFormat.h:889
EMdgmMRZ_sounding_def::SIstartRange_samples
uint16_t SIstartRange_samples
Definition: EMdgmFormat.h:1024
EMdgmCPOdataBlock_def::speedOverGround_mPerSec
float speedOverGround_mPerSec
Definition: EMdgmFormat.h:1212
EMdgmMRZ_pingInfo_def::pulseForm
uint8_t pulseForm
Definition: EMdgmFormat.h:768
KMbinary_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:301
EMdgmMRZ_pingInfo_def::starbMeanCov_deg
float starbMeanCov_deg
Definition: EMdgmFormat.h:799
EMdgmSDEdataFromSensor_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:602
EMdgmMWCrxBeamData_def::sampleAmplitude05dB_p
int8_t * sampleAmplitude05dB_p
Definition: EMdgmFormat.h:1141
EMdgmMRZ_pingInfo_def::posSensorStatus
uint8_t posSensorStatus
Definition: EMdgmFormat.h:862
EMdgmSPOdataBlock_def::speedOverGround_mPerSec
float speedOverGround_mPerSec
Definition: EMdgmFormat.h:200
KMbinary_def::headingError_deg
float headingError_deg
Definition: EMdgmFormat.h:371
EMdgmSVTsample_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:535
EMdgmMRZ_pingInfo_def::detectionMode
uint8_t detectionMode
Definition: EMdgmFormat.h:766
EMdgmSPOdataBlock_def::timeFromSensor_sec
uint32_t timeFromSensor_sec
Definition: EMdgmFormat.h:195
EMdgmMWCtxSectorData_def::txBeamWidthAlong_deg
float txBeamWidthAlong_deg
Definition: EMdgmFormat.h:1106
EMdgmSDEdataFromSensor_def::depthUsed_m
float depthUsed_m
Definition: EMdgmFormat.h:597
EMdgmSVT_def
#SVT - Sound Velocity at Transducer. Data for sound velocity and temperature are measured directely o...
Definition: EMdgmFormat.h:547
EMdgmMRZ_sounding_def::reflectivity2_dB
float reflectivity2_dB
Definition: EMdgmFormat.h:982
MAX_NUM_BEAMS
#define MAX_NUM_BEAMS
Definition: EMdgmFormat.h:36
EMdgmMRZ_sounding_def::detectionType
uint8_t detectionType
Definition: EMdgmFormat.h:954
EMdgmScommon_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:126
KMbinary_def::latitudeError_m
float latitudeError_m
Definition: EMdgmFormat.h:366
EMdgmMWCrxInfo_def::sampleFreq_Hz
float sampleFreq_Hz
Definition: EMdgmFormat.h:1125
EMdgmCPOdataBlock_def::timeFromSensor_sec
uint32_t timeFromSensor_sec
Definition: EMdgmFormat.h:1207
EMdgmCHEdata_def
#CHE - Heave compatibility data part. Heave reference point is at transducer instead of at vessel ref...
Definition: EMdgmFormat.h:1243
EMdgmSPOdataBlock_def::timeFromSensor_nanosec
uint32_t timeFromSensor_nanosec
Definition: EMdgmFormat.h:196
EMdgmMRZ_txSectorInfo_def::totalSignalLength_sec
float totalSignalLength_sec
Definition: EMdgmFormat.h:893
EMdgmMRZ_pingInfo_def::subDepthMode
uint8_t subDepthMode
Definition: EMdgmFormat.h:761
EMdgmSKMinfo_def::sensorDataContents
uint16_t sensorDataContents
Definition: EMdgmFormat.h:265
EMdgmSVTsample_def::salinity
float salinity
Definition: EMdgmFormat.h:539
EMdgmMRZ_pingInfo_def::depthMode
uint8_t depthMode
Definition: EMdgmFormat.h:744
EMdgmMRZ_pingInfo_def::numBytesInfoData
uint16_t numBytesInfoData
Definition: EMdgmFormat.h:737
EMdgmMRZ_pingInfo_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:865
EMdgmCPOdataBlock_def::timeFromSensor_nanosec
uint32_t timeFromSensor_nanosec
Definition: EMdgmFormat.h:1208
EMdgmMRZ_sounding_def::txSectorNumb
uint8_t txSectorNumb
Definition: EMdgmFormat.h:950
EMdgmSHIdataFromSensor_def::heigthUsed_m
float heigthUsed_m
Definition: EMdgmFormat.h:631
MAX_CPO_DATALENGTH
#define MAX_CPO_DATALENGTH
Definition: EMdgmFormat.h:57
EMdgmMRZ_extraSI_def
#MRZ - Extra seabed image samples.
Definition: EMdgmFormat.h:1034
EMdgmMRZ_pingInfo_def::runtimeFilter1
uint8_t runtimeFilter1
Definition: EMdgmFormat.h:815
EMdgmMRZ_sounding_def::y_reRefPoint_m
float y_reRefPoint_m
Definition: EMdgmFormat.h:1013
EMdgmMbody_def::algorithmType
uint8_t algorithmType
Definition: EMdgmFormat.h:721
EMdgmSDEdataFromSensor_def::scale
float scale
Definition: EMdgmFormat.h:599
EMdgmMbody_def::rxFanIndex
uint8_t rxFanIndex
Definition: EMdgmFormat.h:715
EMdgmSdataInfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:179
EMdgmIIP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1283
EMdgmMWC_def
#MWC - Multibeam Water Column Datagram. Entire datagram containing several sub structs.
Definition: EMdgmFormat.h:1163
EMdgmMRZ_sounding_def::echoLength_sec
float echoLength_sec
Definition: EMdgmFormat.h:968
EMdgmMRZ_txSectorInfo_def::txSubArray
uint8_t txSubArray
Definition: EMdgmFormat.h:883
EMdgmSCL_def
#SCL - CLock datagram.
Definition: EMdgmFormat.h:578
EMdgmMRZ_txSectorInfo_def::txFocusRange_m
float txFocusRange_m
Definition: EMdgmFormat.h:890
EMdgmMRZ_pingInfo_def::transmitPower_dB
float transmitPower_dB
Definition: EMdgmFormat.h:839
EMdgmIOP_def::info
uint16_t info
Definition: EMdgmFormat.h:1310
EMdgmMRZ_sounding_def::SIcentreSample
uint16_t SIcentreSample
Definition: EMdgmFormat.h:1025
EMdgmMRZ_extraSI_def::numStarbSamples
uint16_t numStarbSamples
Definition: EMdgmFormat.h:1041
MAX_SVP_POINTS
#define MAX_SVP_POINTS
Definition: EMdgmFormat.h:43
EMdgmMRZ_pingInfo_def::z_waterLevelReRefPoint_m
float z_waterLevelReRefPoint_m
Definition: EMdgmFormat.h:857
EMdgmMWCtxSectorData_def::centreFreq_Hz
float centreFreq_Hz
Definition: EMdgmFormat.h:1105
EMdgmMRZ_extraSI_def::portSIsample_desidB
int16_t portSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP]
Definition: EMdgmFormat.h:1039
MAX_EXTRA_DET_CLASSES
#define MAX_EXTRA_DET_CLASSES
Definition: EMdgmFormat.h:38
EMdgmSCLdataFromSensor_def::dataFromSensor
uint8_t dataFromSensor[MAX_SCL_DATALENGTH]
Definition: EMdgmFormat.h:569
EMdgmMRZ_pingInfo_def::numTxSectors
uint16_t numTxSectors
Definition: EMdgmFormat.h:848
EMdgmSKMinfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:264
EMdgmMRZ_pingInfo_def::padding0
uint16_t padding0
Definition: EMdgmFormat.h:738
EMdgmIB_def
#IB - Results from online built in test (BIST). Definition used for three different BIST datagrams...
Definition: EMdgmFormat.h:1331
EMdgmMRZ_sounding_def::twoWayTravelTime_sec
float twoWayTravelTime_sec
Definition: EMdgmFormat.h:1001
EMdgmMRZ_sounding_def::detectionWindowLength_sec
float detectionWindowLength_sec
Definition: EMdgmFormat.h:967
EMdgmHeader_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:111
KMbinary_def
#SKM - Sensor attitude data block. Data given timestamped, not corrected.
Definition: EMdgmFormat.h:294
EMdgmMWCrxInfo_def::TVGoffset_dB
int8_t TVGoffset_dB
Definition: EMdgmFormat.h:1123
KMbinary_def::heaveError_m
float heaveError_m
Definition: EMdgmFormat.h:372
EMdgmMRZ_sounding_def::WCrange_samples
uint16_t WCrange_samples
Definition: EMdgmFormat.h:974
EMdgmMRZ_pingInfo_def::starbMeanCov_m
int16_t starbMeanCov_m
Definition: EMdgmFormat.h:801
EMdgmMRZ_pingInfo_def::portMeanCov_deg
float portMeanCov_deg
Definition: EMdgmFormat.h:798
EMdgmMbody_def::txTransducerInd
uint8_t txTransducerInd
Definition: EMdgmFormat.h:718
EMdgmMRZ_def
#MRZ - Multibeam Raw Range and Depth datagram. The datagram also contains seabed image data...
Definition: EMdgmFormat.h:1062
EMdgmIOP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1309
MAX_SCL_DATALENGTH
#define MAX_SCL_DATALENGTH
Definition: EMdgmFormat.h:53
KMbinary_def::ellipsoidHeight_m
float ellipsoidHeight_m
Definition: EMdgmFormat.h:340
EMdgmMRZ_txSectorInfo_def::pulseShading
uint8_t pulseShading
Definition: EMdgmFormat.h:894
EMdgmSPOdataBlock_def::posDataFromSensor
int8_t posDataFromSensor[MAX_SPO_DATALENGTH]
Definition: EMdgmFormat.h:203
EMdgmMWCrxBeamData_def::detectedRangeInSamples
uint16_t detectedRangeInSamples
Definition: EMdgmFormat.h:1137
EMdgmMbody_def::swathsPerPing
uint8_t swathsPerPing
Definition: EMdgmFormat.h:716
EMdgmMRZ_txSectorInfo_def::txSectorNumb
uint8_t txSectorNumb
Definition: EMdgmFormat.h:881
EMdgmMRZ_sounding_def::detectionUncertaintyVer_m
float detectionUncertaintyVer_m
Definition: EMdgmFormat.h:965
EMdgmMRZ_pingInfo_def::headingVessel_deg
float headingVessel_deg
Definition: EMdgmFormat.h:854
EMdgmMRZ_pingInfo_def::padding2
uint16_t padding2
Definition: EMdgmFormat.h:841
EMdgmMRZ_sounding_def::meanAbsCoeff_dBPerkm
float meanAbsCoeff_dBPerkm
Definition: EMdgmFormat.h:980
MAX_SPO_DATALENGTH
#define MAX_SPO_DATALENGTH
Definition: EMdgmFormat.h:50
MAX_NUM_TX_PULSES
#define MAX_NUM_TX_PULSES
Definition: EMdgmFormat.h:41
EMdgmSVP_def
#SVP - Sound Velocity Profile. Data from sound velocity profile or from CTD profile. Sound velocity is measured directly or estimated, respectively.
Definition: EMdgmFormat.h:451
EMdgmIIP_def
Definition of #IIP datagram containing installation parameters and sensor format settings. Details in separate document Installation parameters
Definition: EMdgmFormat.h:1280
EMdgmSVPpoint_def::depth_m
float depth_m
Definition: EMdgmFormat.h:437
EMdgmSVTinfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:511
EMdgmSDEdataFromSensor_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:600
EMdgmSHIdataFromSensor_def
Part of Height datagram, giving corrected and uncorrected data as received from sensor.
Definition: EMdgmFormat.h:628
EMdgmMRZ_pingInfo_def::distanceBtwSwath
uint8_t distanceBtwSwath
Definition: EMdgmFormat.h:762
EMdgmMWCrxBeamPhase1_def
#MWC - Beam sample phase info, specific for each beam and water column sample. numBeams * numSampleDa...
Definition: EMdgmFormat.h:1147
EMdgmIB_def::BISTStatus
int8_t BISTStatus
Definition: EMdgmFormat.h:1338
EMdgmSVP_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:464
EMdgmMRZ_sounding_def::beamIncAngleAdj_deg
float beamIncAngleAdj_deg
Definition: EMdgmFormat.h:1018
EMdgmMRZ_txSectorInfo_def::centreFreq_Hz
float centreFreq_Hz
Definition: EMdgmFormat.h:891
EMdgmMRZ_sounding_def::detectionUncertaintyHor_m
float detectionUncertaintyHor_m
Definition: EMdgmFormat.h:966
EMdgmSVTsample_def::temp_C
float temp_C
Definition: EMdgmFormat.h:537
EMdgmSPO_def
#SPO - Struct of position sensor datagram. Data from active sensor will be motion corrected if in...
Definition: EMdgmFormat.h:214
EMdgmSVTinfo_def::filterTime_sec
float filterTime_sec
Definition: EMdgmFormat.h:525
EMdgmCPO_def
#CPO - Struct of compatibility position sensor datagram. Data from active sensor will be motion c...
Definition: EMdgmFormat.h:1226
KMbinary_def::dgmVersion
uint16_t dgmVersion
Definition: EMdgmFormat.h:298
MAX_SIDESCAN_SAMP
#define MAX_SIDESCAN_SAMP
Definition: EMdgmFormat.h:39
EMdgmMWCrxInfo_def::numBeams
uint16_t numBeams
Definition: EMdgmFormat.h:1117
EMdgmMRZ_sounding_def
#MRZ - Data for each sounding, e.g. XYZ, reflectivity, two way travel time etc.
Definition: EMdgmFormat.h:946
EMdgmMWCrxBeamPhase2_def
#MWC - Beam sample phase info, specific for each beam and water column sample. numBeams * numSampleDa...
Definition: EMdgmFormat.h:1155
EMdgmSKM_def
#SKM - data from attitude and attitude velocity sensors.
Definition: EMdgmFormat.h:417
EMdgmMpartition_def
Multibeam (M) datagrams - data partition information. General for all M datagrams.
Definition: EMdgmFormat.h:663
EMdgmMRZ_pingInfo_def::x_kmallToall_m
float x_kmallToall_m
Definition: EMdgmFormat.h:858
EMdgmMWCtxInfo_def
#MWC - data block 1: transmit sectors, general info for all sectors
Definition: EMdgmFormat.h:1089
EMdgmSdataInfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:177
EMdgmMRZ_rxInfo_def::numExtraDetections
uint16_t numExtraDetections
Definition: EMdgmFormat.h:917
KMbinary_def::velNorth
float velNorth
Definition: EMdgmFormat.h:359
EMdgmMRZ_extraDetClassInfo_def::padding
int8_t padding
Definition: EMdgmFormat.h:932
EMdgmScommon_def
Sensor (S) output datagram - common part for all external sensors.
Definition: EMdgmFormat.h:124
EMdgmMRZ_sounding_def::SInumSamples
uint16_t SInumSamples
Definition: EMdgmFormat.h:1026
KMbinary_def::northAcceleration
float northAcceleration
Definition: EMdgmFormat.h:377
EMdgmMRZ_rxInfo_def::numSoundingsMaxMain
uint16_t numSoundingsMaxMain
Definition: EMdgmFormat.h:909
EMdgmMRZ_pingInfo_def::yawAngle_deg
float yawAngle_deg
Definition: EMdgmFormat.h:842
KMbinary_def::numBytesDgm
uint16_t numBytesDgm
Definition: EMdgmFormat.h:297
EMdgmSPOdataBlock_def::posFixQuality_m
float posFixQuality_m
Definition: EMdgmFormat.h:197
EMdgmMRZ_pingInfo_def::transmitArraySizeUsed_deg
float transmitArraySizeUsed_deg
Definition: EMdgmFormat.h:837
EMdgmMRZ_sounding_def::rejectionInfo2
uint8_t rejectionInfo2
Definition: EMdgmFormat.h:958
EMdgmSPOdataBlock_def
#SPO - Sensor position data block. Data from active sensor is corrected data for position system inst...
Definition: EMdgmFormat.h:193
KMbinary_def::roll_deg
float roll_deg
Definition: EMdgmFormat.h:344
EMdgmSVPpoint_def::padding
uint32_t padding
Definition: EMdgmFormat.h:439
EMdgmSVTinfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:510
EMdgmMWCtxSectorData_def::padding
int16_t padding
Definition: EMdgmFormat.h:1108
EMdgmMRZ_sounding_def::rangeFactor
float rangeFactor
Definition: EMdgmFormat.h:963
EMdgmMRZ_pingInfo_def::maxTotalTxPulseLength_sec
float maxTotalTxPulseLength_sec
Definition: EMdgmFormat.h:791
EMdgmMbody_def::numRxTransducers
uint8_t numRxTransducers
Definition: EMdgmFormat.h:720
EMdgmMWC_def::beamData_p
struct EMdgmMWCrxBeamData_def * beamData_p
Definition: EMdgmFormat.h:1171
EMdgmSdataInfo_def
Information of repeated sensor data in one datagram.
Definition: EMdgmFormat.h:175
EMdgmCPOdataBlock_def::posFixQuality_m
float posFixQuality_m
Definition: EMdgmFormat.h:1209
EMdgmMRZ_sounding_def::soundingIndex
uint16_t soundingIndex
Definition: EMdgmFormat.h:949
KMbinary_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:339
EMdgmHeader_def::echoSounderID
uint16_t echoSounderID
Definition: EMdgmFormat.h:109
EMdgmIB_def::BISTStyle
uint8_t BISTStyle
Definition: EMdgmFormat.h:1336
EMdgmMbody_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:710
MAX_EXTRA_DET
#define MAX_EXTRA_DET
Definition: EMdgmFormat.h:37
EMdgmMRZ_rxInfo_def::numExtraDetectionClasses
uint16_t numExtraDetectionClasses
Definition: EMdgmFormat.h:918
EMdgmSPOdataBlock_def::correctedLong_deg
double correctedLong_deg
Definition: EMdgmFormat.h:199
EMdgmMRZ_txSectorInfo_def::padding0
uint8_t padding0
Definition: EMdgmFormat.h:885
EMdgmSVPpoint_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:438
EMdgmMWCrxInfo_def::TVGfunctionApplied
uint8_t TVGfunctionApplied
Definition: EMdgmFormat.h:1121
KMbinary_def::heading_deg
float heading_deg
Definition: EMdgmFormat.h:346
KMbinary_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:299
EMdgmCPOdataBlock_def::correctedLong_deg
double correctedLong_deg
Definition: EMdgmFormat.h:1211
EMdgmMRZ_sounding_def::WCNomBeamAngleAcross_deg
float WCNomBeamAngleAcross_deg
Definition: EMdgmFormat.h:975
EMdgmMRZ_txSectorInfo_def::tiltAngleReTx_deg
float tiltAngleReTx_deg
Definition: EMdgmFormat.h:887
EMdgmSVP_def::sensorData
struct EMdgmSVPpoint_def sensorData[MAX_SVP_POINTS]
Definition: EMdgmFormat.h:467
KMbinary_def::heave_m
float heave_m
Definition: EMdgmFormat.h:347
EMdgmMRZ_pingInfo_def::beamSpacing
uint8_t beamSpacing
Definition: EMdgmFormat.h:743
EMdgmSVP_def::numSamples
uint16_t numSamples
Definition: EMdgmFormat.h:455
EMdgmMRZ_sounding_def::WCBeamNumb
uint16_t WCBeamNumb
Definition: EMdgmFormat.h:973
KMdelayedHeave_def
#SKM - delayed heave. Included if available from sensor.
Definition: EMdgmFormat.h:387
EMdgmMRZ_pingInfo_def::numBytesPerTxSector
uint16_t numBytesPerTxSector
Definition: EMdgmFormat.h:849
EMdgmSVTsample_def::pressure_Pa
float pressure_Pa
Definition: EMdgmFormat.h:538
EMdgmMRZ_pingInfo_def::padding1
uint16_t padding1
Definition: EMdgmFormat.h:769
EMdgmMWCrxInfo_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:1126
EMdgmSCLdataFromSensor_def::clockDevPU_nanosec
int32_t clockDevPU_nanosec
Definition: EMdgmFormat.h:566
EMdgmMWCrxInfo_def::numBytesPerBeamEntry
uint8_t numBytesPerBeamEntry
Definition: EMdgmFormat.h:1118
KMbinary_def::pitch_deg
float pitch_deg
Definition: EMdgmFormat.h:345
EMdgmMRZ_pingInfo_def
#MRZ - ping info. Information on vessel/system level, i.e. information common to all beams in the cur...
Definition: EMdgmFormat.h:735
EMdgmMRZ_sounding_def::beamAngleReRx_deg
float beamAngleReRx_deg
Definition: EMdgmFormat.h:999
EMdgmSVTinfo_def::sensorStatus
uint16_t sensorStatus
Definition: EMdgmFormat.h:483
KMbinary_def::rollError_deg
float rollError_deg
Definition: EMdgmFormat.h:369
EMdgmMRZ_pingInfo_def::padding3
uint8_t padding3
Definition: EMdgmFormat.h:864
EMdgmMRZ_pingInfo_def::starbSectorEdge_deg
float starbSectorEdge_deg
Definition: EMdgmFormat.h:797
EMdgmSVTinfo_def::sensorDataContents
uint16_t sensorDataContents
Definition: EMdgmFormat.h:512
KMbinary_def::longitudeError_m
float longitudeError_m
Definition: EMdgmFormat.h:367
EMdgmSCLdataFromSensor_def::offset_sec
float offset_sec
Definition: EMdgmFormat.h:565
EMdgmMWCtxSectorData_def::txSectorNum
uint16_t txSectorNum
Definition: EMdgmFormat.h:1107
EMdgmMRZ_sounding_def::sourceLevelApplied_dB
float sourceLevelApplied_dB
Definition: EMdgmFormat.h:988
EMdgmMRZ_sounding_def::realTimeCleanInfo
uint16_t realTimeCleanInfo
Definition: EMdgmFormat.h:1019
EMdgmMRZ_pingInfo_def::freqRangeHighLim_Hz
float freqRangeHighLim_Hz
Definition: EMdgmFormat.h:790
EMdgmMWCrxInfo_def
#MWC - data block 2: receiver, general info
Definition: EMdgmFormat.h:1114
EMdgmMRZ_sounding_def::detectionClass
uint8_t detectionClass
Definition: EMdgmFormat.h:960
EMdgmSVTinfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:482
EMdgmMWCtxSectorData_def::tiltAngleReTx_deg
float tiltAngleReTx_deg
Definition: EMdgmFormat.h:1104
EMdgmScommon_def::sensorStatus
uint16_t sensorStatus
Definition: EMdgmFormat.h:138
EMdgmMRZ_pingInfo_def::freqRangeLowLim_Hz
float freqRangeLowLim_Hz
Definition: EMdgmFormat.h:789
EMdgmMRZ_sounding_def::receiverSensitivityApplied_dB
float receiverSensitivityApplied_dB
Definition: EMdgmFormat.h:987
EMdgmIIP_def::status
uint16_t status
Definition: EMdgmFormat.h:1285
EMdgmMRZ_sounding_def::x_reRefPoint_m
float x_reRefPoint_m
Definition: EMdgmFormat.h:1015
EMdgmIOP_def
Definition of #IOP datagram containing runtime parameters, exactly as chosen by operator in the K-Con...
Definition: EMdgmFormat.h:1306
EMdgmMRZ_sounding_def::rejectionInfo1
uint8_t rejectionInfo1
Definition: EMdgmFormat.h:957
EMdgmMRZ_sounding_def::BScalibration_dB
float BScalibration_dB
Definition: EMdgmFormat.h:993
EMdgmMRZ_pingInfo_def::attitudeSensorStatus
uint8_t attitudeSensorStatus
Definition: EMdgmFormat.h:863
EMdgmSdataInfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:178
EMdgmMRZ_rxInfo_def::numSoundingsValidMain
uint16_t numSoundingsValidMain
Definition: EMdgmFormat.h:910
EMdgmMRZ_rxInfo_def
#MRZ - receiver specific information.
Definition: EMdgmFormat.h:906
KMbinary_def::pitchRate
float pitchRate
Definition: EMdgmFormat.h:353
KMbinary_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:338
EMdgmSDEdataFromSensor_def::offset
float offset
Definition: EMdgmFormat.h:598
EMdgmMRZ_txSectorInfo_def::padding1
uint16_t padding1
Definition: EMdgmFormat.h:896
EMdgmSHI_def
#SHI - Height datagram.
Definition: EMdgmFormat.h:640
EMdgmHeader_def
Definition of general datagram header.
Definition: EMdgmFormat.h:103
EMdgmMRZ_pingInfo_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:866