Proud::ByteArrayPtr Class Reference
Inheritance diagram for Proud::ByteArrayPtr:

Public Member Functions

 ByteArrayPtr (const ByteArrayPtr &src)
 
ByteArrayPtroperator= (const ByteArrayPtr &src)
 
int GetCapacity () const
 
int GetCount () const
 
void MustNotNull () const
 
void MustNull () const throw (Exception)
 
void SetCapacity (int length)
 
void SetCount (int length)
 
void AddCount (int length)
 
void Add (uint8_t data)
 
void AddRange (const uint8_t *data, int count)
 
void InsertRange (int indexAt, const uint8_t *data, int count)
 
void RemoveRange (int indexAt, int count)
 
void RemoveAt (int index)
 
void Clear ()
 
uint8_t * GetData ()
 
const uint8_t * GetData () const
 
ByteArrayPtr Clone ()
 
template<typename BYTEARRAYT >
void CopyRangeToT (BYTEARRAYT &dest, int srcOffset, int count) const
 
void CopyRangeTo (ByteArrayPtr &dest, int srcOffset, int count) const
 
void CopyRangeTo (ByteArray &dest, int srcOffset, int count) const
 
uint8_t & operator[] (int index)
 
const uint8_t operator[] (int index) const
 
GrowPolicy GetGrowPolicy () const
 
void SetGrowPolicy (GrowPolicy val)
 
void SetMinCapacity (int val)
 
void UseInternalBuffer ()
 
void UseExternalBuffer (uint8_t *buf, int capacity)
 
void UninitBuffer ()
 
bool IsNull () const
 
void MustInternalBuffer ()
 
bool Equals (const ByteArrayPtr &rhs) const
 
- Public Member Functions inherited from Proud::BiasManagedPointer< ByteArray, true >
 BiasManagedPointer (const BiasManagedPointer &src)
 
BiasManagedPointeroperator= (const BiasManagedPointer &src)
 

Additional Inherited Members

- Protected Member Functions inherited from Proud::BiasManagedPointer< ByteArray, true >
Tombstone * GetTombstone () const
 
void UninitTombstone ()
 
void InitTombstoneIfEmpty ()
 

Detailed Description

It is the form that smart pointer function has been added to ByteArray. It is very sensitive to conversion from 32 to 64 because of being used as the form of network packet, so its form is int32 (not intPtr). To avoid build error, this object has to override require method because ByreArray is inherit class instead of typedef.

Member Function Documentation

void Proud::ByteArrayPtr::Add ( uint8_t  data)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::AddRange ( const uint8_t *  data,
int  count 
)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::Clear ( )
inline

TODO:translate needed.

ByteArrayPtr Proud::ByteArrayPtr::Clone ( )
inline

TODO:translate needed.

void Proud::ByteArrayPtr::CopyRangeTo ( ByteArrayPtr dest,
int  srcOffset,
int  count 
) const
inline

TODO:translate needed.

void Proud::ByteArrayPtr::CopyRangeTo ( ByteArray dest,
int  srcOffset,
int  count 
) const
inline

TODO:translate needed.

template<typename BYTEARRAYT >
void Proud::ByteArrayPtr::CopyRangeToT ( BYTEARRAYT &  dest,
int  srcOffset,
int  count 
) const
inline

TODO:translate needed.

bool Proud::ByteArrayPtr::Equals ( const ByteArrayPtr rhs) const
inline

TODO:translate needed. Checks if this contains same as rhs

  • Note: This is a simple memory comparison. This is crucial.
    Parameters
    \return
uint8_t* Proud::ByteArrayPtr::GetData ( )
inline

TODO:translate needed.

const uint8_t* Proud::ByteArrayPtr::GetData ( ) const
inline

TODO:translate needed.

GrowPolicy Proud::ByteArrayPtr::GetGrowPolicy ( ) const
inline

TODO:translate needed.

bool Proud::ByteArrayPtr::IsNull ( ) const
inline

TODO:translate needed.

void Proud::ByteArrayPtr::MustInternalBuffer ( )
inline

TODO:translate needed.

void Proud::ByteArrayPtr::RemoveAt ( int  index)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::RemoveRange ( int  indexAt,
int  count 
)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::SetCapacity ( int  length)
inline

TODO:translate needed.

Parameters
length
void Proud::ByteArrayPtr::SetCount ( int  length)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::SetGrowPolicy ( GrowPolicy  val)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::SetMinCapacity ( int  val)
inline

TODO:translate needed.

void Proud::ByteArrayPtr::UninitBuffer ( )
inline

Call this method if you want to reuse UseInternalBuffer,UseExternalBuffer

void Proud::ByteArrayPtr::UseExternalBuffer ( uint8_t *  buf,
int  capacity 
)
inline

If you call this at the beginning, this object use external buffer

void Proud::ByteArrayPtr::UseInternalBuffer ( )
inline

TODO:translate needed.