BRefData Class Reference

#include <BRefData.h>

List of all members.

Public Member Functions

 BRefData ()
 BRefData (int len)
 BRefData (const BRefData &refData)
 ~BRefData ()
BRefDatacopy ()
 Create a copy of this reference for writing, if necessary.
BRefDataaddRef ()
 Increment the reference counter.
int deleteRef ()
 Decrement the reference counter.
char * data ()
 Return the raw data pointer.
int len ()
 Return the length in bytes.
BRefDataoperator= (const BRefData &refData)
void setLen (int len)
 Set the length in bytes. Note should only be used if orefCount = 1.

Private Attributes

BAtomicCount orefCount
 The reference count, how many users.
int olen
 The actual length of data in oData.
void * odata
 Pointer to the data.


Detailed Description

Referenced data storage. This is Thread safe to a degree. The reference counting is protected. However, setLen() is not and should be protected at a higher level.


Constructor & Destructor Documentation

BRefData::BRefData (  ) 

BRefData::BRefData ( int  len  ) 

BRefData::BRefData ( const BRefData refData  ) 

BRefData::~BRefData (  ) 


Member Function Documentation

BRefData * BRefData::addRef (  ) 

Increment the reference counter.

BRefData * BRefData::copy (  ) 

Create a copy of this reference for writing, if necessary.

char* BRefData::data (  )  [inline]

Return the raw data pointer.

int BRefData::deleteRef (  ) 

Decrement the reference counter.

int BRefData::len (  )  [inline]

Return the length in bytes.

BRefData & BRefData::operator= ( const BRefData refData  ) 

void BRefData::setLen ( int  len  ) 

Set the length in bytes. Note should only be used if orefCount = 1.


Member Data Documentation

void* BRefData::odata [private]

Pointer to the data.

int BRefData::olen [private]

The actual length of data in oData.

BAtomicCount BRefData::orefCount [private]

The reference count, how many users.


The documentation for this class was generated from the following files:
Generated on 29 Jan 2014 for LibBeamApi by  doxygen 1.4.7