iLLD_TC29x  1.0
Ifx_Fifo.h File Reference

FIFO buffer functions. More...

#include "Ifx_Cfg.h"
#include "Cpu/Std/IfxCpu_Intrinsics.h"

Go to the source code of this file.

Data Structures

struct  Ifx_Fifo_Shared
 
struct  _Fifo
 

Typedefs

typedef struct _Fifo Ifx_Fifo
 

Functions

IFX_EXTERN boolean Ifx_Fifo_canReadCount (Ifx_Fifo *fifo, Ifx_SizeT count, Ifx_TickTime timeout)
 Indicates if the required number of bytes are available in the buffer. More...
 
IFX_EXTERN boolean Ifx_Fifo_canWriteCount (Ifx_Fifo *fifo, Ifx_SizeT count, Ifx_TickTime timeout)
 Indicates if there is enough free space to write the data in the buffer. More...
 
IFX_EXTERN void Ifx_Fifo_clear (Ifx_Fifo *fifo)
 Clear fifo contents. More...
 
IFX_EXTERN Ifx_FifoIfx_Fifo_create (Ifx_SizeT size, Ifx_SizeT elementSize)
 Create a Fifo object. More...
 
IFX_EXTERN void Ifx_Fifo_destroy (Ifx_Fifo *fifo)
 Destroy the FIFO object. More...
 
IFX_EXTERN Ifx_FifoIfx_Fifo_init (void *buffer, Ifx_SizeT size, Ifx_SizeT elementSize)
 Initialize the FIFO buffer object. More...
 
IFX_EXTERN Ifx_SizeT Ifx_Fifo_read (Ifx_Fifo *fifo, void *data, Ifx_SizeT count, Ifx_TickTime timeout)
 Read data from a fifo and remove them from the buffer. More...
 
IFX_EXTERN Ifx_SizeT Ifx_Fifo_write (Ifx_Fifo *fifo, const void *data, Ifx_SizeT count, Ifx_TickTime timeout)
 Write data into a fifo. More...
 
IFX_INLINE boolean Ifx_Fifo_flush (Ifx_Fifo *fifo, Ifx_TickTime timeout)
 Empty the fifo. More...
 
IFX_INLINE Ifx_SizeT Ifx_Fifo_readCount (Ifx_Fifo *fifo)
 Returns the size of the data in the buffer in bytes. More...
 
IFX_INLINE Ifx_SizeT Ifx_Fifo_writeCount (Ifx_Fifo *fifo)
 Returns the free size in bytes. More...
 
IFX_INLINE boolean Ifx_Fifo_isEmpty (Ifx_Fifo *fifo)
 Indicates if the fifo is empty. More...
 

Detailed Description

FIFO buffer functions.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file Ifx_Fifo.h.


Data Structure Documentation

struct Ifx_Fifo_Shared

Shared data of the FIFO

Definition at line 40 of file Ifx_Fifo.h.

Data Fields
Ifx_SizeT count number of bytes contained in the buffer
Ifx_SizeT maxcount Highest value seen in the count.
sint32 readerWaitx Number of bytes that the reader is waiting for. When the writer modify it to 0 the reader get signaled.
sint32 writerWaitx Number of byte that the writer expect to be free. When the reader modify it to 0 the reader get signaled.