12#ifndef CDI_PAYLOAD_H__
13#define CDI_PAYLOAD_H__
136 char* header_ptr,
int header_buffer_size,
CdiPoolHandle packet_sgl_entry_pool_handle,
138 bool* ret_is_last_packet_ptr);
This file declares the public API data types, structures and functions that comprise the CDI low-leve...
This file declares the public API data types, structures and functions that comprise the CDI Pool Uti...
struct CdiPacketizerState * CdiPacketizerStateHandle
An opaque type for the packetizer to keep track of its progress in case it must be suspended for lack...
Definition payload.h:61
void PayloadPacketizerDestroy(CdiPacketizerStateHandle packetizer_state_handle)
Definition payload.c:126
void PayloadPacketizerStateInit(CdiPacketizerStateHandle packetizer_state_handle)
Definition payload.c:121
struct CdiProtocol * CdiProtocolHandle
Forward reference of structure to create pointers later.
Definition payload.h:74
CdiPayloadType
Enumeration used to identify packet type.
Definition payload.h:30
@ kPayloadTypeData
Payload contains application payload data.
Definition payload.h:31
@ kPayloadTypeProbe
Payload contains probe data.
Definition payload.h:33
@ kPayloadTypeKeepAlive
Definition payload.h:34
@ kPayloadTypeDataOffset
Payload contains application payload data with data offset field in each packet.
Definition payload.h:32
bool PayloadInit(CdiConnectionState *con_state_ptr, const CdiSgList *source_sgl_ptr, TxPayloadState *payload_state_ptr)
Definition payload.c:65
CdiPacketizerStateHandle PayloadPacketizerCreate(void)
Definition payload.c:116
bool PayloadPacketizerPacketGet(CdiProtocolHandle protocol_handle, CdiPacketizerStateHandle packetizer_state_handle, char *header_ptr, int header_buffer_size, CdiPoolHandle packet_sgl_entry_pool_handle, TxPayloadState *payload_state_ptr, CdiSgList *packet_sgl_ptr, bool *ret_is_last_packet_ptr)
Definition payload.c:133
This header file contains definitions of types and the one global variable used internally by the SDK...
Structure definition behind the connection handles shared with the user's application program....
Definition private.h:371
Structure to store the current state of a packet being constructed. Its purpose is to allow for the s...
Definition payload.c:36
Structure used to hold state data for a single payload.
Definition payload.h:41
uint16_t packet_payload_data_size
Size in bytes of payload data in current CDI packet.
Definition payload.h:51
int source_entry_address_offset
Definition payload.h:54
uint32_t packet_id
Current CDI packet ID.
Definition payload.h:50
uint8_t maximum_tx_sgl_entries
Maximum number of SGL entries for a packet.
Definition payload.h:44
CdiPayloadType payload_type
Payload type (application or keep alive).
Definition payload.h:42
uint32_t payload_data_offset
Current offset of payload data.
Definition payload.h:57
uint16_t maximum_packet_byte_size
Maximum size of packets in bytes.
Definition payload.h:43
const CdiSglEntry * source_entry_ptr
Current source payload SGL entry being used.
Definition payload.h:53
uint16_t packet_sequence_num
Current CDI packet sequence number.
Definition payload.h:49
uint16_t payload_num
Definition payload.h:46
This structure represents the current state of a memory pool.
Definition pool.c:46
Structure used to hold negotiated protocol version information.
Definition protocol.h:242
This structure defines a scatter-gather list (SGL) which is used to represent an array of data compri...
Definition cdi_core_api.h:728
This structure represents a single, contiguous region of memory as part of a scatter-gather list.
Definition cdi_core_api.h:709
This defines a structure that contains all of the state information for sending a single payload.
Definition private.h:141