FreeRDP
BufferPool.c File Reference
#include <winpr/config.h>
#include <winpr/crt.h>
#include <winpr/collections.h>

Functions

static BOOL BufferPool_Lock (wBufferPool *pool)
 
static BOOL BufferPool_Unlock (wBufferPool *pool)
 
static BOOL BufferPool_ShiftAvailable (wBufferPool *pool, size_t index, int count)
 
static BOOL BufferPool_ShiftUsed (wBufferPool *pool, SSIZE_T index, SSIZE_T count)
 
SSIZE_T BufferPool_GetPoolSize (wBufferPool *pool)
 
SSIZE_T BufferPool_GetBufferSize (wBufferPool *pool, const void *buffer)
 
void * BufferPool_Take (wBufferPool *pool, SSIZE_T size)
 
BOOL BufferPool_Return (wBufferPool *pool, void *buffer)
 
void BufferPool_Clear (wBufferPool *pool)
 
wBufferPool * BufferPool_New (BOOL synchronized, SSIZE_T fixedSize, DWORD alignment)
 
void BufferPool_Free (wBufferPool *pool)
 

Function Documentation

◆ BufferPool_Clear()

void BufferPool_Clear ( wBufferPool *  pool)

Releases the buffers currently cached in the pool.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_Free()

void BufferPool_Free ( wBufferPool *  pool)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_GetBufferSize()

SSIZE_T BufferPool_GetBufferSize ( wBufferPool *  pool,
const void *  buffer 
)

Get the size of a pooled buffer

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_GetPoolSize()

SSIZE_T BufferPool_GetPoolSize ( wBufferPool *  pool)

Get the buffer pool size

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_Lock()

static BOOL BufferPool_Lock ( wBufferPool *  pool)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_New()

wBufferPool* BufferPool_New ( BOOL  synchronized,
SSIZE_T  fixedSize,
DWORD  alignment 
)

Construction, Destruction

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_Return()

BOOL BufferPool_Return ( wBufferPool *  pool,
void *  buffer 
)

Returns a buffer to the pool.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_ShiftAvailable()

static BOOL BufferPool_ShiftAvailable ( wBufferPool *  pool,
size_t  index,
int  count 
)
static

C equivalent of the C# BufferManager Class: http://msdn.microsoft.com/en-us/library/ms405814.aspx Methods

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_ShiftUsed()

static BOOL BufferPool_ShiftUsed ( wBufferPool *  pool,
SSIZE_T  index,
SSIZE_T  count 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_Take()

void* BufferPool_Take ( wBufferPool *  pool,
SSIZE_T  size 
)

Gets a buffer of at least the specified size from the pool.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BufferPool_Unlock()

static BOOL BufferPool_Unlock ( wBufferPool *  pool)
static
Here is the call graph for this function:
Here is the caller graph for this function: