PoDoFo::PdfRefCountedBuffer Class Reference

#include <PdfRefCountedBuffer.h>

List of all members.

Public Member Functions

 PdfRefCountedBuffer ()
 PdfRefCountedBuffer (char *pBuffer, long lSize)
 PdfRefCountedBuffer (long lSize)
 PdfRefCountedBuffer (const PdfRefCountedBuffer &rhs)
 ~PdfRefCountedBuffer ()
char * GetBuffer () const
long GetSize () const
void Resize (size_t lSize)
const PdfRefCountedBufferoperator= (const PdfRefCountedBuffer &rhs)
void SetTakePossesion (bool bTakePossession)
bool TakePossesion () const
bool operator== (const PdfRefCountedBuffer &rhs) const
bool operator< (const PdfRefCountedBuffer &rhs) const
bool operator> (const PdfRefCountedBuffer &rhs) const


Detailed Description

A reference counted buffer object which is deleted as soon as the last object having access to it is delteted.

The attached memory object can be resized.


Constructor & Destructor Documentation

PoDoFo::PdfRefCountedBuffer::PdfRefCountedBuffer (  )  [inline]

Created an empty reference counted buffer The buffer will be initialize to NULL

PoDoFo::PdfRefCountedBuffer::PdfRefCountedBuffer ( char *  pBuffer,
long  lSize 
)

Created an reference counted buffer and use an exiting buffer The buffer will be owned by this object.

Parameters:
pBuffer a pointer to an allocated buffer
lSize size of the allocated buffer
See also:
SetTakePossesion

PoDoFo::PdfRefCountedBuffer::PdfRefCountedBuffer ( long  lSize  )  [inline]

Create a new PdfRefCountedBuffer.

Parameters:
lSize buffer size

PoDoFo::PdfRefCountedBuffer::PdfRefCountedBuffer ( const PdfRefCountedBuffer rhs  )  [inline]

Copy an existing PdfRefCountedBuffer and increase the reference count

Parameters:
rhs the PdfRefCountedBuffer to copy

PoDoFo::PdfRefCountedBuffer::~PdfRefCountedBuffer (  )  [inline]

Decrease the reference count and delete the buffer if this is the last owner


Member Function Documentation

char * PoDoFo::PdfRefCountedBuffer::GetBuffer (  )  const [inline]

Get access to the buffer

Returns:
the buffer

long PoDoFo::PdfRefCountedBuffer::GetSize (  )  const [inline]

Return the buffer size.

Returns:
the buffer size

bool PoDoFo::PdfRefCountedBuffer::operator< ( const PdfRefCountedBuffer rhs  )  const

Compare to buffers.

Parameters:
rhs compare to this buffer
Returns:
true if this buffer is lexically littler than rhs

const PdfRefCountedBuffer & PoDoFo::PdfRefCountedBuffer::operator= ( const PdfRefCountedBuffer rhs  ) 

Copy an existing PdfRefCountedBuffer and increase the reference count

Parameters:
rhs the PdfRefCountedBuffer to copy
Returns:
the copied object

bool PoDoFo::PdfRefCountedBuffer::operator== ( const PdfRefCountedBuffer rhs  )  const

Compare to buffers.

Parameters:
rhs compare to this buffer
Returns:
true if both buffers contain the same contents

bool PoDoFo::PdfRefCountedBuffer::operator> ( const PdfRefCountedBuffer rhs  )  const

Compare to buffers.

Parameters:
rhs compare to this buffer
Returns:
true if this buffer is lexically greater than rhs

void PoDoFo::PdfRefCountedBuffer::Resize ( size_t  lSize  )  [inline]

Resize the buffer to hold at least lSize bytes.

Parameters:
lSize the size of bytes the buffer can at least hold
If the buffer is larger no operation is performed.

void PoDoFo::PdfRefCountedBuffer::SetTakePossesion ( bool  bTakePossession  )  [inline]

If the PdfRefCountedBuffer has no possesion on its buffer, it won't delete the buffer. By default the buffer is owned and deleted by the PdfRefCountedBuffer object.

Parameters:
bTakePossession if false the buffer will not be deleted.

bool PoDoFo::PdfRefCountedBuffer::TakePossesion (  )  const [inline]

Returns:
true if the buffer is owned by the PdfRefCountedBuffer and is deleted along with it.


Generated on Sat May 2 02:59:48 2009 for PoDoFo by  doxygen 1.4.7