sbgEComBinaryLogUtc.c
Go to the documentation of this file.
1 #include "sbgEComBinaryLogUtc.h"
2 
3 //----------------------------------------------------------------------//
4 //- Operations -//
5 //----------------------------------------------------------------------//
6 
14 {
15  assert(pInputStream);
16  assert(pOutputData);
17 
18  //
19  // Read the frame payload
20  //
21  pOutputData->timeStamp = sbgStreamBufferReadUint32LE(pInputStream);
22  pOutputData->status = sbgStreamBufferReadUint16LE(pInputStream);
23  pOutputData->year = sbgStreamBufferReadUint16LE(pInputStream);
24  pOutputData->month = sbgStreamBufferReadInt8LE(pInputStream);
25  pOutputData->day = sbgStreamBufferReadInt8LE(pInputStream);
26  pOutputData->hour = sbgStreamBufferReadInt8LE(pInputStream);
27  pOutputData->minute = sbgStreamBufferReadInt8LE(pInputStream);
28  pOutputData->second = sbgStreamBufferReadInt8LE(pInputStream);
29  pOutputData->nanoSecond = sbgStreamBufferReadInt32LE(pInputStream);
30  pOutputData->gpsTimeOfWeek = sbgStreamBufferReadUint32LE(pInputStream);
31 
32  //
33  // Return if any error has occurred while parsing the frame
34  //
35  return sbgStreamBufferGetLastError(pInputStream);
36 }
37 
45 {
46  assert(pOutputStream);
47  assert(pInputData);
48 
49  //
50  // Write the frame payload
51  //
52  sbgStreamBufferWriteUint32LE(pOutputStream, pInputData->timeStamp);
53  sbgStreamBufferWriteUint16LE(pOutputStream, pInputData->status);
54  sbgStreamBufferWriteUint16LE(pOutputStream, pInputData->year);
55  sbgStreamBufferWriteInt8LE(pOutputStream, pInputData->month);
56  sbgStreamBufferWriteInt8LE(pOutputStream, pInputData->day);
57  sbgStreamBufferWriteInt8LE(pOutputStream, pInputData->hour);
58  sbgStreamBufferWriteInt8LE(pOutputStream, pInputData->minute);
59  sbgStreamBufferWriteInt8LE(pOutputStream, pInputData->second);
60  sbgStreamBufferWriteInt32LE(pOutputStream, pInputData->nanoSecond);
61  sbgStreamBufferWriteUint32LE(pOutputStream, pInputData->gpsTimeOfWeek);
62 
63  //
64  // Return if any error has occurred while writing the frame
65  //
66  return sbgStreamBufferGetLastError(pOutputStream);
67 }
_SbgLogUtcData::minute
int8_t minute
Definition: sbgEComBinaryLogUtc.h:120
_SbgLogUtcData::nanoSecond
int32_t nanoSecond
Definition: sbgEComBinaryLogUtc.h:122
_SbgLogUtcData::hour
int8_t hour
Definition: sbgEComBinaryLogUtc.h:119
sbgStreamBufferGetLastError
SBG_INLINE SbgErrorCode sbgStreamBufferGetLastError(SbgStreamBuffer *pHandle)
Definition: sbgStreamBufferCommon.h:274
sbgStreamBufferWriteInt32LE
SBG_INLINE SbgErrorCode sbgStreamBufferWriteInt32LE(SbgStreamBuffer *pHandle, int32_t value)
Definition: sbgStreamBufferLE.h:1434
sbgStreamBufferReadUint16LE
SBG_INLINE uint16_t sbgStreamBufferReadUint16LE(SbgStreamBuffer *pHandle)
Definition: sbgStreamBufferLE.h:106
_SbgLogUtcData
Definition: sbgEComBinaryLogUtc.h:112
_SbgLogUtcData::year
uint16_t year
Definition: sbgEComBinaryLogUtc.h:116
sbgStreamBufferReadInt32LE
SBG_INLINE int32_t sbgStreamBufferReadInt32LE(SbgStreamBuffer *pHandle)
Definition: sbgStreamBufferLE.h:313
sbgStreamBufferWriteUint16LE
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint16LE(SbgStreamBuffer *pHandle, uint16_t value)
Definition: sbgStreamBufferLE.h:1250
_SbgLogUtcData::day
int8_t day
Definition: sbgEComBinaryLogUtc.h:118
_SbgLogUtcData::timeStamp
uint32_t timeStamp
Definition: sbgEComBinaryLogUtc.h:114
_SbgLogUtcData::second
int8_t second
Definition: sbgEComBinaryLogUtc.h:121
sbgEComBinaryLogParseUtcData
SbgErrorCode sbgEComBinaryLogParseUtcData(SbgStreamBuffer *pInputStream, SbgLogUtcData *pOutputData)
Definition: sbgEComBinaryLogUtc.c:13
sbgStreamBufferReadUint32LE
SBG_INLINE uint32_t sbgStreamBufferReadUint32LE(SbgStreamBuffer *pHandle)
Definition: sbgStreamBufferLE.h:386
_SbgLogUtcData::status
uint16_t status
Definition: sbgEComBinaryLogUtc.h:115
_SbgStreamBuffer
Definition: sbgStreamBufferCommon.h:188
sbgEComBinaryLogWriteUtcData
SbgErrorCode sbgEComBinaryLogWriteUtcData(SbgStreamBuffer *pOutputStream, const SbgLogUtcData *pInputData)
Definition: sbgEComBinaryLogUtc.c:44
_SbgLogUtcData::month
int8_t month
Definition: sbgEComBinaryLogUtc.h:117
sbgStreamBufferReadInt8LE
#define sbgStreamBufferReadInt8LE
Definition: sbgStreamBufferCommon.h:142
sbgEComBinaryLogUtc.h
SbgErrorCode
enum _SbgErrorCode SbgErrorCode
Header file that defines all error codes for SBG Systems libraries.
sbgStreamBufferWriteInt8LE
#define sbgStreamBufferWriteInt8LE
Definition: sbgStreamBufferCommon.h:147
sbgStreamBufferWriteUint32LE
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint32LE(SbgStreamBuffer *pHandle, uint32_t value)
Definition: sbgStreamBufferLE.h:1499
_SbgLogUtcData::gpsTimeOfWeek
uint32_t gpsTimeOfWeek
Definition: sbgEComBinaryLogUtc.h:123


sbg_driver
Author(s): SBG Systems
autogenerated on Fri Oct 11 2024 02:13:40