buffer.c File Reference

#include "buffer_p.h"
#include <gwenhywfar/misc.h>
#include <gwenhywfar/debug.h>
#include <gwenhywfar/text.h>
Include dependency graph for buffer.c:

Go to the source code of this file.

Defines

#define DISABLE_DEBUGLOG

Functions

int GWEN_Buffer__FillBuffer (GWEN_BUFFER *bf)
int GWEN_Buffer__FillBuffer_Bio (GWEN_BUFFER *bf)
int GWEN_Buffer__FillBuffer_IoLayer (GWEN_BUFFER *bf)
void GWEN_Buffer_AddMode (GWEN_BUFFER *bf, uint32_t mode)
void GWEN_Buffer_AdjustBookmarks (GWEN_BUFFER *bf, uint32_t pos, int offset)
int GWEN_Buffer_AdjustUsedBytes (GWEN_BUFFER *bf)
int GWEN_Buffer_AllocRoom (GWEN_BUFFER *bf, uint32_t size)
int GWEN_Buffer_AppendBuffer (GWEN_BUFFER *bf, GWEN_BUFFER *sf)
int GWEN_Buffer_AppendByte (GWEN_BUFFER *bf, char c)
int GWEN_Buffer_AppendBytes (GWEN_BUFFER *bf, const char *buffer, uint32_t size)
int GWEN_Buffer_AppendString (GWEN_BUFFER *bf, const char *buffer)
int GWEN_Buffer_Crop (GWEN_BUFFER *bf, uint32_t pos, uint32_t l)
int GWEN_Buffer_DecrementPos (GWEN_BUFFER *bf, uint32_t i)
void GWEN_Buffer_Dump (GWEN_BUFFER *bf, FILE *f, unsigned int insert)
GWEN_BUFFERGWEN_Buffer_dup (GWEN_BUFFER *bf)
int GWEN_Buffer_FillLeftWithBytes (GWEN_BUFFER *bf, unsigned char c, uint32_t size)
int GWEN_Buffer_FillWithBytes (GWEN_BUFFER *bf, unsigned char c, uint32_t size)
void GWEN_Buffer_free (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetBookmark (GWEN_BUFFER *bf, unsigned int idx)
uint32_t GWEN_Buffer_GetBytesLeft (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetHardLimit (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetMaxUnsegmentedWrite (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetMode (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetPos (GWEN_BUFFER *bf)
char * GWEN_Buffer_GetPosPointer (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetSize (GWEN_BUFFER *bf)
char * GWEN_Buffer_GetStart (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetStep (GWEN_BUFFER *bf)
uint32_t GWEN_Buffer_GetUsedBytes (GWEN_BUFFER *bf)
int GWEN_Buffer_IncrementPos (GWEN_BUFFER *bf, uint32_t i)
int GWEN_Buffer_InsertBuffer (GWEN_BUFFER *bf, GWEN_BUFFER *sf)
int GWEN_Buffer_InsertByte (GWEN_BUFFER *bf, char c)
int GWEN_Buffer_InsertBytes (GWEN_BUFFER *bf, const char *buffer, uint32_t size)
int GWEN_Buffer_InsertRoom (GWEN_BUFFER *bf, uint32_t size)
int GWEN_Buffer_InsertString (GWEN_BUFFER *bf, const char *buffer)
GWEN_BUFFERGWEN_Buffer_new (char *buffer, uint32_t size, uint32_t used, int take)
int GWEN_Buffer_PeekByte (GWEN_BUFFER *bf)
int GWEN_Buffer_ReadByte (GWEN_BUFFER *bf)
int GWEN_Buffer_ReadBytes (GWEN_BUFFER *bf, char *buffer, uint32_t *size)
int GWEN_Buffer_Relinquish (GWEN_BUFFER *bf)
int GWEN_Buffer_RemoveRoom (GWEN_BUFFER *bf, uint32_t size)
int GWEN_Buffer_ReplaceBytes (GWEN_BUFFER *bf, uint32_t rsize, const char *buffer, uint32_t size)
int GWEN_Buffer_ReserveBytes (GWEN_BUFFER *bf, uint32_t res)
void GWEN_Buffer_Reset (GWEN_BUFFER *bf)
void GWEN_Buffer_Rewind (GWEN_BUFFER *bf)
void GWEN_Buffer_SetBookmark (GWEN_BUFFER *bf, unsigned int idx, uint32_t v)
void GWEN_Buffer_SetHardLimit (GWEN_BUFFER *bf, uint32_t l)
void GWEN_Buffer_SetMode (GWEN_BUFFER *bf, uint32_t mode)
int GWEN_Buffer_SetPos (GWEN_BUFFER *bf, uint32_t i)
void GWEN_Buffer_SetSourceBIO (GWEN_BUFFER *bf, GWEN_BUFFEREDIO *bio, int take)
void GWEN_Buffer_SetSourceIoLayer (GWEN_BUFFER *bf, GWEN_IO_LAYER *io, int take)
void GWEN_Buffer_SetStep (GWEN_BUFFER *bf, uint32_t step)
int GWEN_Buffer_SetUsedBytes (GWEN_BUFFER *bf, uint32_t i)
void GWEN_Buffer_SubMode (GWEN_BUFFER *bf, uint32_t mode)

Define Documentation

#define DISABLE_DEBUGLOG

Definition at line 33 of file buffer.c.


Function Documentation

int GWEN_Buffer__FillBuffer ( GWEN_BUFFER bf  ) 

Definition at line 476 of file buffer.c.

References DBG_DEBUG, GWEN_Buffer__FillBuffer_Bio(), GWEN_Buffer__FillBuffer_IoLayer(), GWEN_BUFFER_MODE_USE_BIO, GWEN_BUFFER_MODE_USE_IO, GWEN_ERROR_EOF, and GWEN_LOGDOMAIN.

Referenced by GWEN_Buffer_PeekByte(), GWEN_Buffer_ReadByte(), and GWEN_Buffer_ReadBytes().

Here is the call graph for this function:

Here is the caller graph for this function:

int GWEN_Buffer__FillBuffer_Bio ( GWEN_BUFFER bf  ) 

Definition at line 401 of file buffer.c.

References DBG_DEBUG, DBG_INFO, DBG_INFO_ERR, GWEN_Buffer_AllocRoom(), GWEN_BufferedIO_CheckEOF(), GWEN_BufferedIO_ReadRawForced(), GWEN_ERROR_EOF, and GWEN_LOGDOMAIN.

Referenced by GWEN_Buffer__FillBuffer().

Here is the call graph for this function:

Here is the caller graph for this function:

int GWEN_Buffer__FillBuffer_IoLayer ( GWEN_BUFFER bf  ) 

Definition at line 435 of file buffer.c.

References DBG_DEBUG, DBG_INFO, GWEN_Buffer_AllocRoom(), GWEN_ERROR_EOF, GWEN_Io_Layer_ReadBytes(), GWEN_IO_REQUEST_FLAGS_READALL, and GWEN_LOGDOMAIN.

Referenced by GWEN_Buffer__FillBuffer().

Here is the call graph for this function:

Here is the caller graph for this function:

void GWEN_Buffer_AdjustBookmarks ( GWEN_BUFFER bf,
uint32_t  pos,
int  offset 
)

Definition at line 778 of file buffer.c.

References GWEN_BUFFER_MAX_BOOKMARKS.

Referenced by GWEN_Buffer_Crop(), GWEN_Buffer_InsertRoom(), and GWEN_Buffer_RemoveRoom().

Here is the caller graph for this function:

Generated on Mon Jul 5 22:52:59 2010 for gwenhywfar by  doxygen 1.6.3