Proud::ByteArrayPtr 클래스 참조
Proud::ByteArrayPtr에 대한 상속 다이어그램 :

Public 멤버 함수

 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
 
- Proud::BiasManagedPointer< ByteArray, true >(으)로부터 상속된 Public 멤버 함수
 BiasManagedPointer (const BiasManagedPointer &src)
 
BiasManagedPointeroperator= (const BiasManagedPointer &src)
 

추가로 상속된 멤버들

- Proud::BiasManagedPointer< ByteArray, true >(으)로부터 상속된 Protected 멤버 함수
Tombstone * GetTombstone () const
 
void UninitTombstone ()
 
void InitTombstoneIfEmpty ()
 

상세한 설명

ByteArray 에 smart pointer 기능이 추가된 형태. 네트워크 패킷 형태로 쓰이므로 32-64 변환에도 민감. 따라서 intPtr이 아닌 int32 타입이다. ByteArray 가 typedef가 아닌 상속 클래스이기 때문에 필요한 메서드를 이 객체도 오버라이드해야 빌드 에러를 피한다.

멤버 함수 문서화

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

1 BYTE 단위의 Data를 추가합니다.

매개변수
data추가할 BYTE
void Proud::ByteArrayPtr::AddRange ( const uint8_t *  data,
int  count 
)
inline

현재의 배열에 BYTE배열 data를 추가 합니다.

매개변수
data추가할 BYTE배열 포인터
count배열의 크기
void Proud::ByteArrayPtr::Clear ( )
inline

배열을 비웁니다. capacity는 변화하지 않습니다.

ByteArrayPtr Proud::ByteArrayPtr::Clone ( )
inline
반환값
배열의 복사본을 리턴합니다.
void Proud::ByteArrayPtr::CopyRangeTo ( ByteArrayPtr dest,
int  srcOffset,
int  count 
) const
inline

데이터들을 dest로 복사합

매개변수
dest복사받을 ByteArrayPtr
srcOffset복사를 시작할 원본 배열의 위치
count복사 받을 배열의 크기
void Proud::ByteArrayPtr::CopyRangeTo ( ByteArray dest,
int  srcOffset,
int  count 
) const
inline

데이터들을 dest로 복사합

매개변수
dest복사받을 ByteArray
srcOffset복사를 시작할 원본 배열의 위치
count복사 받을 배열의 크기
template<typename BYTEARRAYT >
void Proud::ByteArrayPtr::CopyRangeToT ( BYTEARRAYT &  dest,
int  srcOffset,
int  count 
) const
inline

데이터들을 dest로 복사합

매개변수
dest복사받을 객체
srcOffset복사를 시작할 원본 배열의 위치
count복사 받을 배열의 크기
bool Proud::ByteArrayPtr::Equals ( const ByteArrayPtr rhs) const
inline

rhs와 내용이 동일한지 체크한다.

  • 주의: 단순 메모리 비교다. 이 점을 주의할 것.
    매개변수
    rhs비교할 ByteArrayPtr
    반환값
    같으면 true 다르면 false를 리턴한다.
uint8_t* Proud::ByteArrayPtr::GetData ( )
inline
반환값
Data배열의 포인터를 리턴합니다.
const uint8_t* Proud::ByteArrayPtr::GetData ( ) const
inline
반환값
Data배열의 const 포인터를 리턴합니다.
GrowPolicy Proud::ByteArrayPtr::GetGrowPolicy ( ) const
inline
반환값
이 객체의 배열 크기가 증가할 때 가중치 타입
bool Proud::ByteArrayPtr::IsNull ( ) const
inline
반환값
NULL이면 true, NULL이 아니면 false를 리턴한다.
void Proud::ByteArrayPtr::MustInternalBuffer ( )
inline

내부 버퍼를 사용하고 있는 것이 아니면 예외를 발생시킨다.

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

배열내의 하나의 데이터를 제거합니다.

매개변수
index제거할 배열의 index값
void Proud::ByteArrayPtr::RemoveRange ( int  indexAt,
int  count 
)
inline

데이터들을 제거 합니다.

매개변수
indexAt제거한 data의 index입니다.
count제거할 배열의 수 입니다.
void Proud::ByteArrayPtr::SetCapacity ( int  length)
inline
매개변수
length변경할 Capacity 사이즈
void Proud::ByteArrayPtr::SetCount ( int  length)
inline

배열의 사이즈를 setting 한다.

매개변수
length변경할 배열의 사이즈
void Proud::ByteArrayPtr::SetGrowPolicy ( GrowPolicy  val)
inline

이 객체의 배열 크기가 증가할 때 가중치 타입을 설정한다. 자세한 내용은 GrowPolicy 을 참조

매개변수
val증가할 때의 가중치 타입
void Proud::ByteArrayPtr::SetMinCapacity ( int  val)
inline

최소 버퍼 크기를 설정한다. 버퍼(capacity)크기가 증가할 때 최소한 이 사이즈보다 크게 설정한다.

매개변수
val최소 Capacity size
void Proud::ByteArrayPtr::UninitBuffer ( )
inline

UseInternalBuffer, UseExternalBuffer 를 재사용하려면 이 메서드를 호출할 것.

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

이걸 초기에 호출하면 이 객체는 외부 버퍼를 사용한다.

void Proud::ByteArrayPtr::UseInternalBuffer ( )
inline

이것을 초기에 호출하면 내부 버퍼를 생성하여 사용한다.