io_buffered.c File Reference

#include "io_buffered_p.h"
#include <gwenhywfar/iolayer_be.h>
#include <gwenhywfar/iorequest_be.h>
#include <gwenhywfar/iomanager.h>
#include "i18n_l.h"
#include <gwenhywfar/misc.h>
#include <gwenhywfar/debug.h>
#include <gwenhywfar/gui.h>
#include <assert.h>
Include dependency graph for io_buffered.c:

Go to the source code of this file.

Functions

void GWEN_Io_LayerBuffered_AbortInRequests (GWEN_IO_LAYER *io, int errorCode)
void GWEN_Io_LayerBuffered_AbortOutRequests (GWEN_IO_LAYER *io)
int GWEN_Io_LayerBuffered_AddRequest (GWEN_IO_LAYER *io, GWEN_IO_REQUEST *r)
int GWEN_Io_LayerBuffered_DelRequest (GWEN_IO_LAYER *io, GWEN_IO_REQUEST *r)
GWENHYWFAR_CB void GWEN_Io_LayerBuffered_freeData (void *bp, void *p)
uint32_t GWEN_Io_LayerBuffered_GetReadLineCount (const GWEN_IO_LAYER *io)
uint32_t GWEN_Io_LayerBuffered_GetReadLinePos (const GWEN_IO_LAYER *io)
int GWEN_Io_LayerBuffered_HasWaitingRequests (GWEN_IO_LAYER *io)
GWEN_IO_LAYERGWEN_Io_LayerBuffered_new (GWEN_IO_LAYER *baseLayer)
int GWEN_Io_LayerBuffered_ReadLineToBuffer (GWEN_IO_LAYER *io, GWEN_BUFFER *fbuf, uint32_t guiid, int msecs)
void GWEN_Io_LayerBuffered_ResetLinePosAndCounter (GWEN_IO_LAYER *io)
int GWEN_Io_LayerBuffered_TryFlush (GWEN_IO_LAYER *io)
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnReadRequest (GWEN_IO_LAYER *io)
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnRequests (GWEN_IO_LAYER *io)
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnWriteRequest (GWEN_IO_LAYER *io)
int GWEN_Io_LayerBuffered_WriteLine (GWEN_IO_LAYER *io, const char *buffer, int len, int flush, uint32_t guiid, int msecs)

Function Documentation

void GWEN_Io_LayerBuffered_AbortInRequests ( GWEN_IO_LAYER io,
int  errorCode 
)

Definition at line 80 of file io_buffered.c.

References DBG_INFO, GWEN_INHERIT_GETDATA, GWEN_Io_Request_Finished(), GWEN_Io_Request_free(), GWEN_Io_Request_StatusFinished, GWEN_LOGDOMAIN, and NULL.

Referenced by GWEN_Io_LayerBuffered_AddRequest(), and GWEN_Io_LayerBuffered_freeData().

Here is the call graph for this function:

Here is the caller graph for this function:

void GWEN_Io_LayerBuffered_AbortOutRequests ( GWEN_IO_LAYER io  ) 

Definition at line 109 of file io_buffered.c.

References GWEN_INHERIT_GETDATA, GWEN_Io_Layer_DelRequest(), GWEN_Io_Layer_GetBaseLayer(), GWEN_Io_Request_free(), and NULL.

Referenced by GWEN_Io_LayerBuffered_AddRequest(), and GWEN_Io_LayerBuffered_freeData().

Here is the call graph for this function:

Here is the caller graph for this function:

int GWEN_Io_LayerBuffered_AddRequest ( GWEN_IO_LAYER io,
GWEN_IO_REQUEST r 
)
int GWEN_Io_LayerBuffered_DelRequest ( GWEN_IO_LAYER io,
GWEN_IO_REQUEST r 
)
GWENHYWFAR_CB void GWEN_Io_LayerBuffered_freeData ( void *  bp,
void *  p 
)

Definition at line 60 of file io_buffered.c.

References GWEN_ERROR_ABORTED, GWEN_FREE_OBJECT, GWEN_Io_LayerBuffered_AbortInRequests(), GWEN_Io_LayerBuffered_AbortOutRequests(), and GWEN_RingBuffer_free().

Referenced by GWEN_Io_LayerBuffered_new().

Here is the call graph for this function:

Here is the caller graph for this function:

int GWEN_Io_LayerBuffered_HasWaitingRequests ( GWEN_IO_LAYER io  ) 

Definition at line 801 of file io_buffered.c.

References GWEN_INHERIT_GETDATA.

Referenced by GWEN_Io_LayerBuffered_new().

Here is the caller graph for this function:

int GWEN_Io_LayerBuffered_TryFlush ( GWEN_IO_LAYER io  ) 
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnReadRequest ( GWEN_IO_LAYER io  ) 

Definition at line 136 of file io_buffered.c.

References DBG_INFO, DBG_VERBOUS, GWEN_ERROR_EOF, GWEN_ERROR_TRY_AGAIN, GWEN_INHERIT_GETDATA, GWEN_Io_Layer_AddFlags(), GWEN_Io_Layer_AddIncomingLayer(), GWEN_Io_Layer_AddRequest(), GWEN_IO_LAYER_FLAGS_PASSIVE, GWEN_Io_Layer_GetBaseLayer(), GWEN_Io_Layer_GetFlags(), GWEN_Io_Layer_GetNextIncomingLayer(), GWEN_Io_Layer_GetStatus(), GWEN_Io_Layer_StatusListening, GWEN_Io_Layer_WorkResultBlocking, GWEN_Io_Layer_WorkResultOk, GWEN_Io_LayerBuffered_new(), GWEN_Io_Request_AddFlags(), GWEN_IO_REQUEST_BUFFERED_FLAGS_PEEK, GWEN_IO_REQUEST_BUFFERED_FLAGS_RAW, GWEN_IO_REQUEST_BUFFERED_FLAGS_UNTILEMPTYLINE, GWEN_Io_Request_Finished(), GWEN_IO_REQUEST_FLAGS_PACKETEND, GWEN_IO_REQUEST_FLAGS_READALL, GWEN_Io_Request_free(), GWEN_Io_Request_GetBufferPos(), GWEN_Io_Request_GetBufferPtr(), GWEN_Io_Request_GetBufferSize(), GWEN_Io_Request_GetFlags(), GWEN_Io_Request_GetGuiId(), GWEN_Io_Request_GetResultCode(), GWEN_Io_Request_GetStatus(), GWEN_Io_Request_new(), GWEN_Io_Request_SetBufferPos(), GWEN_Io_Request_StatusFinished, GWEN_Io_Request_TypeRead, GWEN_LOGDOMAIN, GWEN_RingBuffer_GetMaxUnsegmentedRead(), GWEN_RingBuffer_GetMaxUnsegmentedWrite(), GWEN_RingBuffer_GetReadPointer(), GWEN_RingBuffer_GetWritePointer(), GWEN_RingBuffer_new(), GWEN_RingBuffer_SkipBytesRead(), GWEN_RingBuffer_SkipBytesWrite(), and NULL.

Referenced by GWEN_Io_LayerBuffered_WorkOnRequests().

Here is the call graph for this function:

Here is the caller graph for this function:

GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnRequests ( GWEN_IO_LAYER io  ) 
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerBuffered_WorkOnWriteRequest ( GWEN_IO_LAYER io  ) 
Generated on Mon Jul 5 22:53:28 2010 for gwenhywfar by  doxygen 1.6.3