CDI SDK
SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.
Loading...
Searching...
No Matches
rx_reorder_payloads.h
Go to the documentation of this file.
1// -------------------------------------------------------------------------------------------
2// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
3// This file is part of the AWS CDI-SDK, licensed under the BSD 2-Clause "Simplified" License.
4// License details at: https://github.com/aws/aws-cdi-sdk/blob/mainline/LICENSE
5// -------------------------------------------------------------------------------------------
6
13#ifndef RX_REORDER_PAYLOADS_H__
14#define RX_REORDER_PAYLOADS_H__
15
16#include <stdint.h>
17
18#include "internal.h"
19
20//*********************************************************************************************************************
21//***************************************** START OF DEFINITIONS AND TYPES ********************************************
22//*********************************************************************************************************************
23
24//*********************************************************************************************************************
25//******************************************* START OF PUBLIC FUNCTIONS ***********************************************
26//*********************************************************************************************************************
27
39RxPayloadState* RxReorderPayloadStateGet(CdiEndpointState* endpoint_ptr, CdiPoolHandle rx_payload_state_pool_handle,
40 int sequence_num);
41
48void RxReorderPayloadResetState(RxPayloadState* payload_state_ptr, int payload_num);
49
50
57void RxReorderPayloadError(CdiEndpointState* endpoint_ptr, RxPayloadState* payload_state_ptr);
58
68bool RxReorderPayloadIsStale(CdiEndpointState* endpoint_ptr, RxPayloadState* payload_state_ptr);
69
76void RxReorderPayloadSendPayload(CdiEndpointState* endpoint_ptr, RxPayloadState* send_payload_state_ptr);
77
84
91
92#endif // RX_REORDER_PAYLOADS_H__
The declarations in this header file correspond to the definitions in internal.c.
void RxReorderPayloadSeekFirstPayload(CdiEndpointState *endpoint_ptr)
Definition rx_reorder_payloads.c:272
RxPayloadState * RxReorderPayloadStateGet(CdiEndpointState *endpoint_ptr, CdiPoolHandle rx_payload_state_pool_handle, int sequence_num)
Definition rx_reorder_payloads.c:223
bool RxReorderPayloadIsStale(CdiEndpointState *endpoint_ptr, RxPayloadState *payload_state_ptr)
Determine if a payload has not received any packets within the packet out of order window....
Definition rx_reorder_payloads.c:209
void RxReorderPayloadError(CdiEndpointState *endpoint_ptr, RxPayloadState *payload_state_ptr)
Set payload in an error state and free associated payload resources (but not payload state).
Definition rx_reorder_payloads.c:192
void RxReorderPayloadResetState(RxPayloadState *payload_state_ptr, int payload_num)
Definition rx_reorder_payloads.c:181
void RxReorderPayloadSendPayload(CdiEndpointState *endpoint_ptr, RxPayloadState *send_payload_state_ptr)
void RxReorderPayloadSendReadyPayloads(CdiEndpointState *endpoint_ptr)
Definition rx_reorder_payloads.c:246
Structure definition behind the connection handles shared with the user's application program....
Definition private.h:330
This structure represents the current state of a memory pool.
Definition pool.c:46
This defines a structure that contains all of the state information for the receiving side of a paylo...
Definition private.h:244