OGRE 14.4
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::SmallVectorTemplateBase< T, isPodLike > Class Template Reference

SmallVectorTemplateBase<isPodLike = false> - This is where we put method implementations that are designed to work with non-POD-like T's. More...

#include <OgreSmallVector.h>

Inheritance diagram for Ogre::SmallVectorTemplateBase< T, isPodLike >:

Public Member Functions

 SmallVectorTemplateBase (size_t Size)
void grow (size_t MinSize=0)
 grow - double the size of the allocated memory, guaranteeing space for at least one more element or MinSize if specified.
Public Member Functions inherited from Ogre::SmallVectorTemplateCommon< T >
 SmallVectorTemplateCommon (size_t Size)
reference back ()
const_reference back () const
iterator begin ()
const_iterator begin () const
size_t capacity () const
 capacity - Return the total number of elements in the currently allocated buffer.
pointer data ()
 data - Return a pointer to the vector's buffer, even if empty().
const_pointer data () const
 data - Return a pointer to the vector's buffer, even if empty().
iterator end ()
const_iterator end () const
reference front ()
const_reference front () const
size_type max_size () const
reference operator[] (unsigned idx)
const_reference operator[] (unsigned idx) const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
size_type size () const
Public Member Functions inherited from Ogre::SmallVectorBase
bool empty () const

Static Public Member Functions

static void destroy_range (T *S, T *E)
template<typename It1, typename It2>
static void uninitialized_copy (It1 I, It1 E, It2 Dest)
 uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.

Additional Inherited Members

Public Types inherited from Ogre::SmallVectorTemplateCommon< T >
typedef const T * const_iterator
typedef const T * const_pointer
typedef const T & const_reference
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
typedef ptrdiff_t difference_type
typedef T * iterator
typedef T * pointer
typedef T & reference
typedef std::reverse_iterator< iteratorreverse_iterator
typedef size_t size_type
typedef T value_type

Detailed Description

template<typename T, bool isPodLike>
class Ogre::SmallVectorTemplateBase< T, isPodLike >

SmallVectorTemplateBase<isPodLike = false> - This is where we put method implementations that are designed to work with non-POD-like T's.

Constructor & Destructor Documentation

◆ SmallVectorTemplateBase()

template<typename T, bool isPodLike>
Ogre::SmallVectorTemplateBase< T, isPodLike >::SmallVectorTemplateBase ( size_t Size)
inline

Member Function Documentation

◆ destroy_range()

template<typename T, bool isPodLike>
void Ogre::SmallVectorTemplateBase< T, isPodLike >::destroy_range ( T * S,
T * E )
inlinestatic

Referenced by grow().

◆ uninitialized_copy()

template<typename T, bool isPodLike>
template<typename It1, typename It2>
void Ogre::SmallVectorTemplateBase< T, isPodLike >::uninitialized_copy ( It1 I,
It1 E,
It2 Dest )
inlinestatic

uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.

Referenced by grow().

◆ grow()

template<typename T, bool isPodLike>
void Ogre::SmallVectorTemplateBase< T, isPodLike >::grow ( size_t MinSize = 0)

grow - double the size of the allocated memory, guaranteeing space for at least one more element or MinSize if specified.

References Ogre::SmallVectorTemplateCommon< T >::begin(), Ogre::SmallVectorTemplateCommon< T >::capacity(), destroy_range(), Ogre::SmallVectorTemplateCommon< T >::end(), Ogre::SmallVectorTemplateCommon< T >::size(), and uninitialized_copy().

Referenced by Ogre::SmallVectorImpl< T >::swap().


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