23#ifndef REFERENCECOUNTEDBUFFER_H
24#define REFERENCECOUNTEDBUFFER_H
89 void resize(
size_t newSize);
94 operator uint8_t *() {
return static_cast<uint8_t *
>(
s_pData); }
95 operator uint16_t *() {
return static_cast<uint16_t *
>(
s_pData); }
96 operator uint32_t *() {
return static_cast<uint32_t *
>(
s_pData); }
Definition: BufferArena.cpp:29
A reference-counted buffer with dynamic storage.
Definition: ReferenceCountedBuffer.h:52
void * s_pData
Data pointer.
Definition: ReferenceCountedBuffer.h:55
size_t s_references
Number of references.
Definition: ReferenceCountedBuffer.h:54
void dereference()
Remove a reference to the storage.
Definition: ReferenceCountedBuffer.cpp:75
size_t s_size
Number of bytes of data.
Definition: ReferenceCountedBuffer.h:53
void resize(size_t newSize)
Resize the storage.
Definition: ReferenceCountedBuffer.cpp:88
void reference()
Add a reference to the storage.
Definition: ReferenceCountedBuffer.cpp:69
virtual ~ReferenceCountedBuffer()
Destructor.
Definition: ReferenceCountedBuffer.cpp:54
ReferenceCountedBuffer(size_t initialSize=0)
Construct the buffer.
Definition: ReferenceCountedBuffer.cpp:38
bool isReferenced()
Are there references to the object?
Definition: ReferenceCountedBuffer.cpp:77