All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
uhd::transport::buffer_pool Class Referenceabstract

`#include <buffer_pool.hpp>`

Inheritance diagram for uhd::transport::buffer_pool:

## Public Types

typedef boost::shared_ptr < buffer_pool > | sptr
typedef void * | ptr_type

## Public Member Functions

virtual ptr_type | at (const size_t index) const =0
| Get a pointer to the buffer start at the specified index. More...
virtual size_t | size (void) const =0
| Get the number of buffers in this pool. More...

## Static Public Member Functions

static sptr | make (const size_t num_buffs, const size_t buff_size, const size_t alignment=16)

## Detailed Description

A buffer pool manages memory for a homogeneous set of buffers. Each buffer is the pool start at a 16-byte alignment boundary.

## Member Typedef Documentation

typedef void* uhd::transport::buffer_pool::ptr_type

typedef boost::shared_ptr<buffer_pool> uhd::transport::buffer_pool::sptr

## Member Function Documentation

virtual ptr_type uhd::transport::buffer_pool::at | ( | const size_t | index | ) | const

pure virtual

Get a pointer to the buffer start at the specified index.

static sptr uhd::transport::buffer_pool::make | ( | const size_t | num_buffs,
|  | const size_t | buff_size,
|  | const size_t | alignment = `16`
| ) |  |

static

Make a new buffer pool.

Parameters

  num_buffs | the number of buffers to allocate
  buff_size | the size of each buffer in bytes
  alignment | the alignment boundary in bytes

Returns
  a new buffer pool buff_size X num_buffs

virtual size_t uhd::transport::buffer_pool::size | ( | void |  | ) | const

pure virtual

Get the number of buffers in this pool.

The documentation for this class was generated from the following file:

- include/uhd/transport/buffer_pool.hpp