ET System  16.5
All Data Structures Files Functions Variables Typedefs Macros Modules Pages
et_fifo.h File Reference
#include <stdio.h>
#include <sys/types.h>
#include <sys/mman.h>
#include <time.h>
#include <sys/time.h>
#include "et.h"

Go to the source code of this file.

Data Structures

struct  et_fifo_context_t
 Structure to hold the context of a fifo connection to ET. More...
 
struct  et_fifo_entry_t
 Structure to hold the a fifo entry obtained from ET. More...
 

Typedefs

typedef void * et_fifo_id
 ET fifo id. More...
 
typedef struct et_fifo_context_t et_fifo_ctx
 Structure to hold the context of a fifo connection to ET. More...
 
typedef struct et_fifo_entry_t et_fifo_entry
 Structure to hold the a fifo entry obtained from ET. More...
 

Functions

int et_fifo_openProducer (et_sys_id fid, et_fifo_id *fifoId, const int *bufIds, int idCount)
 
int et_fifo_openConsumer (et_sys_id fid, et_fifo_id *fifoId)
 
void et_fifo_close (et_fifo_id fid)
 Routine to close the fifo handle opened with et_fifo_openProducer or et_fifo_openConsumer. More...
 
int et_fifo_newEntry (et_fifo_id fid, et_fifo_entry *entry)
 This routine is called when a user wants an array of related, empty buffers from the ET system into which data can be placed. More...
 
int et_fifo_newEntryTO (et_fifo_id fid, et_fifo_entry *entry, struct timespec *deltatime)
 This routine is called when a user wants an array of related, empty buffers from the ET system into which data can be placed. More...
 
int et_fifo_getEntry (et_fifo_id fid, et_fifo_entry *entry)
 This routine is called when a user wants an array of related, data-filled buffers from the ET system. More...
 
int et_fifo_getEntryTO (et_fifo_id fid, et_fifo_entry *entry, struct timespec *deltatime)
 This routine is called when a user wants an array of related, data-filled buffers from the ET system. More...
 
int et_fifo_putEntry (et_fifo_entry *entry)
 This routine is called when a user wants to place an array of related, data-filled buffers (single FIFO entry) back into the ET system. More...
 
int et_fifo_allHaveData (et_fifo_id id, et_fifo_entry *entry, int *incompleteBufs, size_t *incompleteBytes)
 This routine gets whether all events (associated with an id) in the given ET fifo entry have data in it or not. More...
 
int et_fifo_getEntryCount (et_fifo_id id)
 This routine gets the max number of fifo entries possibly available to consumer. More...
 
int et_fifo_getFillLevel (et_fifo_id id)
 
size_t et_fifo_getBufSize (et_fifo_id fid)
 This routine gets the max size of each buffer in bytes. More...
 
int et_fifo_getEntryCapacity (et_fifo_id fid)
 This routine gets the max number of buffers in each FIFO entry. More...
 
et_event ** et_fifo_getBufs (et_fifo_entry *entry)
 This routine gives access to the ET events or buffers in a fifo entry obtained by calling either et_fifo_getEntry, et_fifo_getEntryTO, et_fifo_newEntry, or et_fifo_newEntryTO. More...
 
et_eventet_fifo_getBuf (int id, et_fifo_entry *entry)
 Find the event/buffer in the fifo entry corresponding to the given id. More...
 
void et_fifo_setId (et_event *ev, int id)
 This routine sets an id value associated with this ET event/buffer. More...
 
int et_fifo_getId (et_event *ev)
 This routine gets an id value associated with this ET event/buffer. More...
 
void et_fifo_setHasData (et_event *ev, int hasData)
 This routine sets whether this ET event has data in it. More...
 
int et_fifo_hasData (et_event *ev)
 This routine gets whether this ET event has data in it or not. More...
 
int et_fifo_getIdCount (et_fifo_id id)
 This routine gets the number of buffers assigned an id in each FIFO entry. More...
 
int et_fifo_getBufIds (et_fifo_id id, int *bufIds)
 This routine gets the array of ids assigned to buffers in each FIFO entry. More...
 
et_fifo_entryet_fifo_entryCreate (et_fifo_id fid)
 Routine to allocate a structure holding a fifo entry (array of ET events) associated with the given fifo id. More...
 
void et_fifo_freeEntry (et_fifo_entry *entry)
 Routine to free a fifo entry created with et_fifo_entryCreate. More...
 

Typedef Documentation

◆ et_fifo_ctx

Structure to hold the context of a fifo connection to ET.

◆ et_fifo_entry

Structure to hold the a fifo entry obtained from ET.

◆ et_fifo_id

typedef void* et_fifo_id

ET fifo id.