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 >:
[legend]

## 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_iterator > | const_reverse_iterator
typedef ptrdiff_t | difference_type
typedef T * | iterator
typedef T * | pointer
typedef T & | reference
typedef std::reverse_iterator< iterator > | reverse_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 )

inline static

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 )

inline static

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:

- OgreSmallVector.h