64#ifndef PTX_FIFO_IO_RQ_H
65#define PTX_FIFO_IO_RQ_H
79#define PTX_FIFO_IORQ_EMPTY 0
80#define PTX_FIFO_IORQ_MIN_SIZE 2
ptxStatus_t ptxFifo_IoRq_Init(ptxFifoIoRq_t *fifoIoRq, struct ptxOsal *osAl, ptxLog_t *logger, size_t fifoCapacity)
Initialize the FIFO I/O Request Structure.
ptxStatus_t ptxFifo_IoRq_PostQuitRequest(ptxFifoIoRq_t *fifoIoRq)
Post a thread exit request to the tail of FIFO.
ptxStatus_t ptxFifo_IoRq_DeInit(ptxFifoIoRq_t *fifoIoRq)
Shut down the FIFO I/O Request Structure.
ptxStatus_t ptxFifo_IoRq_Post(ptxFifoIoRq_t *fifoIoRq, ptxIoRq_t *ioRq)
Post a new entry to the tail of FIFO that stores I/O requests.
struct ptxFifoIoRq ptxFifoIoRq_t
FIFO I/O Request structure.
uint16_t ptxStatus_t
Status Type.
Definition ptx_Status.h:82
enum ptxStatus_Comps ptxStatus_Comps_t
Component Definitions.
struct ptxMutex * ptxMutex_t
Mutex Wrapper Structure - Forward Declaration.
Definition ptxOsal.h:95
struct ptxSemaphore * ptxSemaphore_t
Semaphore Wrapper Structure - Forward Declaration.
Definition ptxOsal.h:100
ptxStatus_t ptxFifo_IoRq_Get(ptxFifoIoRq_t *fifoIoRq, ptxIoRq_t **ioRq)
Get the entry of the FIFO that stores I/O requests.
FIFO I/O Request structure.
Definition ptx_Fifo_IoRq.h:96
ptxSemaphore_t SemSynq
Definition ptx_Fifo_IoRq.h:105
uint32_t IoTail
Definition ptx_Fifo_IoRq.h:103
uint32_t IoHead
Definition ptx_Fifo_IoRq.h:102
ptxLog_t * LOG
Definition ptx_Fifo_IoRq.h:99
size_t Capacity
Definition ptx_Fifo_IoRq.h:101
ptxMutex_t Mutex
Definition ptx_Fifo_IoRq.h:104
ptxIoRq_t ** IoRequest
Definition ptx_Fifo_IoRq.h:100
ptxStatus_Comps_t CompId
Definition ptx_Fifo_IoRq.h:97
ptxSemaphore_t SemCapacity
Definition ptx_Fifo_IoRq.h:106
struct ptxOsal * OS
Definition ptx_Fifo_IoRq.h:98
I/O Request structure.
Definition ptx_IoRq.h:154
Logger Component Structure.
Definition ptxLog.h:208