Utilities¶
Utility functions for various cases. These function are used across entire middleware and can also be used by application.
-
group
LWGSM_UTILS Utilities.
Defines
-
LWGSM_ASSERT(msg, c)¶ Assert an input parameter if in valid range.
- Note
Since this is a macro, it may only be used on a functions where return status is of type lwgsmr_t enumeration
- Parameters
[in] msg: message to print to debug if test fails[in] c: Condition to test
-
LWGSM_MEM_ALIGN(x)¶ Align
xvalue to specific number of bytes, provided by LWGSM_CFG_MEM_ALIGNMENT configuration.- Return
Input value aligned to specific number of bytes
- Parameters
[in] x: Input value to align
-
LWGSM_MIN(x, y)¶ Get minimal value between
xandyinputs.- Return
Minimal value between
xandyparameters- Parameters
[in] x: First input to test[in] y: Second input to test
-
LWGSM_MAX(x, y)¶ Get maximal value between
xandyinputs.- Return
Maximal value between
xandyparameters- Parameters
[in] x: First input to test[in] y: Second input to test
-
LWGSM_ARRAYSIZE(x)¶ Get size of statically declared array.
- Return
Number of array elements
- Parameters
[in] x: Input array
-
LWGSM_UNUSED(x)¶ Unused argument in a function call.
- Note
Use this on all parameters in a function which are not used to prevent compiler warnings complaining about “unused variables”
- Parameters
[in] x: Variable which is not used
-
LWGSM_U32(x)¶ Get input value casted to
unsigned 32-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_U16(x)¶ Get input value casted to
unsigned 16-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_U8(x)¶ Get input value casted to
unsigned 8-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_I32(x)¶ Get input value casted to
signed 32-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_I16(x)¶ Get input value casted to
signed 16-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_I8(x)¶ Get input value casted to
signed 8-bitvalue.- Parameters
[in] x: Input value
-
LWGSM_SZ(x)¶ Get input value casted to
size_tvalue.- Parameters
[in] x: Input value
-
lwgsm_u32_to_str(num, out)¶ Convert
unsigned 32-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-
lwgsm_u32_to_hex_str(num, out, w)¶ Convert
unsigned 32-bitnumber to HEX string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string[in] w: Width of output string. When number is shorter than width, leading0characters will apply.
-
lwgsm_i32_to_str(num, out)¶ Convert
signed 32-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-
lwgsm_u16_to_str(num, out)¶ Convert
unsigned 16-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-
lwgsm_u16_to_hex_str(num, out, w)¶ Convert
unsigned 16-bitnumber to HEX string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string[in] w: Width of output string. When number is shorter than width, leading0characters will apply.
-
lwgsm_i16_to_str(num, out)¶ Convert
signed 16-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-
lwgsm_u8_to_str(num, out)¶ Convert
unsigned 8-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-
lwgsm_u8_to_hex_str(num, out, w)¶ Convert
unsigned 16-bitnumber to HEX string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string[in] w: Width of output string. When number is shorter than width, leading0characters will apply.
-
lwgsm_i8_to_str(num, out)¶ Convert
signed 8-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
Functions
-
char *
lwgsm_u32_to_gen_str(uint32_t num, char *out, uint8_t is_hex, uint8_t padding)¶ Convert
unsigned 32-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string[in] is_hex: Set to1to output hex, 0 otherwise[in] width: Width of output string. When number is shorter than width, leading0characters will apply. This parameter is valid only when formatting hex numbers
-
char *
lwgsm_i32_to_gen_str(int32_t num, char *out)¶ Convert
signed 32-bitnumber to string.- Return
Pointer to output variable
- Parameters
[in] num: Number to convert[out] out: Output variable to save string
-