Opiga utility functions

nRF5 SDK v15.3.0

Data Structures

struct sUint64
structure to store the record sequence number More...

Macros

#define GREATER_THAN 0x00000001
Greater than.
#define LESSER_THAN 0x00000002
Lesser than.
#define EQUAL 0x00000000
Equal.
#define DEFAULT_LOWBOUND_DOUBLEWORD 0x00000000
Default Low bound value value.
#define MASK_DOUBLE_WORD 0xFFFFFFFF
Mask double word value.
#define WORD_SIZE 32
Word bit size.
#define UTIL_SUCCESS 0x00000000
Successful Execution.
#define UTIL_ERROR 0xFFFFFFFF
Execution Failure.
#define LEAST_SIGNIFICANT_BIT_HIGH 0x00000001
Least significant bit set to high.
#define MOST_SIGNIFICANT_BIT_HIGH 0x80000000
Least significant bit set to high.

Typedefs

typedef struct sUint64 sUint64
structure to store the record sequence number

Functions

int32_t CompareUint64 (const sUint64 *PpsSrc1, const sUint64 *PpsSrc2)
The function compares two uint64 data type.

int32_t SubtractUint64 (const sUint64 *PpsMinuend, const sUint64 *PpsSubtrahend, sUint64 *PpsDifference)
Calculates the difference between the two uint64 data.

int32_t AddUint64 (const sUint64 *PpsSrc1, const sUint64 *PpsSrc2, sUint64 *PpsDest)
Adds two uint64 data.

int32_t IncrementUint64 ( sUint64 *PpsSrc1)
Increments uint64 data.

int32_t GetUint64 ( sUint64 *PpsOut, const uint8_t *pbVal, uint16_t wLen)
Converts byte array to uint64.

int32_t ShiftLeftUint64 ( sUint64 *PpsWindow, sUint64 PsShiftCount, uint8_t PWindowSize, uint8_t PbMaxWindowSize)
To Slide the window by shift count.

int32_t Utility_SetBitUint64 ( sUint64 *PprgbData, uint8_t bWindowSize, uint8_t bBitPosition)
To set a bit in the sUnit64 data.

uint16_t Utility_GetUint16 (const uint8_t *PprgbData)
Prepares uint16 [Big endian] type value from the buffer.

uint32_t Utility_GetUint32 (const uint8_t *PprgbData)
Prepares uint32 [Big endian] type value from the buffer .

void Utility_SetUint16 ( puint8_t PprgbData, uint16_t PwValue)
Copies 2 bytes of uint16 type value to the buffer

uint32_t Utility_GetUint24 (const uint8_t *PprgbData)
Prepares uint24 [Big endian] type value from the buffer .

void Utility_SetUint24 (uint8_t *PprgbData, uint32_t Pdwvalue)
Copies LSB 3 bytes of uint32 [Big endian] type value to the buffer and store.

void Utility_SetUint32 (uint8_t *PprgbData, uint32_t Pdwvalue)
Copies LSB 4 bytes of uint32 [Big endian] type value to the buffer and store.

void Utility_Memmove ( puint8_t PprgbDestBuf, const puint8_t PprgbSrcBuf, uint16_t PwLength)
Copies the data from source buffer to destination buffer.

Detailed Description