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

EMdgmFormat.h
Go to the documentation of this file.
1 /*h+*/
15 /*
16
17 Revision History:
18
19 01 01 SEP 2016 Rev A.
20 02 01 MAR 2017 Rev B.
21 03 05 JUL 2017 Rev C.
22 04 08 DES 2017 Rev D.
23 05 25 MAY 2018 Rev E.
24 */
25
250 #ifndef _EMDGMFORMAT_H
251 #define _EMDGMFORMAT_H
252
253 #include "stdint.h"
254
255 #ifndef _VXW
256 #pragma pack(4)
257 #endif
258
259 #define MAX_NUM_BEAMS 1024
260 #define MAX_EXTRA_DET 1024
261 #define MAX_EXTRA_DET_CLASSES 11
262 #define MAX_SIDESCAN_SAMP 60000
263 #define MAX_SIDESCAN_EXTRA_SAMP 15000
264 #define MAX_NUM_TX_PULSES 9
265 #define MAX_ATT_SAMPLES 148
266 #define MAX_SVP_POINTS 2000
267 #define MAX_SVT_SAMPLES 1
268 #define MAX_DGM_SIZE 64000
269 #define MAX_NUM_MST_DGMS 256
270 #define MAX_NUM_MWC_DGMS 256
271 #define MAX_NUM_MRZ_DGMS 32
273 #define MAX_SPO_DATALENGTH 250
274 #define MAX_ATT_DATALENGTH 250
275 #define MAX_SVT_DATALENGTH 64
276 #define MAX_SCL_DATALENGTH 64
277 #define MAX_SDE_DATALENGTH 32
278 #define MAX_SHI_DATALENGTH 32
280 #define MAX_CPO_DATALENGTH 250
281 #define MAX_CHE_DATALENGTH 64
283 #define UNAVAILABLE_POSFIX 0xffff
284 #define UNAVAILABLE_LATITUDE 200.0f
285 #define UNAVAILABLE_LONGITUDE 200.0f
286 #define UNAVAILABLE_SPEED -1.0f
287 #define UNAVAILABLE_COURSE -4.0f
288 #define UNAVAILABLE_ELLIPSOIDHEIGHT -999.0f
289 /*
290 *
291 */
292 /*********************************************
293 Datagram names
294 *********************************************/
295
296 /* I - datagrams */
297 #define EM_DGM_I_INSTALLATION_PARAM "#IIP"
298 #define EM_DGM_I_OP_RUNTIME "#IOP"
299
300 /* S-datagrams */
301 #define EM_DGM_S_POSITION "#SPO"
302 #define EM_DGM_S_KM_BINARY "#SKM"
303 #define EM_DGM_S_SOUND_VELOCITY_PROFILE "#SVP"
304 #define EM_DGM_S_SOUND_VELOCITY_TRANSDUCER "#SVT"
305 #define EM_DGM_S_CLOCK "#SCL"
306 #define EM_DGM_S_DEPTH "#SDE"
307 #define EM_DGM_S_HEIGHT "#SHI"
308
309
310 /* M-datagrams */
311 #define EM_DGM_M_RANGE_AND_DEPTH "#MRZ"
312 #define EM_DGM_M_WATER_COLUMN "#MWC"
313
314
315 /* C-datagrams */
316 #define EM_DGM_C_POSITION "#CPO"
317 #define EM_DGM_C_HEAVE "#CHE"
318
319
320
321
322 /*********************************************
323
324 General datagram header
325
326 *********************************************/
327
330 struct EMdgmHeader_def
331 {
332 uint32_t numBytesDgm;
333 uint8_t dgmType[4];
334 uint8_t dgmVersion;
335 uint8_t systemID;
336 uint16_t echoSounderID;
337 uint32_t time_sec;
338 uint32_t time_nanosec;
339 };
340
341 typedef struct EMdgmHeader_def EMdgmHeader, *pEMdgmHeader;
342
343 /*********************************************
344
345 Sensor datagrams
346
347 *********************************************/
348
351 struct EMdgmScommon_def
352 {
353 uint16_t numBytesCmnPart;
354 uint16_t sensorSystem;
365 uint16_t sensorStatus;
392 uint16_t padding;
393 };
394
395 typedef struct EMdgmScommon_def EMdgmScommon, *pEMdgmScommon;
396
401 struct EMdgmSdataInfo_def
402 {
403 uint16_t numBytesInfoPart;
404 uint16_t numSamplesArray;
405 uint16_t numBytesPerSample;
406 uint16_t numBytesRawSensorData;
407 };
408
409 typedef struct EMdgmSdataInfo_def EMdgmSdataInfo, *pEMdgmSdataInfo;
410
411
412 /************************************
413 #SPO - Sensor Position data
414 ************************************/
419 struct EMdgmSPOdataBlock_def
420 {
421 uint32_t timeFromSensor_sec;
422 uint32_t timeFromSensor_nanosec;
423 float posFixQuality_m;
424 double correctedLat_deg;
425 double correctedLong_deg;
426 float speedOverGround_mPerSec;
427 float courseOverGround_deg;
428 float ellipsoidHeightReRefPoint_m;
429 int8_t posDataFromSensor[MAX_SPO_DATALENGTH];
430 };
431
432 typedef struct EMdgmSPOdataBlock_def EMdgmSPOdataBlock, *pEMdgmSPOdataBlock;
433
440 struct EMdgmSPO_def
441 {
442 struct EMdgmHeader_def header;
443 struct EMdgmScommon_def cmnPart;
444 struct EMdgmSPOdataBlock_def sensorData;
445 };
446
447 #define SPO_VERSION 0
448 typedef struct EMdgmSPO_def EMdgmSPO, *pEMdgmSPO;
449
450
451 /************************************
452 #SKM - KM binary sensor data
453 ************************************/
456 struct EMdgmSKMinfo_def
457 {
458 uint16_t numBytesInfoPart;
459 uint8_t sensorSystem;
460 uint8_t sensorStatus;
476 uint16_t sensorInputFormat;
489 uint16_t numSamplesArray;
490 uint16_t numBytesPerSample;
491 uint16_t sensorDataContents;
512 };
513
514 typedef struct EMdgmSKMinfo_def EMdgmSKMinfo, *pEMdgmSKMinfo;
520 struct KMbinary_def
521 {
522 uint8_t dgmType[4];
523 uint16_t numBytesDgm;
524 uint16_t dgmVersion;
525 uint32_t time_sec;
527 uint32_t time_nanosec;
529 uint32_t status;
564 double latitude_deg;
565 double longitude_deg;
566 float ellipsoidHeight_m;
570 float roll_deg;
571 float pitch_deg;
572 float heading_deg;
573 float heave_m;
578 float rollRate;
579 float pitchRate;
580 float yawRate;
585 float velNorth;
586 float velEast;
587 float velDown;
592 float latitudeError_m;
593 float longitudeError_m;
594 float ellipsoidHeightError_m;
595 float rollError_deg;
596 float pitchError_deg;
597 float headingError_deg;
598 float heaveError_m;
603 float northAcceleration;
604 float eastAcceleration;
605 float downAcceleration;
606 };
607
608 typedef struct KMbinary_def KMbinary, *pKMbinary;
609
613 struct KMdelayedHeave_def
614 {
615 uint32_t time_sec;
616 uint32_t time_nanosec;
617 float delayedHeave_m;
618 };
619 typedef struct KMdelayedHeave_def KMdelayedHeave, *pKMdelayedHeave;
620
624 struct EMdgmSKMsample_def
625 {
626 struct KMbinary_def KMdefault;
627 struct KMdelayedHeave_def delayedHeave;
628 };
629
630 typedef struct EMdgmSKMsample_def EMdgmSKMsample, *pEMdgmSKMsample;
631
641 struct EMdgmSKM_def
642 {
643 struct EMdgmHeader_def header;
644 struct EMdgmSKMinfo_def infoPart;
645 struct EMdgmSKMsample_def sample[MAX_ATT_SAMPLES];
646 };
647
648 #define SKM_VERSION 1
649 typedef struct EMdgmSKM_def EMdgmSKM, *pEMdgmSKM;
650
651
652 /************************************
653 #SVP - Sound Velocity Profile
654 ************************************/
659 struct EMdgmSVPpoint_def
660 {
661 float depth_m;
662 float soundVelocity_mPerSec;
663 float absCoeff_dBPerkm;
664 float temp_C;
665 float salinity;
666 };
667
668 typedef struct EMdgmSVPpoint_def EMdgmSVPpoint, *pEMdgmSVPpoint;
669
675 struct EMdgmSVP_def
676 {
677 struct EMdgmHeader_def header;
678 uint16_t numBytesCmnPart;
679 uint16_t numSamples;
681 uint8_t sensorFormat[4];
684 uint32_t time_sec;
686 double latitude_deg;
688 double longitude_deg;
691 struct EMdgmSVPpoint_def sensorData[MAX_SVP_POINTS];
693 };
694
695 #define SVP_VERSION 0
696 typedef struct EMdgmSVP_def EMdgmSVP, *pEMdgmSVP;
697
698 /************************************
699 * #SVT - Sensor sound Velocity measured at Transducer
700 ************************************/
704 struct EMdgmSVTinfo_def
705 {
706 uint16_t numBytesInfoPart;
707 uint16_t sensorStatus;
722 uint16_t sensorInputFormat;
734 uint16_t numSamplesArray;
735 uint16_t numBytesPerSample;
736 uint16_t sensorDataContents;
749 float filterTime_sec;
750 float soundVelocity_mPerSec_offset;
751 };
752
756 struct EMdgmSVTsample_def
757 {
758 uint32_t time_sec;
759 uint32_t time_nanosec;
760 float soundVelocity_mPerSec;
761 float temp_C;
762 float pressure_Pa;
763 float salinity;
764 };
765
766 typedef struct EMdgmSVTsample_def EMdgmSVTsample, *pEMdgmSVTsample;
767
771 struct EMdgmSVT_def
772 {
773 struct EMdgmHeader_def header;
774 struct EMdgmSVTinfo_def infoPart;
775 struct EMdgmSVTsample_def sensorData[MAX_SVT_SAMPLES];
776 };
777
778 #define SVT_VERSION 0
779 typedef struct EMdgmSVT_def EMdgmSVT, *pEMdgmSVT;
780
781 /************************************
782 #SCL - Sensor CLock datagram
783 ************************************/
787 struct EMdgmSCLdataFromSensor_def
788 {
789 float offset_sec;
790 int32_t clockDevPU_nanosec;
793 uint8_t dataFromSensor[MAX_SCL_DATALENGTH];
795 };
796
797 typedef struct EMdgmSCLdataFromSensor_def EMdgmSCLdataFromSensor, *pEMdgmSCLdataFromSensor;
798
802 struct EMdgmSCL_def
803 {
804 struct EMdgmHeader_def header;
805 struct EMdgmScommon_def cmnPart;
806 struct EMdgmSCLdataFromSensor_def sensData;
807 };
808
809 #define SCL_VERSION 0
810 typedef struct EMdgmSCL_def EMdgmSCL, *pEMdgmSCL;
811
812
813 /************************************
814 #SDE - Sensor Depth data
815 ************************************/
819 struct EMdgmSDEdataFromSensor_def
820 {
821 float depthUsed_m;
822 float offset;
823 float scale;
824 double latitude_deg;
826 double longitude_deg;
828 uint8_t dataFromSensor[MAX_SDE_DATALENGTH];
829 };
830
831 typedef struct EMdgmSDEdataFromSensor_def EMdgmSDEdataFromSensor, *pEMdgmSDEdataFromSensor;
832
836 struct EMdgmSDE_def
837 {
838 struct EMdgmHeader_def header;
839 struct EMdgmScommon_def cmnPart;
840 struct EMdgmSDEdataFromSensor_def sensorData;
841 };
842
843 #define SDE_VERSION 0
844 typedef struct EMdgmSDE_def EMdgmSDE, *pEMdgmSDE;
845
846 /************************************
847 #SHI - Sensor Height data
848 ************************************/
852 struct EMdgmSHIdataFromSensor_def
853 {
854 uint16_t sensorType;
855 float heigthUsed_m;
856 uint8_t dataFromSensor[MAX_SHI_DATALENGTH];
857 };
858
859 typedef struct EMdgmSHIdataFromSensor_def EMdgmSHIdataFromSensor, *pEMdgmSHIdataFromSensor;
860
864 struct EMdgmSHI_def
865 {
866 struct EMdgmHeader_def header;
867 struct EMdgmScommon_def cmnPart;
868 struct EMdgmSHIdataFromSensor_def sensData;
869 };
870
871 #define SHI_VERSION 0
872 typedef struct EMdgmSHI_def EMdgmSHI, *pEMdgmSHI;
873
874
875 /*********************************************
876
877 Multibeam datagrams
878
879 *********************************************/
887 struct EMdgmMpartition_def
888 {
889 uint16_t numOfDgms;
890 uint16_t dgmNum;
891 };
892
893 typedef struct EMdgmMpartition_def EMdgmMpartition, *pEMdgmMpartition;
894
932 struct EMdgmMbody_def
933 {
934 uint16_t numBytesCmnPart;
935 uint16_t pingCnt;
937 uint8_t rxFansPerPing;
939 uint8_t rxFanIndex;
940 uint8_t swathsPerPing;
941 uint8_t swathAlongPosition;
942 uint8_t txTransducerInd;
943 uint8_t rxTransducerInd;
944 uint8_t numRxTransducers;
945 uint8_t algorithmType;
947 };
948
949 typedef struct EMdgmMbody_def EMdgmMbody, *pEMdgmMbody;
950
951 /************************************
952 #MRZ - multibeam data for raw range,
953 depth, reflectivity, seabed image(SI) etc.
954 ************************************/
959 struct EMdgmMRZ_pingInfo_def
960 {
961 uint16_t numBytesInfoData;
962 uint16_t padding0;
966 float pingRate_Hz;
967 uint8_t beamSpacing;
968 uint8_t depthMode;
984 uint8_t subDepthMode;
985 uint8_t distanceBtwSwath;
989 uint8_t detectionMode;
990 uint8_t pulseForm;
991 uint16_t padding1;
992
993 float frequencyMode_Hz;
1011 float freqRangeLowLim_Hz;
1012 float freqRangeHighLim_Hz;
1013 float maxTotalTxPulseLength_sec;
1014 float maxEffTxPulseLength_sec;
1015 float maxEffTxBandWidth_Hz;
1016 float absCoeff_dBPerkm;
1018 float portSectorEdge_deg;
1019 float starbSectorEdge_deg;
1020 float portMeanCov_deg;
1021 float starbMeanCov_deg;
1022 int16_t portMeanCov_m;
1023 int16_t starbMeanCov_m;
1025 uint8_t modeAndStabilisation;
1037 uint8_t runtimeFilter1;
1048 uint16_t runtimeFilter2;
1058 uint32_t pipeTrackingStatus;
1059 float transmitArraySizeUsed_deg;
1060 float receiveArraySizeUsed_deg;
1061 float transmitPower_dB;
1062 uint16_t SLrampUpTimeRemaining;
1063 uint16_t padding2;
1064 float yawAngle_deg;
1070 uint16_t numTxSectors;
1071 uint16_t numBytesPerTxSector;
1076 float headingVessel_deg;
1077 float soundSpeedAtTxDepth_mPerSec;
1078 float txTransducerDepth_m;
1079 float z_waterLevelReRefPoint_m;
1080 float x_kmallToall_m;
1081 float y_kmallToall_m;
1083 uint8_t latLongInfo;
1084 uint8_t posSensorStatus;
1085 uint8_t attitudeSensorStatus;
1086 uint8_t padding3;
1087 double latitude_deg;
1088 double longitude_deg;
1089 float ellipsoidHeightReRefPoint_m;
1092 };
1093
1094 typedef struct EMdgmMRZ_pingInfo_def EMdgmMRZ_pingInfo, *pEMdgmMRZ_pingInfo;
1095
1101 struct EMdgmMRZ_txSectorInfo_def
1102 {
1103 uint8_t txSectorNumb;
1104 uint8_t txArrNumber;
1105 uint8_t txSubArray;
1107 uint8_t padding0;
1108 float sectorTransmitDelay_sec;
1109 float tiltAngleReTx_deg;
1111 float txNominalSourceLevel_dB;
1112 float txFocusRange_m;
1113 float centreFreq_Hz;
1114 float signalBandWidth_Hz;
1115 float totalSignalLength_sec;
1116 uint8_t pulseShading;
1117 uint8_t signalWaveForm;
1118 uint16_t padding1;
1120 };
1121
1122 typedef struct EMdgmMRZ_txSectorInfo_def EMdgmMRZ_txSectorInfo, *pEMdgmMRZ_txSectorInfo;
1123
1128 struct EMdgmMRZ_rxInfo_def
1129 {
1130 uint16_t numBytesRxInfo;
1131 uint16_t numSoundingsMaxMain;
1132 uint16_t numSoundingsValidMain;
1133 uint16_t numBytesPerSounding;
1134 float WCSampleRate;
1135 float seabedImageSampleRate;
1136 float BSnormal_dB;
1137 float BSoblique_dB;
1138 uint16_t extraDetectionAlarmFlag;
1139 uint16_t numExtraDetections;
1140 uint16_t numExtraDetectionClasses;
1141 uint16_t numBytesPerClass;
1143 };
1144
1145 typedef struct EMdgmMRZ_rxInfo_def EMdgmMRZ_rxInfo, *pEMdgmMRZ_rxInfo;
1146
1151 struct EMdgmMRZ_extraDetClassInfo_def
1152 {
1153 uint16_t numExtraDetInClass;
1154 int8_t padding;
1155 uint8_t alarmFlag;
1157 };
1158
1159 typedef struct EMdgmMRZ_extraDetClassInfo_def EMdgmMRZ_extraDetClassInfo, *pEMdgmMRZ_extraDetClassInfo;
1160
1168 struct EMdgmMRZ_sounding_def
1169 {
1170
1171 uint16_t soundingIndex;
1172 uint8_t txSectorNumb;
1176 uint8_t detectionType;
1178 uint8_t detectionMethod;
1179 uint8_t rejectionInfo1;
1180 uint8_t rejectionInfo2;
1181 uint8_t postProcessingInfo;
1182 uint8_t detectionClass;
1183 uint8_t detectionConfidenceLevel;
1184 uint16_t padding;
1185 float rangeFactor;
1186 float qualityFactor;
1187 float detectionUncertaintyVer_m;
1188 float detectionUncertaintyHor_m;
1189 float detectionWindowLength_sec;
1190 float echoLength_sec;
1195 uint16_t WCBeamNumb;
1196 uint16_t WCrange_samples;
1197 float WCNomBeamAngleAcross_deg;
1202 float meanAbsCoeff_dBPerkm;
1203 float reflectivity1_dB;
1204 float reflectivity2_dB;
1209 float receiverSensitivityApplied_dB;
1210 float sourceLevelApplied_dB;
1215 float BScalibration_dB;
1216 float TVG_dB;
1221 float beamAngleReRx_deg;
1222 float beamAngleCorrection_deg;
1223 float twoWayTravelTime_sec;
1224 float twoWayTravelTimeCorrection_sec;
1229 float deltaLatitude_deg;
1231 float deltaLongitude_deg;
1233 float z_reRefPoint_m;
1235 float y_reRefPoint_m;
1237 float x_reRefPoint_m;
1240 float beamIncAngleAdj_deg;
1241 uint16_t realTimeCleanInfo;
1246 uint16_t SIstartRange_samples;
1247 uint16_t SIcentreSample;
1248 uint16_t SInumSamples;
1250 };
1251
1252 typedef struct EMdgmMRZ_sounding_def EMdgmMRZ_sounding, *pEMdgmMRZ_sounding;
1253
1256 struct EMdgmMRZ_extraSI_def
1257 {
1258
1259 uint16_t portStartRange_samples;
1260 uint16_t numPortSamples;
1261 int16_t portSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP];
1262 uint16_t starbStartRange_samples;
1263 uint16_t numStarbSamples;
1264 int16_t starbSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP];
1266 };
1267
1268 typedef struct EMdgmMRZ_extraSI_def EMdgmMRZ_extraSI, *pEMdgmMRZ_extraSI;
1269
1284 struct EMdgmMRZ_def
1285 {
1286 struct EMdgmHeader_def header;
1287 struct EMdgmMpartition_def partition;
1288 struct EMdgmMbody_def cmnPart;
1289 struct EMdgmMRZ_pingInfo_def pingInfo;
1290 struct EMdgmMRZ_txSectorInfo_def sectorInfo[MAX_NUM_TX_PULSES];
1291 struct EMdgmMRZ_rxInfo_def rxInfo;
1292 struct EMdgmMRZ_extraDetClassInfo_def extraDetClassInfo[MAX_EXTRA_DET_CLASSES];
1293 struct EMdgmMRZ_sounding_def sounding[MAX_NUM_BEAMS+MAX_EXTRA_DET];
1294 int16_t SIsample_desidB[MAX_SIDESCAN_SAMP];
1302 };
1303
1304 #define MRZ_VERSION 0
1305 typedef struct EMdgmMRZ_def EMdgmMRZ, *pEMdgmMRZ;
1306
1307 /************************************
1308 #MWC - water column datagram
1309 ************************************/
1311 struct EMdgmMWCtxInfo_def
1312 {
1313 uint16_t numBytesTxInfo;
1314 uint16_t numTxSectors;
1316 uint16_t numBytesPerTxSector;
1317 int16_t padding;
1318 float heave_m;
1319 };
1320
1321 typedef struct EMdgmMWCtxInfo_def EMdgmMWCtxInfo, *pEMdgmMWCtxInfo;
1322
1324 struct EMdgmMWCtxSectorData_def
1325 {
1326 float tiltAngleReTx_deg;
1327 float centreFreq_Hz;
1328 float txBeamWidthAlong_deg;
1329 uint16_t txSectorNum;
1330 int16_t padding;
1331 };
1332
1333 typedef struct EMdgmMWCtxSectorData_def EMdgmMWCtxSectorData, *pEMdgmMWCtxSectorData;
1334
1336 struct EMdgmMWCrxInfo_def
1337 {
1338 uint16_t numBytesRxInfo;
1339 uint16_t numBeams;
1340 uint8_t numBytesPerBeamEntry;
1342 uint8_t phaseFlag;
1343 uint8_t TVGfunctionApplied;
1345 int8_t TVGoffset_dB;
1347 float sampleFreq_Hz;
1348 float soundVelocity_mPerSec;
1350 };
1351
1352 typedef struct EMdgmMWCrxInfo_def EMdgmMWCrxInfo, *pEMdgmMWCrxInfo;
1353
1355 struct EMdgmMWCrxBeamData_def
1356 {
1357 float beamPointAngReVertical_deg;
1358 uint16_t startRangeSampleNum;
1359 float detectedRangeInSamples;
1361 uint16_t beamTxSectorNum;
1362 uint16_t numSampleData;
1363 int8_t *sampleAmplitude05dB_p;
1364 };
1365
1366 typedef struct EMdgmMWCrxBeamData_def EMdgmMWCrxBeamData, *pEMdgmMWCrxBeamData;
1367
1369 struct EMdgmMWCrxBeamPhase1_def
1370 {
1371 int8_t rxBeamPhase;
1372 };
1373
1374 typedef struct EMdgmMWCrxBeamPhase1_def EMdgmMWCrxBeamPhase1, *pEMdgmMWCrxBeamPhase1;
1375
1377 struct EMdgmMWCrxBeamPhase2_def
1378 {
1379 int16_t rxBeamPhase;
1380 };
1381
1382 typedef struct EMdgmMWCrxBeamPhase2_def EMdgmMWCrxBeamPhase2, *pEMdgmMWCrxBeamPhase2;
1383
1385 struct EMdgmMWC_def
1386 {
1387 struct EMdgmHeader_def header;
1388 struct EMdgmMpartition_def partition;
1389 struct EMdgmMbody_def cmnPart;
1390 struct EMdgmMWCtxInfo_def txInfo;
1391 struct EMdgmMWCtxSectorData_def sectorData[MAX_NUM_TX_PULSES];
1392 struct EMdgmMWCrxInfo_def rxInfo;
1393 struct EMdgmMWCrxBeamData_def *beamData_p;
1406 };
1407
1408 #define MWC_VERSION 0
1409 typedef struct EMdgmMWC_def EMdgmMWC, *pEMdgmMWC;
1410
1411
1412
1413
1414 /*********************************************
1415
1416 Compatibility datagrams for .all to .kmall conversion support
1417
1418 *********************************************/
1419
1420 /************************************
1421 #CPO - Compatibility position sensor data
1422 ************************************/
1427 struct EMdgmCPOdataBlock_def
1428 {
1429 uint32_t timeFromSensor_sec;
1430 uint32_t timeFromSensor_nanosec;
1431 float posFixQuality_m;
1432 double correctedLat_deg;
1433 double correctedLong_deg;
1434 float speedOverGround_mPerSec;
1435 float courseOverGround_deg;
1436 float ellipsoidHeightReRefPoint_m;
1437 int8_t posDataFromSensor[MAX_CPO_DATALENGTH];
1438 };
1439
1440 typedef struct EMdgmCPOdataBlock_def EMdgmCPOdataBlock, *pEMdgmCPOdataBlock;
1441
1448 struct EMdgmCPO_def
1449 {
1450 struct EMdgmHeader_def header;
1451 struct EMdgmScommon_def cmnPart;
1452 struct EMdgmCPOdataBlock_def sensorData;
1453 };
1454
1455 #define CPO_VERSION 0
1456 typedef struct EMdgmCPO_def EMdgmCPO, *pEMdgmCPO;
1457
1458
1459 /************************************
1460 #CHE - Compatibility heave data
1461 ************************************/
1465 struct EMdgmCHEdata_def
1466 {
1467 float heave_m;
1468 };
1469
1470 typedef struct EMdgmCHEdata_def EMdgmCHEdata, *pEMdgmCHEdata;
1471
1478 struct EMdgmCHE_def
1479 {
1480 struct EMdgmHeader_def header;
1481 struct EMdgmMbody_def cmnPart;
1482 struct EMdgmCHEdata_def data;
1483 };
1484
1485 #define CHE_VERSION 0
1486 typedef struct EMdgmCHE_def EMdgmCHE, *pEMdgmCHE;
1487
1488
1489 /*********************************************
1490
1491 Installation and runtime datagrams
1492
1493 *********************************************/
1494
1495 /************************************
1496 #IIP - Info Installation PU
1497 ************************************/
1502 struct EMdgmIIP_def
1503 {
1504 EMdgmHeader header;
1505 uint16_t numBytesCmnPart;
1506 uint16_t info;
1507 uint16_t status;
1508 uint8_t install_txt;
1512 };
1513
1514 #define IIP_VERSION 0
1515 typedef struct EMdgmIIP_def dgm_IIP, *pdgm_IIP;
1516
1517
1518 /************************************
1519 #IOP - Runtime datagram
1520 ************************************/
1528 struct EMdgmIOP_def
1529 {
1530 EMdgmHeader header;
1531 uint16_t numBytesCmnPart;
1532 uint16_t info;
1533 uint16_t status;
1534 uint8_t runtime_txt;
1540 };
1541
1542 #define IOP_VERSION 0
1543 typedef struct EMdgmIOP_def dgm_IOP, *pdgm_IOP;
1544
1545
1546 /************************************
1547 #IB - BIST Error Datagrams
1548 ************************************/
1553 struct EMdgmIB_def
1554 {
1555 EMdgmHeader header;
1556 uint16_t numBytesCmnPart;
1557 uint8_t BISTInfo;
1558 uint8_t BISTStyle;
1559 uint8_t BISTNumber;
1560 int8_t BISTStatus;
1561 uint8_t BISTText;
1562 };
1563
1564 #define BIST_VERSION 0
1565 typedef struct EMdgmIB_def dgm_IB, *pdgm_IB;
1566
1567 #ifndef _VXW
1568 #pragma pack()
1569 #endif
1570 #endif
KMbinary_def::pitchError_deg
float pitchError_deg
Definition: EMdgmFormat.h:596
EMdgmMRZ_pingInfo_def::latLongInfo
uint8_t latLongInfo
Definition: EMdgmFormat.h:1083
KMbinary_def::yawRate
float yawRate
Definition: EMdgmFormat.h:580
EMdgmSVPpoint_def::temp_C
float temp_C
Definition: EMdgmFormat.h:664
EMdgmSKMinfo_def::sensorSystem
uint8_t sensorSystem
Definition: EMdgmFormat.h:459
EMdgmMRZ_pingInfo_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:1089
EMdgmIB_def::BISTNumber
uint8_t BISTNumber
Definition: EMdgmFormat.h:1559
EMdgmMRZ_extraSI_def::starbSIsample_desidB
int16_t starbSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP]
Definition: EMdgmFormat.h:1264
EMdgmIB_def::BISTText
uint8_t BISTText
Definition: EMdgmFormat.h:1561
EMdgmMRZ_txSectorInfo_def::signalBandWidth_Hz
float signalBandWidth_Hz
Definition: EMdgmFormat.h:1114
EMdgmCPOdataBlock_def::courseOverGround_deg
float courseOverGround_deg
Definition: EMdgmFormat.h:1435
KMbinary_def::ellipsoidHeightError_m
float ellipsoidHeightError_m
Definition: EMdgmFormat.h:594
EMdgmMWCrxBeamData_def
#MWC - data block 2: receiver, specific info for each beam.
Definition: EMdgmFormat.h:1355
EMdgmMRZ_pingInfo_def::txTransducerDepth_m
float txTransducerDepth_m
Definition: EMdgmFormat.h:1078
EMdgmMWCtxInfo_def::numBytesPerTxSector
uint16_t numBytesPerTxSector
Definition: EMdgmFormat.h:1316
EMdgmSVTsample_def
#SVT - Sound Velocity at Transducer. Data sample.
Definition: EMdgmFormat.h:756
EMdgmMRZ_rxInfo_def::BSoblique_dB
float BSoblique_dB
Definition: EMdgmFormat.h:1137
EMdgmMRZ_txSectorInfo_def
#MRZ - sector information.
Definition: EMdgmFormat.h:1101
EMdgmMWCrxInfo_def::numBytesRxInfo
uint16_t numBytesRxInfo
Definition: EMdgmFormat.h:1338
EMdgmSPOdataBlock_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:428
EMdgmMWCrxBeamPhase1_def::rxBeamPhase
int8_t rxBeamPhase
Definition: EMdgmFormat.h:1371
EMdgmMpartition_def::numOfDgms
uint16_t numOfDgms
Definition: EMdgmFormat.h:889
EMdgmSPOdataBlock_def::courseOverGround_deg
float courseOverGround_deg
Definition: EMdgmFormat.h:427
EMdgmMRZ_pingInfo_def::maxEffTxBandWidth_Hz
float maxEffTxBandWidth_Hz
Definition: EMdgmFormat.h:1015
MAX_SVT_SAMPLES
#define MAX_SVT_SAMPLES
Definition: EMdgmFormat.h:267
EMdgmCPOdataBlock_def::ellipsoidHeightReRefPoint_m
float ellipsoidHeightReRefPoint_m
Definition: EMdgmFormat.h:1436
EMdgmSVP_def::sensorFormat
uint8_t sensorFormat[4]
Definition: EMdgmFormat.h:681
EMdgmSVP_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:684
EMdgmSVPpoint_def
#SVP - Sound Velocity Profile. Data from one depth point contains information specified in this struc...
Definition: EMdgmFormat.h:659
MAX_SHI_DATALENGTH
#define MAX_SHI_DATALENGTH
Definition: EMdgmFormat.h:278
EMdgmMWCtxSectorData_def
#MWC - data block 1: transmit sector data, loop for all i = numTxSectors.
Definition: EMdgmFormat.h:1324
KMbinary_def::downAcceleration
float downAcceleration
Definition: EMdgmFormat.h:605
EMdgmMbody_def::rxFansPerPing
uint8_t rxFansPerPing
Definition: EMdgmFormat.h:937
EMdgmSCLdataFromSensor_def
Part of clock datagram giving offsets and the raw input in text format.
Definition: EMdgmFormat.h:787
MAX_SIDESCAN_EXTRA_SAMP
#define MAX_SIDESCAN_EXTRA_SAMP
Definition: EMdgmFormat.h:263
EMdgmHeader_def::dgmType
uint8_t dgmType[4]
Definition: EMdgmFormat.h:333
EMdgmIIP_def::install_txt
uint8_t install_txt
Definition: EMdgmFormat.h:1508
EMdgmMRZ_txSectorInfo_def::txArrNumber
uint8_t txArrNumber
Definition: EMdgmFormat.h:1104
EMdgmIOP_def::runtime_txt
uint8_t runtime_txt
Definition: EMdgmFormat.h:1534
EMdgmSKMinfo_def
Sensor (S) output datagram - info of KMB datagrams.
Definition: EMdgmFormat.h:456
EMdgmSKMinfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:489
EMdgmSVTsample_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:760
EMdgmMRZ_sounding_def::deltaLatitude_deg
float deltaLatitude_deg
Definition: EMdgmFormat.h:1229
MAX_SDE_DATALENGTH
#define MAX_SDE_DATALENGTH
Definition: EMdgmFormat.h:277
EMdgmMRZ_rxInfo_def::numBytesPerSounding
uint16_t numBytesPerSounding
Definition: EMdgmFormat.h:1133
EMdgmScommon_def::sensorSystem
uint16_t sensorSystem
Definition: EMdgmFormat.h:354
EMdgmMRZ_extraSI_def::numPortSamples
uint16_t numPortSamples
Definition: EMdgmFormat.h:1260
EMdgmSKMinfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:458
EMdgmMRZ_sounding_def::z_reRefPoint_m
float z_reRefPoint_m
Definition: EMdgmFormat.h:1233
EMdgmMRZ_rxInfo_def::extraDetectionAlarmFlag
uint16_t extraDetectionAlarmFlag
Definition: EMdgmFormat.h:1138
EMdgmCHE_def
#CHE - Struct of compatibility heave sensor datagram. Used for backward compatibility with ...
Definition: EMdgmFormat.h:1478
EMdgmMRZ_pingInfo_def::pingRate_Hz
float pingRate_Hz
Definition: EMdgmFormat.h:966
EMdgmMbody_def::rxTransducerInd
uint8_t rxTransducerInd
Definition: EMdgmFormat.h:943
EMdgmIOP_def::status
uint16_t status
Definition: EMdgmFormat.h:1533
EMdgmSdataInfo_def::numBytesRawSensorData
uint16_t numBytesRawSensorData
Definition: EMdgmFormat.h:406
EMdgmSVP_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:686
EMdgmMRZ_sounding_def::postProcessingInfo
uint8_t postProcessingInfo
Definition: EMdgmFormat.h:1181
EMdgmMRZ_sounding_def::detectionMethod
uint8_t detectionMethod
Definition: EMdgmFormat.h:1178
EMdgmMRZ_sounding_def::beamAngleCorrection_deg
float beamAngleCorrection_deg
Definition: EMdgmFormat.h:1222
EMdgmMRZ_pingInfo_def::soundSpeedAtTxDepth_mPerSec
float soundSpeedAtTxDepth_mPerSec
Definition: EMdgmFormat.h:1077
EMdgmMRZ_txSectorInfo_def::signalWaveForm
uint8_t signalWaveForm
Definition: EMdgmFormat.h:1117
EMdgmMRZ_sounding_def::deltaLongitude_deg
float deltaLongitude_deg
Definition: EMdgmFormat.h:1231
EMdgmMRZ_def::SIsample_desidB
int16_t SIsample_desidB[MAX_SIDESCAN_SAMP]
Definition: EMdgmFormat.h:1294
KMbinary_def::eastAcceleration
float eastAcceleration
Definition: EMdgmFormat.h:604
EMdgmMRZ_sounding_def::reflectivity1_dB
float reflectivity1_dB
Definition: EMdgmFormat.h:1203
EMdgmHeader_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:337
EMdgmMRZ_rxInfo_def::numBytesRxInfo
uint16_t numBytesRxInfo
Definition: EMdgmFormat.h:1130
EMdgmMWCtxInfo_def::numBytesTxInfo
uint16_t numBytesTxInfo
Definition: EMdgmFormat.h:1313
EMdgmMRZ_pingInfo_def::absCoeff_dBPerkm
float absCoeff_dBPerkm
Definition: EMdgmFormat.h:1016
EMdgmMRZ_extraDetClassInfo_def::numExtraDetInClass
uint16_t numExtraDetInClass
Definition: EMdgmFormat.h:1153
EMdgmMbody_def
Multibeam (M) datagrams - body part. Start of body of all M datagrams.
Definition: EMdgmFormat.h:932
EMdgmMWCrxBeamPhase2_def::rxBeamPhase
int16_t rxBeamPhase
Definition: EMdgmFormat.h:1379
EMdgmCPOdataBlock_def::posDataFromSensor
int8_t posDataFromSensor[MAX_CPO_DATALENGTH]
Definition: EMdgmFormat.h:1437
KMbinary_def::dgmType
uint8_t dgmType[4]
Definition: EMdgmFormat.h:522
EMdgmSKMinfo_def::sensorStatus
uint8_t sensorStatus
Definition: EMdgmFormat.h:460
EMdgmMRZ_pingInfo_def::runtimeFilter2
uint16_t runtimeFilter2
Definition: EMdgmFormat.h:1048
EMdgmSDEdataFromSensor_def
Part of depth datagram giving depth as used, offsets, scale factor and data as received from sensor (...
Definition: EMdgmFormat.h:819
EMdgmMWCtxInfo_def::numTxSectors
uint16_t numTxSectors
Definition: EMdgmFormat.h:1314
EMdgmMRZ_pingInfo_def::y_kmallToall_m
float y_kmallToall_m
Definition: EMdgmFormat.h:1081
EMdgmMRZ_pingInfo_def::portMeanCov_m
int16_t portMeanCov_m
Definition: EMdgmFormat.h:1022
EMdgmIB_def::BISTInfo
uint8_t BISTInfo
Definition: EMdgmFormat.h:1557
EMdgmMWCtxInfo_def::padding
int16_t padding
Definition: EMdgmFormat.h:1317
KMbinary_def::rollRate
float rollRate
Definition: EMdgmFormat.h:578
EMdgmMWCrxBeamData_def::numSampleData
uint16_t numSampleData
Definition: EMdgmFormat.h:1362
EMdgmMRZ_rxInfo_def::WCSampleRate
float WCSampleRate
Definition: EMdgmFormat.h:1134
EMdgmMRZ_txSectorInfo_def::sectorTransmitDelay_sec
float sectorTransmitDelay_sec
Definition: EMdgmFormat.h:1108
EMdgmMRZ_pingInfo_def::modeAndStabilisation
uint8_t modeAndStabilisation
Definition: EMdgmFormat.h:1025
EMdgmMbody_def::pingCnt
uint16_t pingCnt
Definition: EMdgmFormat.h:935
EMdgmMRZ_rxInfo_def::BSnormal_dB
float BSnormal_dB
Definition: EMdgmFormat.h:1136
EMdgmMRZ_sounding_def::detectionConfidenceLevel
uint8_t detectionConfidenceLevel
Definition: EMdgmFormat.h:1183
EMdgmMRZ_rxInfo_def::numBytesPerClass
uint16_t numBytesPerClass
Definition: EMdgmFormat.h:1141
EMdgmMWCtxInfo_def::heave_m
float heave_m
Definition: EMdgmFormat.h:1318
EMdgmMpartition_def::dgmNum
uint16_t dgmNum
Definition: EMdgmFormat.h:890
EMdgmHeader_def::systemID
uint8_t systemID
Definition: EMdgmFormat.h:335
KMbinary_def::velEast
float velEast
Definition: EMdgmFormat.h:586
EMdgmMRZ_sounding_def::qualityFactor
float qualityFactor
Definition: EMdgmFormat.h:1186
EMdgmSVTinfo_def
Part of Sound Velocity at Transducer datagram.
Definition: EMdgmFormat.h:704
EMdgmCPOdataBlock_def
#CPO - Compatibility sensor position compatibility data block. Data from active sensor is referenced ...
Definition: EMdgmFormat.h:1427
EMdgmMRZ_extraSI_def::starbStartRange_samples
uint16_t starbStartRange_samples
Definition: EMdgmFormat.h:1262
EMdgmMRZ_pingInfo_def::frequencyMode_Hz
float frequencyMode_Hz
Definition: EMdgmFormat.h:993
EMdgmMRZ_pingInfo_def::receiveArraySizeUsed_deg
float receiveArraySizeUsed_deg
Definition: EMdgmFormat.h:1060
EMdgmMRZ_rxInfo_def::seabedImageSampleRate
float seabedImageSampleRate
Definition: EMdgmFormat.h:1135
EMdgmSDE_def
#SDE - Depth datagram.
Definition: EMdgmFormat.h:836
EMdgmMRZ_pingInfo_def::maxEffTxPulseLength_sec
float maxEffTxPulseLength_sec
Definition: EMdgmFormat.h:1014
EMdgmMRZ_pingInfo_def::portSectorEdge_deg
float portSectorEdge_deg
Definition: EMdgmFormat.h:1018
EMdgmCHEdata_def::heave_m
float heave_m
Definition: EMdgmFormat.h:1467
EMdgmSVTinfo_def::soundVelocity_mPerSec_offset
float soundVelocity_mPerSec_offset
Definition: EMdgmFormat.h:750
EMdgmMRZ_sounding_def::TVG_dB
float TVG_dB
Definition: EMdgmFormat.h:1216
EMdgmSVP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:678
EMdgmMRZ_extraDetClassInfo_def
#MRZ - Extra detection class information.
Definition: EMdgmFormat.h:1151
EMdgmMRZ_extraSI_def::portStartRange_samples
uint16_t portStartRange_samples
Definition: EMdgmFormat.h:1259
EMdgmMRZ_sounding_def::twoWayTravelTimeCorrection_sec
float twoWayTravelTimeCorrection_sec
Definition: EMdgmFormat.h:1224
EMdgmSKMinfo_def::sensorInputFormat
uint16_t sensorInputFormat
Definition: EMdgmFormat.h:476
KMdelayedHeave_def::delayedHeave_m
float delayedHeave_m
Definition: EMdgmFormat.h:617
EMdgmCPOdataBlock_def::correctedLat_deg
double correctedLat_deg
Definition: EMdgmFormat.h:1432
EMdgmMRZ_pingInfo_def::pipeTrackingStatus
uint32_t pipeTrackingStatus
Definition: EMdgmFormat.h:1058
EMdgmMbody_def::swathAlongPosition
uint8_t swathAlongPosition
Definition: EMdgmFormat.h:941
MAX_ATT_SAMPLES
#define MAX_ATT_SAMPLES
Definition: EMdgmFormat.h:265
EMdgmMRZ_sounding_def::padding
uint16_t padding
Definition: EMdgmFormat.h:1184
EMdgmMRZ_pingInfo_def::SLrampUpTimeRemaining
uint16_t SLrampUpTimeRemaining
Definition: EMdgmFormat.h:1062
EMdgmMWCrxInfo_def::phaseFlag
uint8_t phaseFlag
Definition: EMdgmFormat.h:1342
EMdgmHeader_def::numBytesDgm
uint32_t numBytesDgm
Definition: EMdgmFormat.h:332
EMdgmHeader_def::dgmVersion
uint8_t dgmVersion
Definition: EMdgmFormat.h:334
EMdgmIIP_def::info
uint16_t info
Definition: EMdgmFormat.h:1506
KMbinary_def::velDown
float velDown
Definition: EMdgmFormat.h:587
EMdgmSPOdataBlock_def::correctedLat_deg
double correctedLat_deg
Definition: EMdgmFormat.h:424
EMdgmSVPpoint_def::salinity
float salinity
Definition: EMdgmFormat.h:665
EMdgmSVTinfo_def::sensorInputFormat
uint16_t sensorInputFormat
Definition: EMdgmFormat.h:722
EMdgmIB_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1556
EMdgmSVTsample_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:758
KMbinary_def::status
uint32_t status
Definition: EMdgmFormat.h:529
EMdgmMRZ_extraDetClassInfo_def::alarmFlag
uint8_t alarmFlag
Definition: EMdgmFormat.h:1155
EMdgmSKMsample_def
#SKM - all available data.
Definition: EMdgmFormat.h:624
EMdgmMRZ_txSectorInfo_def::txNominalSourceLevel_dB
float txNominalSourceLevel_dB
Definition: EMdgmFormat.h:1111
EMdgmMRZ_sounding_def::SIstartRange_samples
uint16_t SIstartRange_samples
Definition: EMdgmFormat.h:1246
EMdgmCPOdataBlock_def::speedOverGround_mPerSec
float speedOverGround_mPerSec
Definition: EMdgmFormat.h:1434
EMdgmMRZ_pingInfo_def::pulseForm
uint8_t pulseForm
Definition: EMdgmFormat.h:990
KMbinary_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:527
EMdgmMRZ_pingInfo_def::starbMeanCov_deg
float starbMeanCov_deg
Definition: EMdgmFormat.h:1021
EMdgmSDEdataFromSensor_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:826
EMdgmMWCrxBeamData_def::sampleAmplitude05dB_p
int8_t * sampleAmplitude05dB_p
Definition: EMdgmFormat.h:1363
EMdgmMRZ_pingInfo_def::posSensorStatus
uint8_t posSensorStatus
Definition: EMdgmFormat.h:1084
EMdgmSPOdataBlock_def::speedOverGround_mPerSec
float speedOverGround_mPerSec
Definition: EMdgmFormat.h:426
KMbinary_def::headingError_deg
float headingError_deg
Definition: EMdgmFormat.h:597
EMdgmSVTsample_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:759
EMdgmMRZ_pingInfo_def::detectionMode
uint8_t detectionMode
Definition: EMdgmFormat.h:989
EMdgmSPOdataBlock_def::timeFromSensor_sec
uint32_t timeFromSensor_sec
Definition: EMdgmFormat.h:421
EMdgmMWCtxSectorData_def::txBeamWidthAlong_deg
float txBeamWidthAlong_deg
Definition: EMdgmFormat.h:1328
EMdgmSDEdataFromSensor_def::depthUsed_m
float depthUsed_m
Definition: EMdgmFormat.h:821
EMdgmSVT_def
#SVT - Sound Velocity at Transducer. Data for sound velocity and temperature are measured directely o...
Definition: EMdgmFormat.h:771
EMdgmMRZ_sounding_def::reflectivity2_dB
float reflectivity2_dB
Definition: EMdgmFormat.h:1204
MAX_NUM_BEAMS
#define MAX_NUM_BEAMS
Definition: EMdgmFormat.h:259
EMdgmMRZ_sounding_def::detectionType
uint8_t detectionType
Definition: EMdgmFormat.h:1176
EMdgmScommon_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:353
KMbinary_def::latitudeError_m
float latitudeError_m
Definition: EMdgmFormat.h:592
EMdgmMWCrxInfo_def::sampleFreq_Hz
float sampleFreq_Hz
Definition: EMdgmFormat.h:1347
EMdgmCPOdataBlock_def::timeFromSensor_sec
uint32_t timeFromSensor_sec
Definition: EMdgmFormat.h:1429
EMdgmCHEdata_def
#CHE - Heave compatibility data part. Heave reference point is at transducer instead of at vessel ref...
Definition: EMdgmFormat.h:1465
EMdgmSPOdataBlock_def::timeFromSensor_nanosec
uint32_t timeFromSensor_nanosec
Definition: EMdgmFormat.h:422
EMdgmMRZ_txSectorInfo_def::totalSignalLength_sec
float totalSignalLength_sec
Definition: EMdgmFormat.h:1115
EMdgmMRZ_pingInfo_def::subDepthMode
uint8_t subDepthMode
Definition: EMdgmFormat.h:984
EMdgmSKMinfo_def::sensorDataContents
uint16_t sensorDataContents
Definition: EMdgmFormat.h:491
EMdgmSVTsample_def::salinity
float salinity
Definition: EMdgmFormat.h:763
EMdgmMRZ_pingInfo_def::depthMode
uint8_t depthMode
Definition: EMdgmFormat.h:968
EMdgmMRZ_pingInfo_def::numBytesInfoData
uint16_t numBytesInfoData
Definition: EMdgmFormat.h:961
EMdgmMRZ_pingInfo_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:1087
EMdgmCPOdataBlock_def::timeFromSensor_nanosec
uint32_t timeFromSensor_nanosec
Definition: EMdgmFormat.h:1430
EMdgmMRZ_sounding_def::txSectorNumb
uint8_t txSectorNumb
Definition: EMdgmFormat.h:1172
EMdgmSHIdataFromSensor_def::heigthUsed_m
float heigthUsed_m
Definition: EMdgmFormat.h:855
MAX_CPO_DATALENGTH
#define MAX_CPO_DATALENGTH
Definition: EMdgmFormat.h:280
EMdgmMRZ_extraSI_def
#MRZ - Extra seabed image samples.
Definition: EMdgmFormat.h:1256
EMdgmMRZ_pingInfo_def::runtimeFilter1
uint8_t runtimeFilter1
Definition: EMdgmFormat.h:1037
EMdgmMRZ_sounding_def::y_reRefPoint_m
float y_reRefPoint_m
Definition: EMdgmFormat.h:1235
EMdgmMbody_def::algorithmType
uint8_t algorithmType
Definition: EMdgmFormat.h:945
EMdgmSDEdataFromSensor_def::scale
float scale
Definition: EMdgmFormat.h:823
EMdgmMbody_def::rxFanIndex
uint8_t rxFanIndex
Definition: EMdgmFormat.h:939
EMdgmSdataInfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:405
EMdgmIIP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1505
EMdgmMWC_def
#MWC - Multibeam Water Column Datagram. Entire datagram containing several sub structs.
Definition: EMdgmFormat.h:1385
EMdgmMRZ_sounding_def::echoLength_sec
float echoLength_sec
Definition: EMdgmFormat.h:1190
EMdgmMRZ_txSectorInfo_def::txSubArray
uint8_t txSubArray
Definition: EMdgmFormat.h:1105
EMdgmSCL_def
#SCL - CLock datagram.
Definition: EMdgmFormat.h:802
EMdgmMRZ_txSectorInfo_def::txFocusRange_m
float txFocusRange_m
Definition: EMdgmFormat.h:1112
EMdgmMRZ_pingInfo_def::transmitPower_dB
float transmitPower_dB
Definition: EMdgmFormat.h:1061
EMdgmIOP_def::info
uint16_t info
Definition: EMdgmFormat.h:1532
EMdgmMRZ_sounding_def::SIcentreSample
uint16_t SIcentreSample
Definition: EMdgmFormat.h:1247
EMdgmMRZ_extraSI_def::numStarbSamples
uint16_t numStarbSamples
Definition: EMdgmFormat.h:1263
MAX_SVP_POINTS
#define MAX_SVP_POINTS
Definition: EMdgmFormat.h:266
EMdgmMRZ_pingInfo_def::z_waterLevelReRefPoint_m
float z_waterLevelReRefPoint_m
Definition: EMdgmFormat.h:1079
EMdgmMWCtxSectorData_def::centreFreq_Hz
float centreFreq_Hz
Definition: EMdgmFormat.h:1327
EMdgmMRZ_extraSI_def::portSIsample_desidB
int16_t portSIsample_desidB[MAX_SIDESCAN_EXTRA_SAMP]
Definition: EMdgmFormat.h:1261
MAX_EXTRA_DET_CLASSES
#define MAX_EXTRA_DET_CLASSES
Definition: EMdgmFormat.h:261
EMdgmSCLdataFromSensor_def::dataFromSensor
uint8_t dataFromSensor[MAX_SCL_DATALENGTH]
Definition: EMdgmFormat.h:793
EMdgmMRZ_pingInfo_def::numTxSectors
uint16_t numTxSectors
Definition: EMdgmFormat.h:1070
EMdgmSKMinfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:490
EMdgmMRZ_pingInfo_def::padding0
uint16_t padding0
Definition: EMdgmFormat.h:962
EMdgmIB_def
#IB - Results from online built in test (BIST). Definition used for three different BIST datagrams...
Definition: EMdgmFormat.h:1553
EMdgmMWCrxBeamData_def::detectedRangeInSamples
float detectedRangeInSamples
Definition: EMdgmFormat.h:1359
EMdgmMRZ_sounding_def::twoWayTravelTime_sec
float twoWayTravelTime_sec
Definition: EMdgmFormat.h:1223
EMdgmMRZ_sounding_def::detectionWindowLength_sec
float detectionWindowLength_sec
Definition: EMdgmFormat.h:1189
EMdgmHeader_def::time_nanosec
uint32_t time_nanosec
Definition: EMdgmFormat.h:338
KMbinary_def
#SKM - Sensor attitude data block. Data given timestamped, not corrected.
Definition: EMdgmFormat.h:520
EMdgmMWCrxInfo_def::TVGoffset_dB
int8_t TVGoffset_dB
Definition: EMdgmFormat.h:1345
KMbinary_def::heaveError_m
float heaveError_m
Definition: EMdgmFormat.h:598
EMdgmMRZ_sounding_def::WCrange_samples
uint16_t WCrange_samples
Definition: EMdgmFormat.h:1196
EMdgmMRZ_pingInfo_def::starbMeanCov_m
int16_t starbMeanCov_m
Definition: EMdgmFormat.h:1023
EMdgmMRZ_pingInfo_def::portMeanCov_deg
float portMeanCov_deg
Definition: EMdgmFormat.h:1020
EMdgmMbody_def::txTransducerInd
uint8_t txTransducerInd
Definition: EMdgmFormat.h:942
EMdgmMRZ_def
#MRZ - Multibeam Raw Range and Depth datagram. The datagram also contains seabed image data...
Definition: EMdgmFormat.h:1284
EMdgmIOP_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:1531
MAX_SCL_DATALENGTH
#define MAX_SCL_DATALENGTH
Definition: EMdgmFormat.h:276
KMbinary_def::ellipsoidHeight_m
float ellipsoidHeight_m
Definition: EMdgmFormat.h:566
EMdgmMRZ_txSectorInfo_def::pulseShading
uint8_t pulseShading
Definition: EMdgmFormat.h:1116
EMdgmSPOdataBlock_def::posDataFromSensor
int8_t posDataFromSensor[MAX_SPO_DATALENGTH]
Definition: EMdgmFormat.h:429
EMdgmMbody_def::swathsPerPing
uint8_t swathsPerPing
Definition: EMdgmFormat.h:940
EMdgmMRZ_txSectorInfo_def::txSectorNumb
uint8_t txSectorNumb
Definition: EMdgmFormat.h:1103
EMdgmMRZ_sounding_def::detectionUncertaintyVer_m
float detectionUncertaintyVer_m
Definition: EMdgmFormat.h:1187
EMdgmMRZ_pingInfo_def::headingVessel_deg
float headingVessel_deg
Definition: EMdgmFormat.h:1076
EMdgmMRZ_pingInfo_def::padding2
uint16_t padding2
Definition: EMdgmFormat.h:1063
EMdgmMRZ_sounding_def::meanAbsCoeff_dBPerkm
float meanAbsCoeff_dBPerkm
Definition: EMdgmFormat.h:1202
MAX_SPO_DATALENGTH
#define MAX_SPO_DATALENGTH
Definition: EMdgmFormat.h:273
MAX_NUM_TX_PULSES
#define MAX_NUM_TX_PULSES
Definition: EMdgmFormat.h:264
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:675
EMdgmIIP_def
Definition of #IIP datagram containing installation parameters and sensor format settings. Details in separate document Installation parameters
Definition: EMdgmFormat.h:1502
EMdgmSVPpoint_def::depth_m
float depth_m
Definition: EMdgmFormat.h:661
EMdgmSVTinfo_def::numBytesPerSample
uint16_t numBytesPerSample
Definition: EMdgmFormat.h:735
EMdgmSDEdataFromSensor_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:824
EMdgmSHIdataFromSensor_def
Part of Height datagram, giving corrected and uncorrected data as received from sensor.
Definition: EMdgmFormat.h:852
EMdgmMRZ_pingInfo_def::distanceBtwSwath
uint8_t distanceBtwSwath
Definition: EMdgmFormat.h:985
EMdgmMWCrxBeamPhase1_def
#MWC - Beam sample phase info, specific for each beam and water column sample. numBeams * numSampleDa...
Definition: EMdgmFormat.h:1369
EMdgmIB_def::BISTStatus
int8_t BISTStatus
Definition: EMdgmFormat.h:1560
EMdgmSVP_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:688
EMdgmMRZ_sounding_def::beamIncAngleAdj_deg
float beamIncAngleAdj_deg
Definition: EMdgmFormat.h:1240
EMdgmMRZ_txSectorInfo_def::centreFreq_Hz
float centreFreq_Hz
Definition: EMdgmFormat.h:1113
EMdgmMRZ_sounding_def::detectionUncertaintyHor_m
float detectionUncertaintyHor_m
Definition: EMdgmFormat.h:1188
EMdgmSVTsample_def::temp_C
float temp_C
Definition: EMdgmFormat.h:761
EMdgmSPO_def
#SPO - Struct of position sensor datagram. Data from active sensor will be motion corrected if in...
Definition: EMdgmFormat.h:440
EMdgmSVTinfo_def::filterTime_sec
float filterTime_sec
Definition: EMdgmFormat.h:749
EMdgmCPO_def
#CPO - Struct of compatibility position sensor datagram. Data from active sensor will be motion c...
Definition: EMdgmFormat.h:1448
KMbinary_def::dgmVersion
uint16_t dgmVersion
Definition: EMdgmFormat.h:524
MAX_SIDESCAN_SAMP
#define MAX_SIDESCAN_SAMP
Definition: EMdgmFormat.h:262
EMdgmMWCrxInfo_def::numBeams
uint16_t numBeams
Definition: EMdgmFormat.h:1339
EMdgmMRZ_sounding_def
#MRZ - Data for each sounding, e.g. XYZ, reflectivity, two way travel time etc.
Definition: EMdgmFormat.h:1168
EMdgmMWCrxBeamPhase2_def
#MWC - Beam sample phase info, specific for each beam and water column sample. numBeams * numSampleDa...
Definition: EMdgmFormat.h:1377
EMdgmSKM_def
#SKM - data from attitude and attitude velocity sensors.
Definition: EMdgmFormat.h:641
EMdgmMpartition_def
Multibeam (M) datagrams - data partition information. General for all M datagrams.
Definition: EMdgmFormat.h:887
EMdgmMRZ_pingInfo_def::x_kmallToall_m
float x_kmallToall_m
Definition: EMdgmFormat.h:1080
EMdgmMWCtxInfo_def
#MWC - data block 1: transmit sectors, general info for all sectors
Definition: EMdgmFormat.h:1311
EMdgmSdataInfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:403
EMdgmMRZ_rxInfo_def::numExtraDetections
uint16_t numExtraDetections
Definition: EMdgmFormat.h:1139
KMbinary_def::velNorth
float velNorth
Definition: EMdgmFormat.h:585
EMdgmMRZ_extraDetClassInfo_def::padding
int8_t padding
Definition: EMdgmFormat.h:1154
EMdgmScommon_def
Sensor (S) output datagram - common part for all external sensors.
Definition: EMdgmFormat.h:351
EMdgmMRZ_sounding_def::SInumSamples
uint16_t SInumSamples
Definition: EMdgmFormat.h:1248
KMbinary_def::northAcceleration
float northAcceleration
Definition: EMdgmFormat.h:603
EMdgmMRZ_rxInfo_def::numSoundingsMaxMain
uint16_t numSoundingsMaxMain
Definition: EMdgmFormat.h:1131
EMdgmMRZ_pingInfo_def::yawAngle_deg
float yawAngle_deg
Definition: EMdgmFormat.h:1064
KMbinary_def::numBytesDgm
uint16_t numBytesDgm
Definition: EMdgmFormat.h:523
EMdgmSPOdataBlock_def::posFixQuality_m
float posFixQuality_m
Definition: EMdgmFormat.h:423
EMdgmMRZ_pingInfo_def::transmitArraySizeUsed_deg
float transmitArraySizeUsed_deg
Definition: EMdgmFormat.h:1059
EMdgmMRZ_sounding_def::rejectionInfo2
uint8_t rejectionInfo2
Definition: EMdgmFormat.h:1180
EMdgmSPOdataBlock_def
#SPO - Sensor position data block. Data from active sensor is corrected data for position system inst...
Definition: EMdgmFormat.h:419
KMbinary_def::roll_deg
float roll_deg
Definition: EMdgmFormat.h:570
EMdgmSVTinfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:734
EMdgmMWCtxSectorData_def::padding
int16_t padding
Definition: EMdgmFormat.h:1330
EMdgmMRZ_sounding_def::rangeFactor
float rangeFactor
Definition: EMdgmFormat.h:1185
EMdgmMRZ_pingInfo_def::maxTotalTxPulseLength_sec
float maxTotalTxPulseLength_sec
Definition: EMdgmFormat.h:1013
EMdgmMbody_def::numRxTransducers
uint8_t numRxTransducers
Definition: EMdgmFormat.h:944
EMdgmMWC_def::beamData_p
struct EMdgmMWCrxBeamData_def * beamData_p
Definition: EMdgmFormat.h:1393
EMdgmSdataInfo_def
Information of repeated sensor data in one datagram.
Definition: EMdgmFormat.h:401
EMdgmCPOdataBlock_def::posFixQuality_m
float posFixQuality_m
Definition: EMdgmFormat.h:1431
EMdgmMRZ_sounding_def::soundingIndex
uint16_t soundingIndex
Definition: EMdgmFormat.h:1171
KMbinary_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:565
EMdgmHeader_def::echoSounderID
uint16_t echoSounderID
Definition: EMdgmFormat.h:336
EMdgmIB_def::BISTStyle
uint8_t BISTStyle
Definition: EMdgmFormat.h:1558
EMdgmMbody_def::numBytesCmnPart
uint16_t numBytesCmnPart
Definition: EMdgmFormat.h:934
MAX_EXTRA_DET
#define MAX_EXTRA_DET
Definition: EMdgmFormat.h:260
EMdgmMRZ_rxInfo_def::numExtraDetectionClasses
uint16_t numExtraDetectionClasses
Definition: EMdgmFormat.h:1140
EMdgmSPOdataBlock_def::correctedLong_deg
double correctedLong_deg
Definition: EMdgmFormat.h:425
EMdgmMRZ_txSectorInfo_def::padding0
uint8_t padding0
Definition: EMdgmFormat.h:1107
EMdgmSVPpoint_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:662
EMdgmMWCrxInfo_def::TVGfunctionApplied
uint8_t TVGfunctionApplied
Definition: EMdgmFormat.h:1343
EMdgmSVPpoint_def::absCoeff_dBPerkm
float absCoeff_dBPerkm
Definition: EMdgmFormat.h:663
KMbinary_def::heading_deg
float heading_deg
Definition: EMdgmFormat.h:572
KMbinary_def::time_sec
uint32_t time_sec
Definition: EMdgmFormat.h:525
EMdgmCPOdataBlock_def::correctedLong_deg
double correctedLong_deg
Definition: EMdgmFormat.h:1433
EMdgmMRZ_sounding_def::WCNomBeamAngleAcross_deg
float WCNomBeamAngleAcross_deg
Definition: EMdgmFormat.h:1197
EMdgmMRZ_txSectorInfo_def::tiltAngleReTx_deg
float tiltAngleReTx_deg
Definition: EMdgmFormat.h:1109
EMdgmSVP_def::sensorData
struct EMdgmSVPpoint_def sensorData[MAX_SVP_POINTS]
Definition: EMdgmFormat.h:691
KMbinary_def::heave_m
float heave_m
Definition: EMdgmFormat.h:573
EMdgmMRZ_pingInfo_def::beamSpacing
uint8_t beamSpacing
Definition: EMdgmFormat.h:967
EMdgmSVP_def::numSamples
uint16_t numSamples
Definition: EMdgmFormat.h:679
EMdgmMRZ_sounding_def::WCBeamNumb
uint16_t WCBeamNumb
Definition: EMdgmFormat.h:1195
KMdelayedHeave_def
#SKM - delayed heave. Included if available from sensor.
Definition: EMdgmFormat.h:613
EMdgmMRZ_pingInfo_def::numBytesPerTxSector
uint16_t numBytesPerTxSector
Definition: EMdgmFormat.h:1071
EMdgmSVTsample_def::pressure_Pa
float pressure_Pa
Definition: EMdgmFormat.h:762
EMdgmMRZ_pingInfo_def::padding1
uint16_t padding1
Definition: EMdgmFormat.h:991
EMdgmMWCrxInfo_def::soundVelocity_mPerSec
float soundVelocity_mPerSec
Definition: EMdgmFormat.h:1348
EMdgmSCLdataFromSensor_def::clockDevPU_nanosec
int32_t clockDevPU_nanosec
Definition: EMdgmFormat.h:790
EMdgmMWCrxInfo_def::numBytesPerBeamEntry
uint8_t numBytesPerBeamEntry
Definition: EMdgmFormat.h:1340
KMbinary_def::pitch_deg
float pitch_deg
Definition: EMdgmFormat.h:571
EMdgmMRZ_pingInfo_def
#MRZ - ping info. Information on vessel/system level, i.e. information common to all beams in the cur...
Definition: EMdgmFormat.h:959
EMdgmMRZ_sounding_def::beamAngleReRx_deg
float beamAngleReRx_deg
Definition: EMdgmFormat.h:1221
EMdgmSVTinfo_def::sensorStatus
uint16_t sensorStatus
Definition: EMdgmFormat.h:707
KMbinary_def::rollError_deg
float rollError_deg
Definition: EMdgmFormat.h:595
EMdgmMRZ_pingInfo_def::padding3
uint8_t padding3
Definition: EMdgmFormat.h:1086
EMdgmMRZ_pingInfo_def::starbSectorEdge_deg
float starbSectorEdge_deg
Definition: EMdgmFormat.h:1019
EMdgmSVTinfo_def::sensorDataContents
uint16_t sensorDataContents
Definition: EMdgmFormat.h:736
KMbinary_def::longitudeError_m
float longitudeError_m
Definition: EMdgmFormat.h:593
EMdgmSCLdataFromSensor_def::offset_sec
float offset_sec
Definition: EMdgmFormat.h:789
EMdgmMWCtxSectorData_def::txSectorNum
uint16_t txSectorNum
Definition: EMdgmFormat.h:1329
EMdgmMRZ_sounding_def::sourceLevelApplied_dB
float sourceLevelApplied_dB
Definition: EMdgmFormat.h:1210
EMdgmMRZ_sounding_def::realTimeCleanInfo
uint16_t realTimeCleanInfo
Definition: EMdgmFormat.h:1241
EMdgmMRZ_pingInfo_def::freqRangeHighLim_Hz
float freqRangeHighLim_Hz
Definition: EMdgmFormat.h:1012
EMdgmMWCrxInfo_def
#MWC - data block 2: receiver, general info
Definition: EMdgmFormat.h:1336
EMdgmMRZ_sounding_def::detectionClass
uint8_t detectionClass
Definition: EMdgmFormat.h:1182
EMdgmSVTinfo_def::numBytesInfoPart
uint16_t numBytesInfoPart
Definition: EMdgmFormat.h:706
EMdgmMWCtxSectorData_def::tiltAngleReTx_deg
float tiltAngleReTx_deg
Definition: EMdgmFormat.h:1326
EMdgmScommon_def::sensorStatus
uint16_t sensorStatus
Definition: EMdgmFormat.h:365
EMdgmMRZ_pingInfo_def::freqRangeLowLim_Hz
float freqRangeLowLim_Hz
Definition: EMdgmFormat.h:1011
EMdgmMRZ_sounding_def::receiverSensitivityApplied_dB
float receiverSensitivityApplied_dB
Definition: EMdgmFormat.h:1209
EMdgmIIP_def::status
uint16_t status
Definition: EMdgmFormat.h:1507
EMdgmMRZ_sounding_def::x_reRefPoint_m
float x_reRefPoint_m
Definition: EMdgmFormat.h:1237
EMdgmIOP_def
Definition of #IOP datagram containing runtime parameters, exactly as chosen by operator in the K-Con...
Definition: EMdgmFormat.h:1528
EMdgmMRZ_sounding_def::rejectionInfo1
uint8_t rejectionInfo1
Definition: EMdgmFormat.h:1179
EMdgmMRZ_sounding_def::BScalibration_dB
float BScalibration_dB
Definition: EMdgmFormat.h:1215
EMdgmMRZ_pingInfo_def::attitudeSensorStatus
uint8_t attitudeSensorStatus
Definition: EMdgmFormat.h:1085
EMdgmSdataInfo_def::numSamplesArray
uint16_t numSamplesArray
Definition: EMdgmFormat.h:404
EMdgmMRZ_rxInfo_def::numSoundingsValidMain
uint16_t numSoundingsValidMain
Definition: EMdgmFormat.h:1132
EMdgmMRZ_rxInfo_def
#MRZ - receiver specific information.
Definition: EMdgmFormat.h:1128
KMbinary_def::pitchRate
float pitchRate
Definition: EMdgmFormat.h:579
KMbinary_def::latitude_deg
double latitude_deg
Definition: EMdgmFormat.h:564
EMdgmSDEdataFromSensor_def::offset
float offset
Definition: EMdgmFormat.h:822
EMdgmMRZ_txSectorInfo_def::padding1
uint16_t padding1
Definition: EMdgmFormat.h:1118
EMdgmSHI_def
#SHI - Height datagram.
Definition: EMdgmFormat.h:864
EMdgmHeader_def
Definition of general datagram header.
Definition: EMdgmFormat.h:330
EMdgmMRZ_pingInfo_def::longitude_deg
double longitude_deg
Definition: EMdgmFormat.h:1088