gwenhywfar  4.17.0
Macros | Typedefs | Functions
buffer.h File Reference
#include <gwenhywfar/gwenhywfarapi.h>
#include <gwenhywfar/types.h>
#include <gwenhywfar/syncio.h>
#include <stdio.h>
#include <string.h>

Go to the source code of this file.

Macros

#define GWEN_BUFFER_MAX_BOOKMARKS   64
 
#define GWEN_BUFFER_MODE_ABORT_ON_MEMFULL   0x0002
 
#define GWEN_BUFFER_MODE_DEFAULT
 
#define GWEN_BUFFER_MODE_DYNAMIC   0x0001
 
#define GWEN_BUFFER_MODE_READONLY   0x0020
 
#define GWEN_BUFFER_MODE_USE_SYNCIO   0x0010
 

Typedefs

typedef struct GWEN_BUFFER GWEN_BUFFER
 A dynamically resizeable text buffer. More...
 

Functions

GWENHYWFAR_API void GWEN_Buffer_AddMode (GWEN_BUFFER *bf, uint32_t mode)
 
GWENHYWFAR_API int GWEN_Buffer_AdjustUsedBytes (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_AllocRoom (GWEN_BUFFER *bf, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_AppendBuffer (GWEN_BUFFER *bf, GWEN_BUFFER *sf)
 
GWENHYWFAR_API int GWEN_Buffer_AppendByte (GWEN_BUFFER *bf, char c)
 
GWENHYWFAR_API int GWEN_Buffer_AppendBytes (GWEN_BUFFER *bf, const char *buffer, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_AppendString (GWEN_BUFFER *bf, const char *buffer)
 
GWENHYWFAR_API void GWEN_Buffer_Attach (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWENHYWFAR_CB GWEN_Buffer_CacheFn_Attach (void *ptr)
 
GWENHYWFAR_API int GWENHYWFAR_CB GWEN_Buffer_CacheFn_Free (void *ptr)
 
GWENHYWFAR_API int GWEN_Buffer_Crop (GWEN_BUFFER *bf, uint32_t pos, uint32_t l)
 
GWENHYWFAR_API int GWEN_Buffer_DecrementPos (GWEN_BUFFER *bf, uint32_t i)
 
GWENHYWFAR_API void GWEN_Buffer_Dump (GWEN_BUFFER *bf, unsigned int insert)
 
GWENHYWFAR_API GWEN_BUFFERGWEN_Buffer_dup (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_FillLeftWithBytes (GWEN_BUFFER *bf, unsigned char c, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_FillWithBytes (GWEN_BUFFER *bf, unsigned char c, uint32_t size)
 
GWENHYWFAR_API void GWEN_Buffer_free (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetBookmark (const GWEN_BUFFER *bf, unsigned int idx)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetBytesLeft (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetHardLimit (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetMaxUnsegmentedWrite (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetMode (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetPos (const GWEN_BUFFER *bf)
 
GWENHYWFAR_API char * GWEN_Buffer_GetPosPointer (const GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetSize (const GWEN_BUFFER *bf)
 
GWENHYWFAR_API char * GWEN_Buffer_GetStart (const GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetStep (GWEN_BUFFER *bf)
 
GWENHYWFAR_API uint32_t GWEN_Buffer_GetUsedBytes (const GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_IncrementPos (GWEN_BUFFER *bf, uint32_t i)
 
GWENHYWFAR_API int GWEN_Buffer_InsertBuffer (GWEN_BUFFER *bf, GWEN_BUFFER *sf)
 
GWENHYWFAR_API int GWEN_Buffer_InsertByte (GWEN_BUFFER *bf, char c)
 
GWENHYWFAR_API int GWEN_Buffer_InsertBytes (GWEN_BUFFER *bf, const char *buffer, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_InsertRoom (GWEN_BUFFER *bf, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_InsertString (GWEN_BUFFER *bf, const char *buffer)
 
GWENHYWFAR_API GWEN_BUFFERGWEN_Buffer_new (char *buffer, uint32_t size, uint32_t used, int take_ownership)
 
GWENHYWFAR_API void GWEN_Buffer_OverwriteContent (GWEN_BUFFER *bf, int c)
 
GWENHYWFAR_API int GWEN_Buffer_PeekByte (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_ReadByte (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_ReadBytes (GWEN_BUFFER *bf, char *buffer, uint32_t *size)
 
GWENHYWFAR_API int GWEN_Buffer_Relinquish (GWEN_BUFFER *bf)
 
GWENHYWFAR_API int GWEN_Buffer_RemoveRoom (GWEN_BUFFER *bf, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_ReplaceBytes (GWEN_BUFFER *bf, uint32_t rsize, const char *buffer, uint32_t size)
 
GWENHYWFAR_API int GWEN_Buffer_ReserveBytes (GWEN_BUFFER *bf, uint32_t res)
 
GWENHYWFAR_API void GWEN_Buffer_Reset (GWEN_BUFFER *bf)
 
GWENHYWFAR_API void GWEN_Buffer_Rewind (GWEN_BUFFER *bf)
 
GWENHYWFAR_API void GWEN_Buffer_SetBookmark (GWEN_BUFFER *bf, unsigned int idx, uint32_t v)
 
GWENHYWFAR_API void GWEN_Buffer_SetHardLimit (GWEN_BUFFER *bf, uint32_t l)
 
GWENHYWFAR_API void GWEN_Buffer_SetMode (GWEN_BUFFER *bf, uint32_t mode)
 
GWENHYWFAR_API int GWEN_Buffer_SetPos (GWEN_BUFFER *bf, uint32_t i)
 
GWENHYWFAR_API void GWEN_Buffer_SetSourceSyncIo (GWEN_BUFFER *bf, GWEN_SYNCIO *sio, int take)
 
GWENHYWFAR_API void GWEN_Buffer_SetStep (GWEN_BUFFER *bf, uint32_t step)
 
GWENHYWFAR_API void GWEN_Buffer_SubMode (GWEN_BUFFER *bf, uint32_t mode)