OGRE: Ogre::SmallVectorTemplateBase< T, isPodLike > 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::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 >:
[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 T * | iterator
typedef T * | 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 size_t | size_type
typedef size_t | size_type
typedef T | value_type
typedef T | value_type

## Public Member Functions
| SmallVectorTemplateBase (size_t Size)
| SmallVectorTemplateBase (size_t Size)
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...
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
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...
size_type | max_size () const
size_type | max_size () const
reference | operator[] (unsigned idx)
reference | operator[] (unsigned idx)
const_reference | operator[] (unsigned idx) const
const_reference | operator[] (unsigned idx) const
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
size_type | size () const
size_type | size () const

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

## 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.

## 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 T* Ogre::SmallVectorTemplateCommon< T >::iterator
| inherited

## ◆ iterator [2/2]

template<typename T >

typedef T* Ogre::SmallVectorTemplateCommon< 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 size_t Ogre::SmallVectorTemplateCommon< T >::size_type
| inherited

## ◆ size_type [2/2]

template<typename T >

typedef size_t Ogre::SmallVectorTemplateCommon< 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

## ◆ SmallVectorTemplateBase() [1/2]

template<typename T , bool isPodLike>

Ogre::SmallVectorTemplateBase< T, isPodLike >::SmallVectorTemplateBase | ( | size_t | Size | ) |
| inline

## ◆ SmallVectorTemplateBase() [2/2]

template<typename T , bool isPodLike>

Ogre::SmallVectorTemplateBase< T, isPodLike >::SmallVectorTemplateBase | ( | size_t | Size | ) |
| inline

## Member Function Documentation

## ◆ 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().

## ◆ 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]

template<typename T , bool isPodLike>

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

## ◆ destroy_range() [2/2]

template<typename T , bool isPodLike>

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

## ◆ 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

## ◆ 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]

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.

## ◆ grow() [2/2]

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.

## ◆ 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/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

## ◆ 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

## ◆ 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().

## ◆ uninitialized_copy() [1/2]

template<typename T , bool isPodLike>
template<typename It1 , typename It2 >

static 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.

## ◆ uninitialized_copy() [2/2]

template<typename T , bool isPodLike>
template<typename It1 , typename It2 >

static 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.

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

- OgreMain/include/OgreSmallVector.h