sbgECom Library  5.3.2276-stable
Interface SBG Systems IMU/AHRS/INS
Loading...
Searching...
No Matches
sbgEComLogShipMotion.h File Reference

Parse logs that returns ship motion values such as heave. More...

Go to the source code of this file.

Data Structures

struct  _SbgEComLogShipMotion
 

Macros

#define SBG_ECOM_SHIP_MOTION_HEAVE_VALID   (0x0001u << 0)
 
#define SBG_ECOM_SHIP_MOTION_VEL_AIDED   (0x0001u << 1)
 
#define SBG_ECOM_SHIP_MOTION_SURGE_SWAY_VALID   (0x0001u << 2)
 
#define SBG_ECOM_SHIP_MOTION_RESERVED   (0x0001u << 3)
 
#define SBG_ECOM_SHIP_MOTION_HEAVE_PERIOD_VALID   (0x0001u << 4)
 
#define SBG_ECOM_SHIP_MOTION_SWELL_MODE   (0x0001u << 5)
 
#define SBG_ECOM_SHIP_MOTION_ACCEL_VALID   (0x0001u << 6)
 

Typedefs

typedef struct _SbgEComLogShipMotion SbgEComLogShipMotion
 

Functions

SbgErrorCode sbgEComLogShipMotionReadFromStream (SbgEComLogShipMotion *pLogData, SbgStreamBuffer *pStreamBuffer)
 
SbgErrorCode sbgEComLogShipMotionWriteToStream (const SbgEComLogShipMotion *pLogData, SbgStreamBuffer *pStreamBuffer)
 

Detailed Description

Parse logs that returns ship motion values such as heave.

Author
SBG Systems
Date
30 March 2013
License

The MIT license

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Macro Definition Documentation

◆ SBG_ECOM_SHIP_MOTION_HEAVE_VALID

#define SBG_ECOM_SHIP_MOTION_HEAVE_VALID   (0x0001u << 0)

Set if the heave filter has converged and is delivering valid results.

◆ SBG_ECOM_SHIP_MOTION_VEL_AIDED

#define SBG_ECOM_SHIP_MOTION_VEL_AIDED   (0x0001u << 1)

Set if the heave algorithm uses transient accelerations to improve accuracy.

◆ SBG_ECOM_SHIP_MOTION_SURGE_SWAY_VALID

#define SBG_ECOM_SHIP_MOTION_SURGE_SWAY_VALID   (0x0001u << 2)

Set if surge, sway, and velocity (velX, velY) channels are valid and available.

◆ SBG_ECOM_SHIP_MOTION_RESERVED

#define SBG_ECOM_SHIP_MOTION_RESERVED   (0x0001u << 3)

Reserved. Deprecated status flag, subject to potential reuse.

◆ SBG_ECOM_SHIP_MOTION_HEAVE_PERIOD_VALID

#define SBG_ECOM_SHIP_MOTION_HEAVE_PERIOD_VALID   (0x0001u << 4)

Set if the main wave or swell period is available and valid.

◆ SBG_ECOM_SHIP_MOTION_SWELL_MODE

#define SBG_ECOM_SHIP_MOTION_SWELL_MODE   (0x0001u << 5)

Set if the heave filter is operating in swell computation mode.

◆ SBG_ECOM_SHIP_MOTION_ACCEL_VALID

#define SBG_ECOM_SHIP_MOTION_ACCEL_VALID   (0x0001u << 6)

Set if X, Y, and Z accelerations are valid and available.

Typedef Documentation

◆ SbgEComLogShipMotion

Structure storing data for the SBG_ECOM_LOG_SHIP_MOTION or SBG_ECOM_LOG_SHIP_MOTION_HP message.

Ship motion measurements are defined in a vessel-specific coordinate frame:

  • Surge: Longitudinal displacement (positive toward the bow/forward).
  • Sway: Transverse displacement (positive toward the starboard side/right).
  • Heave: Vertical displacement (positive downward).

Note: Always check the status flags before using the data, as they indicate the validity of each output. Some data fields, such as the heave period or surge/sway components, may be unavailable in certain frames.

Function Documentation

◆ sbgEComLogShipMotionReadFromStream()

SbgErrorCode sbgEComLogShipMotionReadFromStream ( SbgEComLogShipMotion * pLogData,
SbgStreamBuffer * pStreamBuffer )

Parse data for the SBG_ECOM_LOG_SHIP_MOTION or SBG_ECOM_LOG_SHIP_MOTION_HP message and fill the corresponding structure.

Parameters
[out]pLogDataLog structure instance to fill.
[in]pStreamBufferInput stream buffer to read the log from.
Returns
SBG_NO_ERROR if a valid log has been read from the stream buffer.

◆ sbgEComLogShipMotionWriteToStream()

SbgErrorCode sbgEComLogShipMotionWriteToStream ( const SbgEComLogShipMotion * pLogData,
SbgStreamBuffer * pStreamBuffer )

Write data for the SBG_ECOM_LOG_SHIP_MOTION or SBG_ECOM_LOG_SHIP_MOTION_HP message to the output stream buffer from the provided structure.

Parameters
[in]pLogDataLog structure instance to write.
[out]pStreamBufferOutput stream buffer to write the log to.
Returns
SBG_NO_ERROR if the log has been written to the stream buffer.