![]() |
Ultralight C++ API 1.4.0
|
#include <Ultralight/Buffer.h>
A fixed-size container for raw byte data.
This class is used to represent raw data buffers in Ultralight. It intelligently manages the lifetime of the data and can optionally call a user-supplied callback to deallocate the data when the Buffer is destroyed.
Static Public Member Functions | |
| static RefPtr< Buffer > | Create (void *data, size_t size, void *user_data, DestroyBufferCallback destruction_callback) |
| Create a Buffer from existing, user-owned data without any copies. | |
| static RefPtr< Buffer > | CreateFromCopy (const void *data, size_t size) |
| Create a Buffer from existing data, a deep copy of data will be made. | |
Public Member Functions | |
| virtual void * | data ()=0 |
| Get a pointer to the raw byte data. | |
| virtual size_t | size () const =0 |
| Get the size in bytes. | |
| virtual void * | user_data ()=0 |
| Get the user data associated with this Buffer, if any. | |
| virtual bool | owns_data () const =0 |
| Check whether this Buffer owns its own data (Buffer was created via CreateFromCopy). | |
Public Member Functions inherited from RefCounted | |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
| virtual int | ref_count () const =0 |
Protected Member Functions | |
| Buffer () | |
| virtual | ~Buffer () |
| Buffer (const Buffer &) | |
| void | operator= (const Buffer &) |
Protected Member Functions inherited from RefCounted | |
| virtual | ~RefCounted () |
|
protected |
|
protectedvirtual |
|
static |
Create a Buffer from existing, user-owned data without any copies.
An optional, user-supplied callback will be called to deallocate data upon destruction.
| data | A pointer to the data. |
| size | Size of the data in bytes. |
| user_data | Optional user data that will be passed to destruction_callback when the returned Buffer is destroyed. |
| destruction_callback | Optional callback that will be called upon destruction. Pass a null pointer if you don't want to be informed of destruction. |
Create a Buffer from existing data, a deep copy of data will be made.
|
pure virtual |
Get a pointer to the raw byte data.
|
protected |
|
pure virtual |
|
pure virtual |
Get the size in bytes.
|
pure virtual |
Get the user data associated with this Buffer, if any.