|
Ardour
9.0-pre0-1950-g391fe97693
|
#include <pool.h>
Public Member Functions | |
| Pool (std::string name, unsigned long item_size, unsigned long nitems, PoolDumpCallback cb=NULL) | |
| virtual | ~Pool () |
| virtual void * | alloc () |
| virtual void | release (void *) |
| std::string | name () const |
| guint | available () const |
| guint | used () const |
| guint | total () const |
Protected Attributes | |
| PBD::RingBuffer< void * > | free_list |
| a list of pointers to free items within block More... | |
| std::string | _name |
Private Attributes | |
| void * | _block |
| data storage area More... | |
| PoolDumpCallback | _dump |
| callback to print pool contents More... | |
| unsigned long | max_usage |
A pool of data items that can be allocated, read from and written to without system memory allocation or locking.
| PBD::Pool::Pool | ( | std::string | name, |
| unsigned long | item_size, | ||
| unsigned long | nitems, | ||
| PoolDumpCallback | cb = NULL |
||
| ) |
|
virtual |
|
virtual |
Reimplemented in PBD::CrossThreadPool, PBD::MultiAllocSingleReleasePool, and PBD::SingleAllocMultiReleasePool.
|
virtual |
Reimplemented in PBD::MultiAllocSingleReleasePool, and PBD::SingleAllocMultiReleasePool.
|
private |
|
protected |