sbgECom Library
4.0.1987-stable
C library to interface SBG Systems IMU/AHRS/INS
|
Specific method of stream buffer for little endian readings/writings. More...
#include "sbgStreamBufferCommon.h"
Go to the source code of this file.
Specific method of stream buffer for little endian readings/writings.
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.
SBG_INLINE int16_t sbgStreamBufferReadInt16BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int16_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE uint16_t sbgStreamBufferReadUint16BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint16_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int32_t sbgStreamBufferReadInt24BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int24 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE uint32_t sbgStreamBufferReadUint24BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint24 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int32_t sbgStreamBufferReadInt32BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int32_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE uint32_t sbgStreamBufferReadUint32BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint32_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
Referenced by sbgStreamBufferReadFloatBE(), sbgStreamBufferReadInt64BE(), sbgStreamBufferReadSizeT32BE(), and sbgStreamBufferReadUint64BE().
SBG_INLINE int64_t sbgStreamBufferReadInt40BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int40 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE uint64_t sbgStreamBufferReadUint40BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint40 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int64_t sbgStreamBufferReadInt48BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int48 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE uint64_t sbgStreamBufferReadUint48BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint48 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int64_t sbgStreamBufferReadInt56BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int56 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int64_t sbgStreamBufferReadUint56BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint56 from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE int64_t sbgStreamBufferReadInt64BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an int64_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, sbgStreamBufferGetSpace(), and sbgStreamBufferReadUint32BE().
SBG_INLINE uint64_t sbgStreamBufferReadUint64BE | ( | SbgStreamBuffer * | pHandle | ) |
Read an uint64_t from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, sbgStreamBufferGetSpace(), and sbgStreamBufferReadUint32BE().
Referenced by sbgStreamBufferReadDoubleBE(), and sbgStreamBufferReadSizeT64BE().
SBG_INLINE size_t sbgStreamBufferReadSizeT32BE | ( | SbgStreamBuffer * | pHandle | ) |
Read a size_t from a stream buffer that has been stored in a uint32_t (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References sbgStreamBufferReadUint32BE().
Referenced by sbgStreamBufferReadStringBE().
SBG_INLINE size_t sbgStreamBufferReadSizeT64BE | ( | SbgStreamBuffer * | pHandle | ) |
Read a size_t from a stream buffer that has been stored in a uint64_t (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References sbgStreamBufferReadUint64BE().
SBG_INLINE float sbgStreamBufferReadFloatBE | ( | SbgStreamBuffer * | pHandle | ) |
Read an float from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, sbgStreamBufferGetSpace(), and sbgStreamBufferReadUint32BE().
SBG_INLINE double sbgStreamBufferReadDoubleBE | ( | SbgStreamBuffer * | pHandle | ) |
Read an double from a stream buffer (Big endian version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
References _SbgStreamBuffer::errorCode, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, sbgStreamBufferGetSpace(), and sbgStreamBufferReadUint64BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteInt16BE | ( | SbgStreamBuffer * | pHandle, |
int16_t | value | ||
) |
Write an int16_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint16BE | ( | SbgStreamBuffer * | pHandle, |
uint16_t | value | ||
) |
Write an uint16_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteInt24BE | ( | SbgStreamBuffer * | pHandle, |
int32_t | value | ||
) |
Write an int24 into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, and SBG_NO_ERROR.
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint24BE | ( | SbgStreamBuffer * | pHandle, |
uint32_t | value | ||
) |
Write an uint24 into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, and SBG_NO_ERROR.
SBG_INLINE SbgErrorCode sbgStreamBufferWriteInt32BE | ( | SbgStreamBuffer * | pHandle, |
int32_t | value | ||
) |
Write an int32_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint32BE | ( | SbgStreamBuffer * | pHandle, |
uint32_t | value | ||
) |
Write an uint32_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
Referenced by sbgStreamBufferWriteFloatBE(), and sbgStreamBufferWriteSizeT32BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint48BE | ( | SbgStreamBuffer * | pHandle, |
uint64_t | value | ||
) |
Write an uint48 into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteInt64BE | ( | SbgStreamBuffer * | pHandle, |
int64_t | value | ||
) |
Write an int64_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteUint64BE | ( | SbgStreamBuffer * | pHandle, |
uint64_t | value | ||
) |
Write an uint64_t into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, _SbgStreamBuffer::pCurrentPtr, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, and sbgStreamBufferGetSpace().
Referenced by sbgStreamBufferWriteDoubleBE(), and sbgStreamBufferWriteSizeT64BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteSizeT32BE | ( | SbgStreamBuffer * | pHandle, |
size_t | value | ||
) |
Write an size_t into a stream buffer as a uint32_t (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References sbgStreamBufferWriteUint32BE().
Referenced by sbgStreamBufferWriteStringBE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteSizeT64BE | ( | SbgStreamBuffer * | pHandle, |
size_t | value | ||
) |
Write an size_t into a stream buffer as a uint64_t (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References sbgStreamBufferWriteUint64BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteFloatBE | ( | SbgStreamBuffer * | pHandle, |
float | value | ||
) |
Write an float into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, SBG_NO_ERROR, and sbgStreamBufferWriteUint32BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteDoubleBE | ( | SbgStreamBuffer * | pHandle, |
double | value | ||
) |
Write an double into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | value | The value to write. |
References _SbgStreamBuffer::errorCode, SBG_NO_ERROR, and sbgStreamBufferWriteUint64BE().
SBG_INLINE SbgErrorCode sbgStreamBufferReadStringBE | ( | SbgStreamBuffer * | pHandle, |
char * | pString, | ||
size_t | maxSize | ||
) |
Read a C String from a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports read operations. |
[out] | pString | Buffer that can hold the read NULL terminated C string. |
[in] | maxSize | Maximum number of bytes that can be stored in pString (including the NULL char). |
References _SbgStreamBuffer::errorCode, SBG_BUFFER_OVERFLOW, SBG_NO_ERROR, sbgStreamBufferReadBuffer(), and sbgStreamBufferReadSizeT32BE().
SBG_INLINE SbgErrorCode sbgStreamBufferWriteStringBE | ( | SbgStreamBuffer * | pHandle, |
const char * | pString | ||
) |
Write a NULL terminated C String into a stream buffer (Big Endian Version).
[in] | pHandle | Valid stream buffer handle that supports write operations. |
[in] | pString | NULL terminated C String to write to the stream buffer. |
References _SbgStreamBuffer::errorCode, SBG_INVALID_PARAMETER, SBG_NO_ERROR, sbgStreamBufferWriteBuffer(), and sbgStreamBufferWriteSizeT32BE().