sead
Loading...
Searching...
No Matches
sead::Buffer< T > Class Template Reference

#include <seadBuffer.h>

Classes

class  constIterator
class  iterator
class  reverseConstIterator
class  reverseIterator

Public Member Functions

 Buffer ()
 Buffer (s32 size, T *bufferptr)
iterator begin ()
constIterator begin () const
iterator end ()
constIterator end () const
iterator toIterator (s32 x)
constIterator toIterator (s32 x) const
constIterator constBegin () const
constIterator constEnd () const
constIterator toConstIterator (s32 x) const
reverseIterator reverseBegin ()
reverseConstIterator reverseBegin () const
reverseIterator reverseEnd ()
reverseConstIterator reverseEnd () const
reverseIterator toReverseIterator (s32)
reverseConstIterator toReverseIterator (s32) const
reverseConstIterator reverseConstBegin () const
reverseConstIterator reverseConstEnd () const
reverseConstIterator toReverseConstIterator (s32) const
void allocBuffer (s32 size, s32 alignment=4)
void allocBuffer (s32 size, Heap *heap, s32 alignment=4)
bool tryAllocBuffer (s32 size, s32 alignment=4)
bool tryAllocBuffer (s32 size, Heap *heap, s32 alignment=4)
void freeBuffer ()
void setBuffer (s32 size, T *bufferptr)
bool isBufferReady () const
T & operator() (s32)
const T & operator() (s32) const
T & operator[] (s32 x)
T & operator[] (u32 x)
const T & operator[] (s32 x) const
const T & operator[] (u32 x) const
T * get (s32 x)
const T * get (s32 x) const
T * unsafeGet (s32 x)
const T * unsafeGet (s32 x) const
T & front ()
const T & front () const
T & back ()
const T & back () const
s32 size () const
s32 getSize () const
T * getBufferPtr ()
const T * getBufferPtr () const
u32 getByteSize () const
Buffer< T > & operator= (const Buffer< T > &rhs)
bool isRangeValid (s32 x) const
void fill (const T &value)
void heapSort (CompareCallback, s32, s32)
void heapSort (s32, s32)
s32 binarySearch (const T &) const
template<typename Key>
s32 binarySearch (const Key &, s32(*)(const T &, const Key &)) const

Static Protected Member Functions

static s32 compareT (const T *, const T *)
static s32 defaultBinarySearchCompare (const T &, const T &)

Protected Attributes

s32 mSize
T * mBuffer

Private Types

typedef s32(* CompareCallback) (const T *, const T *)

Member Typedef Documentation

◆ CompareCallback

template<typename T>
typedef s32(* sead::Buffer< T >::CompareCallback) (const T *, const T *)
private

Constructor & Destructor Documentation

◆ Buffer() [1/2]

template<typename T>
sead::Buffer< T >::Buffer ( )
inline

◆ Buffer() [2/2]

template<typename T>
sead::Buffer< T >::Buffer ( s32 size,
T * bufferptr )
inline

Member Function Documentation

◆ begin() [1/2]

template<typename T>
iterator sead::Buffer< T >::begin ( )
inline

◆ begin() [2/2]

template<typename T>
constIterator sead::Buffer< T >::begin ( ) const
inline

◆ end() [1/2]

template<typename T>
iterator sead::Buffer< T >::end ( )
inline

◆ end() [2/2]

template<typename T>
constIterator sead::Buffer< T >::end ( ) const
inline

◆ toIterator() [1/2]

template<typename T>
iterator sead::Buffer< T >::toIterator ( s32 x)
inline

◆ toIterator() [2/2]

template<typename T>
constIterator sead::Buffer< T >::toIterator ( s32 x) const
inline

◆ constBegin()

template<typename T>
constIterator sead::Buffer< T >::constBegin ( ) const
inline

◆ constEnd()

template<typename T>
constIterator sead::Buffer< T >::constEnd ( ) const
inline

◆ toConstIterator()

template<typename T>
constIterator sead::Buffer< T >::toConstIterator ( s32 x) const
inline

◆ reverseBegin() [1/2]

template<typename T>
reverseIterator sead::Buffer< T >::reverseBegin ( )

◆ reverseBegin() [2/2]

template<typename T>
reverseConstIterator sead::Buffer< T >::reverseBegin ( ) const

◆ reverseEnd() [1/2]

template<typename T>
reverseIterator sead::Buffer< T >::reverseEnd ( )

◆ reverseEnd() [2/2]

template<typename T>
reverseConstIterator sead::Buffer< T >::reverseEnd ( ) const

◆ toReverseIterator() [1/2]

template<typename T>
reverseIterator sead::Buffer< T >::toReverseIterator ( s32 )

◆ toReverseIterator() [2/2]

template<typename T>
reverseConstIterator sead::Buffer< T >::toReverseIterator ( s32 ) const

◆ reverseConstBegin()

template<typename T>
reverseConstIterator sead::Buffer< T >::reverseConstBegin ( ) const

◆ reverseConstEnd()

template<typename T>
reverseConstIterator sead::Buffer< T >::reverseConstEnd ( ) const

◆ toReverseConstIterator()

template<typename T>
reverseConstIterator sead::Buffer< T >::toReverseConstIterator ( s32 ) const

◆ allocBuffer() [1/2]

template<typename T>
void sead::Buffer< T >::allocBuffer ( s32 size,
s32 alignment = 4 )
inline

◆ allocBuffer() [2/2]

template<typename T>
void sead::Buffer< T >::allocBuffer ( s32 size,
Heap * heap,
s32 alignment = 4 )
inline

◆ tryAllocBuffer() [1/2]

template<typename T>
bool sead::Buffer< T >::tryAllocBuffer ( s32 size,
s32 alignment = 4 )
inline

◆ tryAllocBuffer() [2/2]

template<typename T>
bool sead::Buffer< T >::tryAllocBuffer ( s32 size,
Heap * heap,
s32 alignment = 4 )
inline

◆ freeBuffer()

template<typename T>
void sead::Buffer< T >::freeBuffer ( )
inline

◆ setBuffer()

template<typename T>
void sead::Buffer< T >::setBuffer ( s32 size,
T * bufferptr )
inline

◆ isBufferReady()

template<typename T>
bool sead::Buffer< T >::isBufferReady ( ) const
inline

◆ operator()() [1/2]

template<typename T>
T & sead::Buffer< T >::operator() ( s32 )

◆ operator()() [2/2]

template<typename T>
const T & sead::Buffer< T >::operator() ( s32 ) const

◆ operator[]() [1/4]

template<typename T>
T & sead::Buffer< T >::operator[] ( s32 x)
inline

◆ operator[]() [2/4]

template<typename T>
T & sead::Buffer< T >::operator[] ( u32 x)
inline

◆ operator[]() [3/4]

template<typename T>
const T & sead::Buffer< T >::operator[] ( s32 x) const
inline

◆ operator[]() [4/4]

template<typename T>
const T & sead::Buffer< T >::operator[] ( u32 x) const
inline

◆ get() [1/2]

template<typename T>
T * sead::Buffer< T >::get ( s32 x)
inline

◆ get() [2/2]

template<typename T>
const T * sead::Buffer< T >::get ( s32 x) const
inline

◆ unsafeGet() [1/2]

template<typename T>
T * sead::Buffer< T >::unsafeGet ( s32 x)
inline

◆ unsafeGet() [2/2]

template<typename T>
const T * sead::Buffer< T >::unsafeGet ( s32 x) const
inline

◆ front() [1/2]

template<typename T>
T & sead::Buffer< T >::front ( )
inline

◆ front() [2/2]

template<typename T>
const T & sead::Buffer< T >::front ( ) const
inline

◆ back() [1/2]

template<typename T>
T & sead::Buffer< T >::back ( )
inline

◆ back() [2/2]

template<typename T>
const T & sead::Buffer< T >::back ( ) const
inline

◆ size()

template<typename T>
s32 sead::Buffer< T >::size ( ) const
inline

◆ getSize()

template<typename T>
s32 sead::Buffer< T >::getSize ( ) const
inline

◆ getBufferPtr() [1/2]

template<typename T>
T * sead::Buffer< T >::getBufferPtr ( )
inline

◆ getBufferPtr() [2/2]

template<typename T>
const T * sead::Buffer< T >::getBufferPtr ( ) const
inline

◆ getByteSize()

template<typename T>
u32 sead::Buffer< T >::getByteSize ( ) const
inline

◆ operator=()

template<typename T>
Buffer< T > & sead::Buffer< T >::operator= ( const Buffer< T > & rhs)
inline

◆ isRangeValid()

template<typename T>
bool sead::Buffer< T >::isRangeValid ( s32 x) const
inline

◆ fill()

template<typename T>
void sead::Buffer< T >::fill ( const T & value)
inline

◆ heapSort() [1/2]

template<typename T>
void sead::Buffer< T >::heapSort ( CompareCallback ,
s32 ,
s32  )

◆ heapSort() [2/2]

template<typename T>
void sead::Buffer< T >::heapSort ( s32 ,
s32  )

◆ binarySearch() [1/2]

template<typename T>
s32 sead::Buffer< T >::binarySearch ( const T & ) const

◆ compareT()

template<typename T>
s32 sead::Buffer< T >::compareT ( const T * ,
const T *  )
staticprotected

◆ defaultBinarySearchCompare()

template<typename T>
s32 sead::Buffer< T >::defaultBinarySearchCompare ( const T & ,
const T &  )
staticprotected

◆ binarySearch() [2/2]

template<typename T>
template<typename Key>
s32 sead::Buffer< T >::binarySearch ( const Key & ,
s32(*  )(const T &, const Key &) ) const

Member Data Documentation

◆ mSize

template<typename T>
s32 sead::Buffer< T >::mSize
protected

◆ mBuffer

template<typename T>
T* sead::Buffer< T >::mBuffer
protected