OGRE: Ogre::SmallVector< T, N > Class Template Reference

| OGRE 2.2.4 Object-Oriented Graphics Rendering Engine

Public Types | Public Member Functions | Static Public Member Functions | List of all members
Ogre::SmallVector< T, N > Class Template Reference

SmallVector - This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small. More...

`#include <OgreSmallVector.h>`

Inheritance diagram for Ogre::SmallVector< T, N >:
[legend]

## Public Types
typedef const T * | const_iterator
typedef const T * | const_iterator
typedef const T * | const_pointer
typedef const T * | const_pointer
typedef const T & | const_reference
typedef const T & | const_reference
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator
typedef ptrdiff_t | difference_type
typedef ptrdiff_t | difference_type
typedef SuperClass::iterator | iterator
typedef SuperClass::iterator | iterator
typedef T * | pointer
typedef T * | pointer
typedef T & | reference
typedef T & | reference
typedef std::reverse_iterator< iterator > | reverse_iterator
typedef std::reverse_iterator< iterator > | reverse_iterator
typedef SuperClass::size_type | size_type
typedef SuperClass::size_type | size_type
typedef T | value_type
typedef T | value_type

## Public Member Functions
| SmallVector ()
| SmallVector ()
| SmallVector (const SmallVector &RHS)
| SmallVector (const SmallVector &RHS)
template<typename ItTy >
| SmallVector (ItTy S, ItTy E)
template<typename ItTy >
| SmallVector (ItTy S, ItTy E)
| SmallVector (unsigned Size, const T &Value=T())
| SmallVector (unsigned Size, const T &Value=T())
template<typename in_iter >
void | append (in_iter in_start, in_iter in_end)
| append - Add the specified range to the end of the SmallVector. More...
template<typename in_iter >
void | append (in_iter in_start, in_iter in_end)
| append - Add the specified range to the end of the SmallVector. More...
void | append (size_type NumInputs, const T &Elt)
| append - Add the specified range to the end of the SmallVector. More...
void | append (size_type NumInputs, const T &Elt)
| append - Add the specified range to the end of the SmallVector. More...
void | assign (unsigned NumElts, const T &Elt)
void | assign (unsigned NumElts, const T &Elt)
reference | back ()
reference | back ()
const_reference | back () const
const_reference | back () const
iterator | begin ()
iterator | begin ()
const_iterator | begin () const
const_iterator | begin () const
size_t | capacity () const
| capacity - Return the total number of elements in the currently allocated buffer. More...
size_t | capacity () const
| capacity - Return the total number of elements in the currently allocated buffer. More...
void | clear ()
void | clear ()
pointer | data ()
| data - Return a pointer to the vector's buffer, even if empty(). More...
pointer | data ()
| data - Return a pointer to the vector's buffer, even if empty(). More...
const_pointer | data () const
| data - Return a pointer to the vector's buffer, even if empty(). More...
const_pointer | data () const
| data - Return a pointer to the vector's buffer, even if empty(). More...
bool | empty () const
bool | empty () const
iterator | end ()
iterator | end ()
const_iterator | end () const
const_iterator | end () const
iterator | erase (iterator I)
iterator | erase (iterator I)
iterator | erase (iterator S, iterator E)
iterator | erase (iterator S, iterator E)
reference | front ()
reference | front ()
const_reference | front () const
const_reference | front () const
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. More...
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. More...
iterator | insert (iterator I, const T &Elt)
iterator | insert (iterator I, const T &Elt)
template<typename ItTy >
iterator | insert (iterator I, ItTy From, ItTy To)
template<typename ItTy >
iterator | insert (iterator I, ItTy From, ItTy To)
iterator | insert (iterator I, size_type NumToInsert, const T &Elt)
iterator | insert (iterator I, size_type NumToInsert, const T &Elt)
size_type | max_size () const
size_type | max_size () const
bool | operator!= (const SmallVectorImpl &RHS) const
bool | operator!= (const SmallVectorImpl &RHS) const
bool | operator< (const SmallVectorImpl &RHS) const
bool | operator< (const SmallVectorImpl &RHS) const
const SmallVector & | operator= (const SmallVector &RHS)
const SmallVector & | operator= (const SmallVector &RHS)
bool | operator== (const SmallVectorImpl &RHS) const
bool | operator== (const SmallVectorImpl &RHS) const
reference | operator[] (unsigned idx)
reference | operator[] (unsigned idx)
const_reference | operator[] (unsigned idx) const
const_reference | operator[] (unsigned idx) const
void | pop_back ()
void | pop_back ()
T | pop_back_val ()
T | pop_back_val ()
void | push_back (const T &Elt)
void | push_back (const T &Elt)
reverse_iterator | rbegin ()
reverse_iterator | rbegin ()
const_reverse_iterator | rbegin () const
const_reverse_iterator | rbegin () const
reverse_iterator | rend ()
reverse_iterator | rend ()
const_reverse_iterator | rend () const
const_reverse_iterator | rend () const
void | reserve (unsigned N)
void | reserve (unsigned N)
void | resize (unsigned N)
void | resize (unsigned N)
void | resize (unsigned N, const T &NV)
void | resize (unsigned N, const T &NV)
void | set_size (unsigned N)
| set_size - Set the array size to More...
void | set_size (unsigned N)
| set_size - Set the array size to More...
size_type | size () const
size_type | size () const
void | swap (SmallVectorImpl &RHS)
void | swap (SmallVectorImpl &RHS)

## Static Public Member Functions
static void | destroy_range (T *S, T *E)
static void | destroy_range (T *S, T *E)
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. More...
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. More...

## Detailed Description

### template<typename T, unsigned N>
class Ogre::SmallVector< T, N >

SmallVector - This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.

It contains some number of elements in-place, which allows it to avoid heap allocation when the actual number of elements is below that threshold. This allows normal "small" cases to be fast without losing generality for large inputs.

Note that this does not attempt to be exception safe.

## Member Typedef Documentation

## ◆ const_iterator [1/2]

template<typename T >

typedef const T* Ogre::SmallVectorTemplateCommon< T >::const_iterator
| inherited

## ◆ const_iterator [2/2]

template<typename T >

typedef const T* Ogre::SmallVectorTemplateCommon< T >::const_iterator
| inherited

## ◆ const_pointer [1/2]

template<typename T >

typedef const T* Ogre::SmallVectorTemplateCommon< T >::const_pointer
| inherited

## ◆ const_pointer [2/2]

template<typename T >

typedef const T* Ogre::SmallVectorTemplateCommon< T >::const_pointer
| inherited

## ◆ const_reference [1/2]

template<typename T >

typedef const T& Ogre::SmallVectorTemplateCommon< T >::const_reference
| inherited

## ◆ const_reference [2/2]

template<typename T >

typedef const T& Ogre::SmallVectorTemplateCommon< T >::const_reference
| inherited

## ◆ const_reverse_iterator [1/2]

template<typename T >

typedef std::reverse_iterator<const_iterator> Ogre::SmallVectorTemplateCommon< T >::const_reverse_iterator
| inherited

## ◆ const_reverse_iterator [2/2]

template<typename T >

typedef std::reverse_iterator<const_iterator> Ogre::SmallVectorTemplateCommon< T >::const_reverse_iterator
| inherited

## ◆ difference_type [1/2]

template<typename T >

typedef ptrdiff_t Ogre::SmallVectorTemplateCommon< T >::difference_type
| inherited

## ◆ difference_type [2/2]

template<typename T >

typedef ptrdiff_t Ogre::SmallVectorTemplateCommon< T >::difference_type
| inherited

## ◆ iterator [1/2]

template<typename T >

typedef SuperClass::iterator Ogre::SmallVectorImpl< T >::iterator
| inherited

## ◆ iterator [2/2]

template<typename T >

typedef SuperClass::iterator Ogre::SmallVectorImpl< T >::iterator
| inherited

## ◆ pointer [1/2]

template<typename T >

typedef T* Ogre::SmallVectorTemplateCommon< T >::pointer
| inherited

## ◆ pointer [2/2]

template<typename T >

typedef T* Ogre::SmallVectorTemplateCommon< T >::pointer
| inherited

## ◆ reference [1/2]

template<typename T >

typedef T& Ogre::SmallVectorTemplateCommon< T >::reference
| inherited

## ◆ reference [2/2]

template<typename T >

typedef T& Ogre::SmallVectorTemplateCommon< T >::reference
| inherited

## ◆ reverse_iterator [1/2]

template<typename T >

typedef std::reverse_iterator<iterator> Ogre::SmallVectorTemplateCommon< T >::reverse_iterator
| inherited

## ◆ reverse_iterator [2/2]

template<typename T >

typedef std::reverse_iterator<iterator> Ogre::SmallVectorTemplateCommon< T >::reverse_iterator
| inherited

## ◆ size_type [1/2]

template<typename T >

typedef SuperClass::size_type Ogre::SmallVectorImpl< T >::size_type
| inherited

## ◆ size_type [2/2]

template<typename T >

typedef SuperClass::size_type Ogre::SmallVectorImpl< T >::size_type
| inherited

## ◆ value_type [1/2]

template<typename T >

typedef T Ogre::SmallVectorTemplateCommon< T >::value_type
| inherited

## ◆ value_type [2/2]

template<typename T >

typedef T Ogre::SmallVectorTemplateCommon< T >::value_type
| inherited

## Constructor & Destructor Documentation

## ◆ SmallVector() [1/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( |  | ) |
| inline

## ◆ SmallVector() [2/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( | unsigned | Size,
|  | const T & | Value = `T()`
| ) |  |
| inlineexplicit

## ◆ SmallVector() [3/8]

template<typename T , unsigned N>
template<typename ItTy >

Ogre::SmallVector< T, N >::SmallVector | ( | ItTy | S,
|  | ItTy | E
| ) |  |
| inline

## ◆ SmallVector() [4/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( | const SmallVector< T, N > & | RHS | ) |
| inline

## ◆ SmallVector() [5/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( |  | ) |
| inline

## ◆ SmallVector() [6/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( | unsigned | Size,
|  | const T & | Value = `T()`
| ) |  |
| inlineexplicit

## ◆ SmallVector() [7/8]

template<typename T , unsigned N>
template<typename ItTy >

Ogre::SmallVector< T, N >::SmallVector | ( | ItTy | S,
|  | ItTy | E
| ) |  |
| inline

## ◆ SmallVector() [8/8]

template<typename T , unsigned N>

Ogre::SmallVector< T, N >::SmallVector | ( | const SmallVector< T, N > & | RHS | ) |
| inline

## Member Function Documentation

## ◆ append() [1/4]

template<typename T >
template<typename in_iter >

void Ogre::SmallVectorImpl< T >::append | ( | in_iter | in_start,
|  | in_iter | in_end
| ) |  |
| inlineinherited

append - Add the specified range to the end of the SmallVector.

## ◆ append() [2/4]

template<typename T >
template<typename in_iter >

void Ogre::SmallVectorImpl< T >::append | ( | in_iter | in_start,
|  | in_iter | in_end
| ) |  |
| inlineinherited

append - Add the specified range to the end of the SmallVector.

Referenced by Ogre::SmallVector< T, S >::SmallVector(), Ogre::SmallVector< T, 0 >::SmallVector(), and Ogre::SmallVectorImpl< Triangle * >::insert().

## ◆ append() [3/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::append | ( | size_type | NumInputs,
|  | const T & | Elt
| ) |  |
| inlineinherited

append - Add the specified range to the end of the SmallVector.

## ◆ append() [4/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::append | ( | size_type | NumInputs,
|  | const T & | Elt
| ) |  |
| inlineinherited

append - Add the specified range to the end of the SmallVector.

## ◆ assign() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::assign | ( | unsigned | NumElts,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ assign() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::assign | ( | unsigned | NumElts,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ back() [1/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::back | ( |  | ) |
| inlineinherited

## ◆ back() [2/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::back | ( |  | ) |
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::insert(), and Ogre::SmallVectorImpl< Triangle * >::pop_back_val().

## ◆ back() [3/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::back | ( |  | ) | const
| inlineinherited

## ◆ back() [4/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::back | ( |  | ) | const
| inlineinherited

## ◆ begin() [1/4]

template<typename T >

iterator Ogre::SmallVectorTemplateCommon< T >::begin | ( |  | ) |
| inlineinherited

## ◆ begin() [2/4]

template<typename T >

iterator Ogre::SmallVectorTemplateCommon< T >::begin | ( |  | ) |
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::~SmallVectorImpl(), Ogre::SmallVectorImpl< Triangle * >::assign(), Ogre::SmallVectorTemplateCommon< Triangle * >::capacity(), Ogre::SmallVectorImpl< Triangle * >::clear(), Ogre::SmallVectorTemplateCommon< Triangle * >::data(), Ogre::SmallVectorTemplateCommon< Triangle * >::front(), Ogre::SmallVectorImpl< Triangle * >::insert(), Ogre::SmallVectorImpl< Triangle * >::operator<(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::SmallVectorImpl< Triangle * >::operator==(), Ogre::SmallVectorTemplateCommon< Triangle * >::operator[](), Ogre::SmallVectorTemplateCommon< Triangle * >::rend(), Ogre::SmallVectorImpl< Triangle * >::resize(), Ogre::SmallVectorImpl< Triangle * >::set_size(), Ogre::SmallVectorTemplateCommon< Triangle * >::size(), and Ogre::SmallVectorImpl< T >::swap().

## ◆ begin() [3/4]

template<typename T >

const_iterator Ogre::SmallVectorTemplateCommon< T >::begin | ( |  | ) | const
| inlineinherited

## ◆ begin() [4/4]

template<typename T >

const_iterator Ogre::SmallVectorTemplateCommon< T >::begin | ( |  | ) | const
| inlineinherited

## ◆ capacity() [1/2]

template<typename T >

size_t Ogre::SmallVectorTemplateCommon< T >::capacity | ( |  | ) | const
| inlineinherited

capacity - Return the total number of elements in the currently allocated buffer.

## ◆ capacity() [2/2]

template<typename T >

size_t Ogre::SmallVectorTemplateCommon< T >::capacity | ( |  | ) | const
| inlineinherited

capacity - Return the total number of elements in the currently allocated buffer.

Referenced by Ogre::SmallVectorImpl< Triangle * >::assign(), Ogre::SmallVectorImpl< Triangle * >::reserve(), Ogre::SmallVectorImpl< Triangle * >::resize(), Ogre::SmallVectorImpl< Triangle * >::set_size(), and Ogre::SmallVectorImpl< T >::swap().

## ◆ clear() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::clear | ( | void |  | ) |
| inlineinherited

## ◆ clear() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::clear | ( | void |  | ) |
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::assign().

## ◆ data() [1/4]

template<typename T >

pointer Ogre::SmallVectorTemplateCommon< T >::data | ( |  | ) |
| inlineinherited

data - Return a pointer to the vector's buffer, even if empty().

## ◆ data() [2/4]

template<typename T >

pointer Ogre::SmallVectorTemplateCommon< T >::data | ( |  | ) |
| inlineinherited

data - Return a pointer to the vector's buffer, even if empty().

## ◆ data() [3/4]

template<typename T >

const_pointer Ogre::SmallVectorTemplateCommon< T >::data | ( |  | ) | const
| inlineinherited

data - Return a pointer to the vector's buffer, even if empty().

## ◆ data() [4/4]

template<typename T >

const_pointer Ogre::SmallVectorTemplateCommon< T >::data | ( |  | ) | const
| inlineinherited

data - Return a pointer to the vector's buffer, even if empty().

## ◆ destroy_range() [1/2]

static void Ogre::SmallVectorTemplateBase< T, isPodLike >::destroy_range | ( | T * | S,
|  | T * | E
| ) |  |
| inlinestaticinherited

## ◆ destroy_range() [2/2]

static void Ogre::SmallVectorTemplateBase< T, isPodLike >::destroy_range | ( | T * | S,
|  | T * | E
| ) |  |
| inlinestaticinherited

## ◆ empty() [1/2]

bool Ogre::SmallVectorBase::empty | ( | void |  | ) | const
| inlineinherited

## ◆ empty() [2/2]

bool Ogre::SmallVectorBase::empty | ( | void |  | ) | const
| inlineinherited

Referenced by Ogre::SmallVector< T, S >::SmallVector().

## ◆ end() [1/4]

template<typename T >

iterator Ogre::SmallVectorTemplateCommon< T >::end | ( | void |  | ) |
| inlineinherited

## ◆ end() [2/4]

template<typename T >

iterator Ogre::SmallVectorTemplateCommon< T >::end | ( | void |  | ) |
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::~SmallVectorImpl(), Ogre::SmallVectorImpl< Triangle * >::append(), Ogre::SmallVectorImpl< Triangle * >::assign(), Ogre::SmallVectorTemplateCommon< Triangle * >::back(), Ogre::SmallVectorImpl< Triangle * >::clear(), Ogre::SmallVectorImpl< Triangle * >::erase(), Ogre::SmallVectorImpl< Triangle * >::insert(), Ogre::SmallVectorImpl< Triangle * >::operator<(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::SmallVectorImpl< Triangle * >::operator==(), Ogre::SmallVectorTemplateCommon< Triangle * >::operator[](), Ogre::SmallVectorImpl< Triangle * >::pop_back(), Ogre::SmallVectorImpl< Triangle * >::push_back(), Ogre::SmallVectorTemplateCommon< Triangle * >::rbegin(), Ogre::SmallVectorImpl< Triangle * >::resize(), Ogre::SmallVectorTemplateCommon< Triangle * >::size(), and Ogre::SmallVectorImpl< T >::swap().

## ◆ end() [3/4]

template<typename T >

const_iterator Ogre::SmallVectorTemplateCommon< T >::end | ( | void |  | ) | const
| inlineinherited

## ◆ end() [4/4]

template<typename T >

const_iterator Ogre::SmallVectorTemplateCommon< T >::end | ( | void |  | ) | const
| inlineinherited

## ◆ erase() [1/4]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::erase | ( | iterator | I | ) |
| inlineinherited

## ◆ erase() [2/4]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::erase | ( | iterator | I | ) |
| inlineinherited

## ◆ erase() [3/4]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::erase | ( | iterator | S,
|  | iterator | E
| ) |  |
| inlineinherited

## ◆ erase() [4/4]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::erase | ( | iterator | S,
|  | iterator | E
| ) |  |
| inlineinherited

## ◆ front() [1/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::front | ( |  | ) |
| inlineinherited

## ◆ front() [2/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::front | ( |  | ) |
| inlineinherited

## ◆ front() [3/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::front | ( |  | ) | const
| inlineinherited

## ◆ front() [4/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::front | ( |  | ) | const
| inlineinherited

## ◆ grow() [1/2]

void Ogre::SmallVectorTemplateBase< T, isPodLike >::grow | ( | size_t | MinSize = `0` | ) |
| inherited

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

## ◆ grow() [2/2]

void Ogre::SmallVectorTemplateBase< T, isPodLike >::grow | ( | size_t | MinSize = `0` | ) |
| inherited

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

## ◆ insert() [1/6]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ insert() [2/6]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ insert() [3/6]

template<typename T >
template<typename ItTy >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | ItTy | From,
|  | ItTy | To
| ) |  |
| inlineinherited

## ◆ insert() [4/6]

template<typename T >
template<typename ItTy >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | ItTy | From,
|  | ItTy | To
| ) |  |
| inlineinherited

## ◆ insert() [5/6]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | size_type | NumToInsert,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ insert() [6/6]

template<typename T >

iterator Ogre::SmallVectorImpl< T >::insert | ( | iterator | I,
|  | size_type | NumToInsert,
|  | const T & | Elt
| ) |  |
| inlineinherited

## ◆ max_size() [1/2]

template<typename T >

size_type Ogre::SmallVectorTemplateCommon< T >::max_size | ( |  | ) | const
| inlineinherited

## ◆ max_size() [2/2]

template<typename T >

size_type Ogre::SmallVectorTemplateCommon< T >::max_size | ( |  | ) | const
| inlineinherited

## ◆ operator!=() [1/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator!= | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator!=() [2/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator!= | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator<() [1/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator< | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator<() [2/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator< | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator=() [1/2]

template<typename T , unsigned N>

const SmallVector& Ogre::SmallVector< T, N >::operator= | ( | const SmallVector< T, N > & | RHS | ) |
| inline

## ◆ operator=() [2/2]

template<typename T , unsigned N>

const SmallVector& Ogre::SmallVector< T, N >::operator= | ( | const SmallVector< T, N > & | RHS | ) |
| inline

## ◆ operator==() [1/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator== | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator==() [2/2]

template<typename T >

bool Ogre::SmallVectorImpl< T >::operator== | ( | const SmallVectorImpl< T > & | RHS | ) | const
| inlineinherited

## ◆ operator[]() [1/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::operator[] | ( | unsigned | idx | ) |
| inlineinherited

## ◆ operator[]() [2/4]

template<typename T >

reference Ogre::SmallVectorTemplateCommon< T >::operator[] | ( | unsigned | idx | ) |
| inlineinherited

## ◆ operator[]() [3/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::operator[] | ( | unsigned | idx | ) | const
| inlineinherited

## ◆ operator[]() [4/4]

template<typename T >

const_reference Ogre::SmallVectorTemplateCommon< T >::operator[] | ( | unsigned | idx | ) | const
| inlineinherited

## ◆ pop_back() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::pop_back | ( |  | ) |
| inlineinherited

## ◆ pop_back() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::pop_back | ( |  | ) |
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::erase(), and Ogre::SmallVectorImpl< Triangle * >::pop_back_val().

## ◆ pop_back_val() [1/2]

template<typename T >

T Ogre::SmallVectorImpl< T >::pop_back_val | ( |  | ) |
| inlineinherited

## ◆ pop_back_val() [2/2]

template<typename T >

T Ogre::SmallVectorImpl< T >::pop_back_val | ( |  | ) |
| inlineinherited

## ◆ push_back() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::push_back | ( | const T & | Elt | ) |
| inlineinherited

## ◆ push_back() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::push_back | ( | const T & | Elt | ) |
| inlineinherited

Referenced by Ogre::SmallVector< T, S >::SmallVector(), Ogre::SmallVector< T, 0 >::SmallVector(), and Ogre::SmallVectorImpl< Triangle * >::insert().

## ◆ rbegin() [1/4]

template<typename T >

reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rbegin | ( |  | ) |
| inlineinherited

## ◆ rbegin() [2/4]

template<typename T >

reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rbegin | ( |  | ) |
| inlineinherited

## ◆ rbegin() [3/4]

template<typename T >

const_reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rbegin | ( |  | ) | const
| inlineinherited

## ◆ rbegin() [4/4]

template<typename T >

const_reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rbegin | ( |  | ) | const
| inlineinherited

## ◆ rend() [1/4]

template<typename T >

reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rend | ( |  | ) |
| inlineinherited

## ◆ rend() [2/4]

template<typename T >

reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rend | ( |  | ) |
| inlineinherited

## ◆ rend() [3/4]

template<typename T >

const_reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rend | ( |  | ) | const
| inlineinherited

## ◆ rend() [4/4]

template<typename T >

const_reverse_iterator Ogre::SmallVectorTemplateCommon< T >::rend | ( |  | ) | const
| inlineinherited

## ◆ reserve() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::reserve | ( | unsigned | N | ) |
| inlineinherited

## ◆ reserve() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::reserve | ( | unsigned | N | ) |
| inlineinherited

Referenced by Ogre::SmallVector< T, S >::SmallVector(), Ogre::SmallVector< T, 0 >::SmallVector(), and Ogre::SmallVectorImpl< Triangle * >::insert().

## ◆ resize() [1/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::resize | ( | unsigned | N | ) |
| inlineinherited

## ◆ resize() [2/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::resize | ( | unsigned | N | ) |
| inlineinherited

## ◆ resize() [3/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::resize | ( | unsigned | N,
|  | const T & | NV
| ) |  |
| inlineinherited

## ◆ resize() [4/4]

template<typename T >

void Ogre::SmallVectorImpl< T >::resize | ( | unsigned | N,
|  | const T & | NV
| ) |  |
| inlineinherited

## ◆ set_size() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::set_size | ( | unsigned | N | ) |
| inlineinherited

set_size - Set the array size to

- N, which the current array must have enough capacity for.

This does not construct or destroy any elements in the vector.

Clients can use this in conjunction with capacity() to write past the end of the buffer when they know that more elements are available, and only update the size later. This avoids the cost of value initializing elements which will only be overwritten.

## ◆ set_size() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::set_size | ( | unsigned | N | ) |
| inlineinherited

set_size - Set the array size to

- N, which the current array must have enough capacity for.

This does not construct or destroy any elements in the vector.

Clients can use this in conjunction with capacity() to write past the end of the buffer when they know that more elements are available, and only update the size later. This avoids the cost of value initializing elements which will only be overwritten.

## ◆ size() [1/2]

template<typename T >

size_type Ogre::SmallVectorTemplateCommon< T >::size | ( | void |  | ) | const
| inlineinherited

## ◆ size() [2/2]

template<typename T >

size_type Ogre::SmallVectorTemplateCommon< T >::size | ( | void |  | ) | const
| inlineinherited

Referenced by Ogre::SmallVectorImpl< Triangle * >::append(), Ogre::SmallVectorImpl< Triangle * >::insert(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::SmallVectorImpl< Triangle * >::operator==(), Ogre::SmallVectorImpl< Triangle * >::resize(), and Ogre::SmallVectorImpl< T >::swap().

## ◆ swap() [1/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::swap | ( | SmallVectorImpl< T > & | RHS | ) |
| inherited

## ◆ swap() [2/2]

template<typename T >

void Ogre::SmallVectorImpl< T >::swap | ( | SmallVectorImpl< T > & | RHS | ) |
| inherited

References Ogre::SmallVectorTemplateCommon< T >::begin(), Ogre::SmallVectorTemplateCommon< T >::capacity(), Ogre::SmallVectorTemplateCommon< T >::end(), Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::grow(), Ogre::SmallVectorTemplateCommon< T >::size(), and std::swap().

Referenced by std::swap().

## ◆ uninitialized_copy() [1/2]

static void Ogre::SmallVectorTemplateBase< T, isPodLike >::uninitialized_copy | ( | It1 | I,
|  | It1 | E,
|  | It2 | Dest
| ) |  |
| inlinestaticinherited

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

## ◆ uninitialized_copy() [2/2]

static void Ogre::SmallVectorTemplateBase< T, isPodLike >::uninitialized_copy | ( | It1 | I,
|  | It1 | E,
|  | It2 | Dest
| ) |  |
| inlinestaticinherited

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

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

- OgreMain/include/OgreSmallVector.h