|
EM datagrams on *.kmall format
Reg. nr. 410224 rev J
|
Go to the documentation of this file.
13 #ifndef _EMDGMFORMAT_H
14 #define _EMDGMFORMAT_H
18 #if !defined(_VXW) || defined(_WRS_CONFIG_LP64)
38 #define EM_DGM_FORMAT_VERSION "Rev J 2023-09-15"
40 #define MAX_NUM_BEAMS 1024
41 #define MAX_EXTRA_DET 1024
42 #define MAX_EXTRA_DET_CLASSES 11
43 #define MAX_SIDESCAN_SAMP 60000
44 #define MAX_SIDESCAN_EXTRA_SAMP 15000
45 #define MAX_NUM_TX_PULSES 9
46 #define MAX_ATT_SAMPLES 148
47 #define MAX_SVP_POINTS 2000
48 #define MAX_SVT_SAMPLES 1
49 #define MAX_DGM_SIZE 64000
50 #define MAX_NUM_MST_DGMS 256
51 #define MAX_NUM_MWC_DGMS 256
52 #define MAX_NUM_MRZ_DGMS 32
53 #define MAX_NUM_FCF_DGMS 1
55 #define MAX_SPO_DATALENGTH 250
56 #define MAX_SPE_DATALENGTH 250
57 #define MAX_SPD_DATALENGTH 250
58 #define MAX_ATT_DATALENGTH 250
59 #define MAX_SVT_DATALENGTH 64
60 #define MAX_SCL_DATALENGTH 64
61 #define MAX_SDE_DATALENGTH 32
62 #define MAX_SHI_DATALENGTH 32
64 #define MAX_CPO_DATALENGTH 250
65 #define MAX_CHE_DATALENGTH 64
67 #define MAX_F_FILENAME_LENGTH 64
68 #define MAX_F_FILE_SIZE 63000
70 #define UNAVAILABLE_POSFIX 0xffff
71 #define UNAVAILABLE_LATITUDE 200.0f
72 #define UNAVAILABLE_LONGITUDE 200.0f
73 #define UNAVAILABLE_SPEED -1.0f
74 #define UNAVAILABLE_COURSE -4.0f
75 #define UNAVAILABLE_ELLIPSOIDHEIGHT -999.0f
83 #define EM_DGM_I_INSTALLATION_PARAM "#IIP"
84 #define EM_DGM_I_OP_RUNTIME "#IOP"
87 #define EM_DGM_S_POSITION "#SPO"
88 #define EM_DGM_S_POSITION_ERROR "#SPE"
89 #define EM_DGM_S_POSITION_DATUM "#SPD"
90 #define EM_DGM_S_KM_BINARY "#SKM"
91 #define EM_DGM_S_SOUND_VELOCITY_PROFILE "#SVP"
92 #define EM_DGM_S_SOUND_VELOCITY_TRANSDUCER "#SVT"
93 #define EM_DGM_S_CLOCK "#SCL"
94 #define EM_DGM_S_DEPTH "#SDE"
95 #define EM_DGM_S_HEIGHT "#SHI"
98 #define EM_DGM_M_RANGE_AND_DEPTH "#MRZ"
99 #define EM_DGM_M_WATER_COLUMN "#MWC"
102 #define EM_DGM_C_POSITION "#CPO"
103 #define EM_DGM_C_HEAVE "#CHE"
106 #define EM_DGM_F_CALIBRATION_FILE "#FCF"
233 #define SPO_VERSION 0
270 #define SPE_VERSION 0
306 #define SPD_VERSION 0
473 uint32_t time_nanosec;
507 #define SKM_VERSION 1
554 #define SVP_VERSION 1
641 #define SVT_VERSION 0
672 #define SCL_VERSION 1
707 #define SDE_VERSION 1
735 #define SHI_VERSION 0
1244 #define MRZ_VERSION 3
1301 float beamPointAngReVertical_deg;
1302 uint16_t startRangeSampleNum;
1305 uint16_t beamTxSectorNum;
1362 #define MWC_VERSION 2
1406 #define CPO_VERSION 0
1436 #define CHE_VERSION 0
1478 #define FCF_VERSION 0
1506 #define IIP_VERSION 0
1534 #define IOP_VERSION 0
1556 #define BIST_VERSION 0
1559 #if !defined(_VXW) || defined(_WRS_CONFIG_LP64)
#SPD - Struct of position datum reference datagram. The data fields are identical to the NMEA DTM...
float WCNomBeamAngleAcross_deg
#SVP - Sound Velocity Profile. Data from one depth point contains information specified in this struc...
uint8_t TVGfunctionApplied
double longitudeOffset_deg
float ellipseSemiMinorAxisError_m
uint16_t numBytesPerSounding
uint16_t detectedRangeInSamples
float receiverSensitivityApplied_dB
uint8_t bsCalibrationFile[MAX_F_FILE_SIZE]
float ellipsoidHeightError_m
#CHE - Struct of compatibility heave sensor datagram. Used for backward compatibility with ....
uint32_t pipeTrackingStatus
#SKM - all available data.
float courseOverGround_deg
Information of repeated sensor data in one datagram.
int8_t localDatumCode[16]
float freqRangeHighLim_Hz
#MRZ - sector information.
#MWC - Multibeam Water Column Datagram. Entire datagram containing several sub structs.
uint16_t numBytesPerClass
uint16_t sensorDataContents
float maxEffTxPulseLength_sec
float highVoltageLevel_dB
uint32_t timeFromSensor_nanosec
float txBeamWidthAlong_deg
#SPO - Sensor position data block. Data from active sensor is corrected data for position system inst...
float ellipsoidHeightReRefPoint_m
float speedOverGround_mPerSec
#MRZ - Multibeam Raw Range and Depth datagram. The datagram also contains seabed image data.
Part of Height datagram, giving corrected and uncorrected data as received from sensor.
uint16_t sensorDataContents
#FCF - Backscatter calibration file The backscatter calibration file contains the measured backsc...
#SPD - Sensor position datum reference data block. The data fields are identical to the NMEA DTM data...
#SPE - Sensor position error statistics data block. The data fields are identical to the NMEA GST dat...
uint16_t numBytesInfoData
uint16_t sensorInputFormat
uint16_t numBytesPerSample
uint32_t timeFromSensor_sec
float seabedImageSampleRate
Definition of #IOP datagram containing runtime parameters, exactly as chosen by operator in the K-Con...
float bsCorrectionOffset_dB
#SVT - Sound Velocity at Transducer. Data sample.
struct EMdgmMWCrxBeamData_def * beamData_p
Sensor (S) output datagram - common part for all external sensors.
double latitudeOffset_deg
uint16_t numBytesPerTxSector
float speedOverGround_mPerSec
uint8_t postProcessingInfo
#CPO - Compatibility sensor position compatibility data block. Data from active sensor is referenced ...
uint32_t timeFromSensor_sec
uint8_t dataFromSensor[MAX_SCL_DATALENGTH]
float beamAngleCorrection_deg
#MWC - data block 2: receiver, specific info for each beam.
uint16_t numSoundingsMaxMain
#CHE - Heave compatibility data part. Heave reference point is at transducer instead of at vessel ref...
struct EMdgmSVPpoint_def sensorData[MAX_SVP_POINTS]
uint8_t swathAlongPosition
float receiveArraySizeUsed_deg
uint16_t numExtraDetectionClasses
uint8_t modeAndStabilisation
Part of Sound Velocity at Transducer datagram.
int8_t localDatumSubCode[16]
uint16_t SLrampUpTimeRemaining
uint8_t detectionConfidenceLevel
#SPE - Struct of position error statistics datagram. The data fields are identical to the NMEA GS...
float detectionUncertaintyVer_m
float meanAbsCoeff_dBPerkm
float twoWayTravelTimeCorrection_sec
int8_t posDataFromSensor[MAX_CPO_DATALENGTH]
uint32_t timeFromSensor_nanosec
#IB - Results from online built in test (BIST). Definition used for three different BIST datagrams,...
#MWC - Beam sample phase info, specific for each beam and water column sample. numBeams * numSampleDa...
float detectedRangeInSamplesHighResolution
#SVT - Sound Velocity at Transducer. Data for sound velocity and temperature are measured directely o...
uint16_t extraDetectionAlarmFlag
int8_t posDataFromSensor[MAX_SPO_DATALENGTH]
uint16_t SIstartRange_samples
uint32_t timeFromSensor_sec
float transmitArraySizeUsed_deg
Sensor (S) output datagram - info of KMB datagrams.
#MRZ - Data for each sounding, e.g. XYZ, reflectivity, two way travel time etc.
float soundVelocity_mPerSec_offset
uint16_t numBytesInfoPart
uint16_t numBytesPerTxSector
float effectiveSignalLength_sec
#SKM - Sensor attitude data block. Data given timestamped, not corrected.
Multibeam (M) datagrams - body part. Start of body of all M datagrams.
int16_t SIsample_desidB[MAX_SIDESCAN_SAMP]
#SKM - data from attitude and attitude velocity sensors.
Multibeam (M) datagrams - data partition information. General for all M datagrams.
uint16_t numBytesRawSensorData
#SKM - delayed heave. Included if available from sensor.
uint16_t numBytesPerSample
float sourceLevelApplied_dB
Part of clock datagram giving offsets and the raw input in text format.
uint8_t lambertsLawApplied
File (F) output datagram - common all for file datagrams.
float sectorTrackingCorr_dB
float starbSectorEdge_deg
float soundVelocity_mPerSec
#SVP - Sound Velocity Profile. Data from sound velocity profile or from CTD profile....
float twoWayTravelTime_sec
int8_t posDatumDataFromSensor[MAX_SPD_DATALENGTH]
float detectionWindowLength_sec
float txNominalSourceLevel_dB
uint8_t attitudeSensorStatus
uint16_t realTimeCleanInfo
#MWC - data block 1: transmit sectors, general info for all sectors
int32_t clockDevPU_microsec
uint16_t numBytesInfoPart
uint16_t numExtraDetections
int8_t posErrorDataFromSensor[MAX_SPE_DATALENGTH]
float ellipsoidHeightReRefPoint_m
float z_waterLevelReRefPoint_m
#CPO - Struct of compatibility position sensor datagram. Data from active sensor will be motion c...
#SPO - Struct of position sensor datagram. Data from active sensor will be motion corrected if in...
uint16_t sensorInputFormat
float soundVelocity_mPerSec
float ellipseSemiMajorAxisError_m
float courseOverGround_deg
int8_t * sampleAmplitude05dB_p
#MRZ - receiver specific information.
float maxEffTxBandWidth_Hz
float totalSignalLength_sec
float sectorTransmitDelay_sec
Part of depth datagram giving depth as used, offsets, scale factor and data as received from sensor (...
uint16_t numSoundingsValidMain
float soundVelocity_mPerSec
uint32_t timeFromSensor_nanosec
#MWC - data block 1: transmit sector data, loop for all i = numTxSectors.
float txTransducerDepth_m
uint16_t numBytesPerSample
float detectionUncertaintyHor_m
float beamIncAngleAdj_deg
float maxTotalTxPulseLength_sec
uint8_t fileName[MAX_F_FILENAME_LENGTH]
#MWC - data block 2: receiver, general info
float ellipseOrientationError_deg
float ellipsoidHeightReRefPoint_m
uint16_t numBytesInfoPart
float soundSpeedAtTxDepth_mPerSec
#MRZ - ping info. Information on vessel/system level, i.e. information common to all beams in the cur...
uint8_t numBytesPerBeamEntry
Definition of #IIP datagram containing installation parameters and sensor format settings....