C MIP-SDK
|
#include "mip.h"
Functions | |
u16 | mip_init (u8 *mip_buffer, u16 buffer_size, u8 descriptor_set) |
u16 | mip_is_initialized (u8 *mip_buffer, u8 descriptor_set) |
u16 | mip_add_field (u8 *mip_buffer, u16 buffer_size, void *field_data, u16 data_size, u16 data_descriptor) |
u16 | mip_add_formatted_field (u8 *mip_buffer, u16 buffer_size, void *field) |
u16 | mip_finalize (u8 *mip_buffer) |
u16 | mip_is_mip_packet (u8 *mip_buffer) |
u16 | mip_get_packet_size (u8 *mip_buffer) |
u16 | mip_get_first_field (u8 *mip_buffer, mip_field_header **field_header, u8 **field_data, u16 *field_offset) |
u16 | mip_get_next_field (u8 *mip_buffer, mip_field_header **field_header, u8 **field_data, u16 *field_offset) |
u8 | mip_get_packet_descriptor_set (u8 *mip_buffer) |
u8 | mip_get_payload_size (u8 *mip_buffer) |
u8 * | mip_get_payload_ptr (u8 *mip_buffer) |
u16 | mip_is_checksum_valid (u8 *mip_buffer) |
u16 | mip_calculate_checksum (u8 *mip_buffer) |
u16 mip_add_field | ( | u8 * | mip_buffer, |
u16 | buffer_size, | ||
void * | field_data, | ||
u16 | data_size, | ||
u16 | data_descriptor | ||
) |
Adds a field to an initialized MIP packet buffer.
[in,out] | u8 | *mip_buffer - pointer to memory used to construct the mip packet. |
[in] | u16 | buffer_size - size of the mip mempory buffer. |
[in] | void | *field_data - buffer containing the field data. |
[in] | u8 | u16 data_size - size of the field data (exlcuding the field header). |
[in] | u8 | u16 data_descriptor - the data descriptor for the field. |
MIP_OK | - field added to MIP packet. |
MIP_ERROR | - A pointer is NULL. |
MIP_MEMORY_ERROR | - Not enough room in the mip buffer to add the field or the packet will be too large for a MIP. |
None
u16 mip_add_formatted_field | ( | u8 * | mip_buffer, |
u16 | buffer_size, | ||
void * | field | ||
) |
Adds a pre-formatted field (header and data already assembled) to an initialized MIP packet buffer.
[in,out] | u8 | *mip_buffer - pointer to memory used to construct the mip packet. |
[in] | u16 | buffer_size - size of the mip mempory buffer. |
[in] | void | *field - buffer containing the field (must have header and data already assembled). |
MIP_OK | - field added to MIP packet. |
MIP_ERROR | - A pointer is NULL. |
MIP_MEMORY_ERROR | - Not enough room in the mip buffer to add the field or the packet will be too large for a MIP. |
None
u16 mip_calculate_checksum | ( | u8 * | mip_buffer | ) |
u16 mip_finalize | ( | u8 * | mip_buffer | ) |
u16 mip_get_first_field | ( | u8 * | mip_buffer, |
mip_field_header ** | field_header, | ||
u8 ** | field_data, | ||
u16 * | field_offset | ||
) |
Gets the first MIP field (a wrapper for mip_get_next_field that makes it easier to use).
[in] | u8 | *mip_buffer - pointer to memory containing the mip packet. |
[out] | mip_field_header | **field_header - pointer to the first field header. |
[out] | u8 | **field_data - pointer to the first field data. |
[out] | u16 | *field_offset - integer offset from start of packet payload of first field. |
None
u16 mip_get_next_field | ( | u8 * | mip_buffer, |
mip_field_header ** | field_header, | ||
u8 ** | field_data, | ||
u16 * | field_offset | ||
) |
Gets the next data field at field_offset
.
[in] | u8 | *mip_buffer - pointer to memory containing the mip packet. |
[out] | mip_field_header | **field_header - pointer to the current field header. |
[out] | u8 | **field_data - pointer to the current field data. |
[in,out] | u16 | *field_offset - integer offset from start of packet payload of next field. |
MIP_OK | - c\ field_header and field_data contain the parsed information. |
MIP_ERROR | - A pointer is NULL. |
MIP_INVALID_PACKET | - The buffer does not contain a valid MIP packet. |
MIP_FIELD_NOT_AVAILABLE | - The requested field does not exist. |
None
u8 mip_get_packet_descriptor_set | ( | u8 * | mip_buffer | ) |
u16 mip_get_packet_size | ( | u8 * | mip_buffer | ) |
u8* mip_get_payload_ptr | ( | u8 * | mip_buffer | ) |
u8 mip_get_payload_size | ( | u8 * | mip_buffer | ) |
u16 mip_init | ( | u8 * | mip_buffer, |
u16 | buffer_size, | ||
u8 | descriptor_set | ||
) |
Initialize a MIP packet header.
[out] | u8 | *mip_buffer - pointer to memory used to construct the mip packet. |
[in] | u16 | buffer_size - size of the mip memory buffer. |
[in] | u8 | descriptor_set - descriptor set field value. |
MIP_OK | - MIP packet initialized. |
MIP_ERROR | - The pointer is NULL. |
MIP_MEMORY_ERROR | - Not enough room in the mip buffer. |
None
u16 mip_is_checksum_valid | ( | u8 * | mip_buffer | ) |
u16 mip_is_initialized | ( | u8 * | mip_buffer, |
u8 | descriptor_set | ||
) |
Check if a MIP packet is initialized.
[in] | u8 | *mip_buffer - pointer to memory used to construct the mip packet. |
[in] | u8 | descriptor_set - expected descriptor set field value. |
MIP_OK | - MIP packet initialized. |
MIP_ERROR | - The pointer is NULL or the MIP packet is not intialized. |
None
u16 mip_is_mip_packet | ( | u8 * | mip_buffer | ) |
Checks if the buffer contains a valid MIP header.
[in,out] | u8 | *mip_buffer - pointer to memory containing the mip packet. |
MIP_OK | - Header is valid. |
MIP_ERROR | - The pointer is NULL. |
MIP_MEMORY_ERROR | - The buffer does not contain a valid MIP packet header. |
None