CrystalSpace

Public API Reference

csRefArray< T, Allocator, CapacityHandler > Class Template Reference

An array of smart pointers. More...

#include <csutil/refarr.h>

Inheritance diagram for csRefArray< T, Allocator, CapacityHandler >:

List of all members.

Public Member Functions

 csRefArray (int ilimit=0, const CapacityHandler &ch=CapacityHandler())
 Initialize object to hold initially 'ilimit' elements, and increase storage by 'ithreshold' each time the upper bound is exceeded.
csRef< T > Pop ()
 Pop an element from tail end of array.

Detailed Description

template<class T, class Allocator = CS::Container::ArrayAllocDefault, class CapacityHandler = CS::Container::ArrayCapacityDefault>
class csRefArray< T, Allocator, CapacityHandler >

An array of smart pointers.

Warning:
Get(), GetExtend() and operator[] are unsafe for element manipulations, as they will return references to pointers and not proper csRef<> objects - assigning a pointer will circumvent reference counting and cause unexpected problems. Use Put() to manipulate elements of the array.

Definition at line 94 of file refarr.h.


Constructor & Destructor Documentation

template<class T, class Allocator = CS::Container::ArrayAllocDefault, class CapacityHandler = CS::Container::ArrayCapacityDefault>
csRefArray< T, Allocator, CapacityHandler >::csRefArray ( int  ilimit = 0,
const CapacityHandler &  ch = CapacityHandler() 
) [inline]

Initialize object to hold initially 'ilimit' elements, and increase storage by 'ithreshold' each time the upper bound is exceeded.

Definition at line 102 of file refarr.h.


Member Function Documentation

template<class T, class Allocator = CS::Container::ArrayAllocDefault, class CapacityHandler = CS::Container::ArrayCapacityDefault>
csRef<T> csRefArray< T, Allocator, CapacityHandler >::Pop (  )  [inline]

Pop an element from tail end of array.

Reimplemented from csArray< T *, csRefArrayElementHandler< T * >, Allocator, CapacityHandler >.

Definition at line 110 of file refarr.h.


The documentation for this class was generated from the following file:

Generated for Crystal Space 2.1 by doxygen 1.6.1