SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's. More...
#include <OgreSmallVector.h>
Public Types | |
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 |
Public Member Functions | |
SmallVectorTemplateBase (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(). | |
bool | empty () const |
iterator | end () |
const_iterator | end () const |
reference | front () |
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. | |
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 |
Static Public Member Functions | |
static void | destroy_range (T *, T *) |
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. | |
template<typename T1 , typename T2 > | |
static void | uninitialized_copy (T1 *I, T1 *E, T2 *Dest) |
uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed. | |
Protected Member Functions | |
size_t | capacity_in_bytes () const |
capacity_in_bytes - This returns capacity()*sizeof(T). | |
iterator | capacity_ptr () |
const_iterator | capacity_ptr () const |
void | grow_pod (size_t MinSizeInBytes, size_t TSize) |
grow_pod - This is an implementation of the grow() method which only works | |
bool | isSmall () const |
isSmall - Return true if this is a smallvector which has not had dynamic memory allocated for it. | |
void | setEnd (T *P) |
size_t | size_in_bytes () const |
size_in_bytes - This returns size()*sizeof(T). | |
Protected Attributes | |
void * | BeginX |
void * | CapacityX |
void * | EndX |
union Ogre::SmallVectorBase::U | FirstEl |
SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's.
Definition at line 290 of file OgreSmallVector.h.
|
inherited |
Definition at line 173 of file OgreSmallVector.h.
|
inherited |
Definition at line 181 of file OgreSmallVector.h.
|
inherited |
Definition at line 179 of file OgreSmallVector.h.
|
inherited |
Definition at line 175 of file OgreSmallVector.h.
|
inherited |
Definition at line 170 of file OgreSmallVector.h.
Definition at line 172 of file OgreSmallVector.h.
Definition at line 180 of file OgreSmallVector.h.
Definition at line 178 of file OgreSmallVector.h.
|
inherited |
Definition at line 176 of file OgreSmallVector.h.
Definition at line 169 of file OgreSmallVector.h.
Definition at line 171 of file OgreSmallVector.h.
Ogre::SmallVectorTemplateBase< T, true >::SmallVectorTemplateBase | ( | size_t | Size | ) |
Definition at line 292 of file OgreSmallVector.h.
|
inherited |
Definition at line 227 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::end().
Referenced by Ogre::SmallVectorImpl< T >::insert(), and Ogre::SmallVectorImpl< T >::pop_back_val().
|
inherited |
Definition at line 230 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::end().
|
inherited |
Definition at line 184 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX.
Referenced by Ogre::SmallVectorImpl< T >::~SmallVectorImpl(), Ogre::SmallVectorImpl< T >::assign(), Ogre::SmallVectorTemplateCommon< T >::capacity(), Ogre::SmallVectorImpl< T >::clear(), Ogre::SmallVectorTemplateCommon< T >::data(), Ogre::SmallVectorTemplateCommon< T >::data(), Ogre::SmallVectorTemplateCommon< T >::front(), Ogre::SmallVectorTemplateCommon< T >::front(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::operator<(), Ogre::SmallVectorImpl< T >::operator==(), Ogre::SmallVectorTemplateCommon< T >::operator[](), Ogre::SmallVectorTemplateCommon< T >::operator[](), Ogre::SmallVectorTemplateCommon< T >::rend(), Ogre::SmallVectorTemplateCommon< T >::rend(), Ogre::SmallVectorImpl< T >::resize(), Ogre::SmallVectorImpl< T >::resize(), Ogre::SmallVectorImpl< T >::set_size(), and Ogre::SmallVectorTemplateCommon< T >::size().
|
inherited |
Definition at line 185 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX.
|
inherited |
capacity - Return the total number of elements in the currently allocated buffer.
Definition at line 204 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin(), and Ogre::SmallVectorTemplateCommon< T >::capacity_ptr().
Referenced by Ogre::SmallVectorImpl< T >::assign(), Ogre::SmallVectorImpl< T >::reserve(), Ogre::SmallVectorImpl< T >::resize(), Ogre::SmallVectorImpl< T >::resize(), and Ogre::SmallVectorImpl< T >::set_size().
|
protectedinherited |
capacity_in_bytes - This returns capacity()*sizeof(T).
Definition at line 149 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX, and Ogre::SmallVectorBase::CapacityX.
|
protectedinherited |
Definition at line 189 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::CapacityX.
Referenced by Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::append(), and Ogre::SmallVectorTemplateCommon< T >::capacity().
|
protectedinherited |
Definition at line 190 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::CapacityX.
|
inherited |
data - Return a pointer to the vector's buffer, even if empty().
Definition at line 207 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
|
inherited |
data - Return a pointer to the vector's buffer, even if empty().
Definition at line 209 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
Definition at line 295 of file OgreSmallVector.h.
|
inherited |
Definition at line 158 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX, and Ogre::SmallVectorBase::EndX.
|
inherited |
Definition at line 186 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::EndX.
Referenced by Ogre::SmallVectorImpl< T >::~SmallVectorImpl(), Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::assign(), Ogre::SmallVectorTemplateCommon< T >::back(), Ogre::SmallVectorTemplateCommon< T >::back(), Ogre::SmallVectorImpl< T >::clear(), Ogre::SmallVectorImpl< T >::erase(), Ogre::SmallVectorImpl< T >::erase(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::operator<(), Ogre::SmallVectorImpl< T >::operator==(), Ogre::SmallVectorTemplateCommon< T >::operator[](), Ogre::SmallVectorTemplateCommon< T >::operator[](), Ogre::SmallVectorImpl< T >::pop_back(), Ogre::SmallVectorImpl< T >::push_back(), Ogre::SmallVectorTemplateCommon< T >::rbegin(), Ogre::SmallVectorTemplateCommon< T >::rbegin(), Ogre::SmallVectorImpl< T >::resize(), Ogre::SmallVectorImpl< T >::resize(), and Ogre::SmallVectorTemplateCommon< T >::size().
|
inherited |
Definition at line 187 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::EndX.
|
inherited |
Definition at line 220 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
|
inherited |
Definition at line 223 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
grow - double the size of the allocated memory, guaranteeing space for at least one more element or MinSize if specified.
Definition at line 317 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::grow_pod().
|
protectedinherited |
isSmall - Return true if this is a smallvector which has not had dynamic memory allocated for it.
Definition at line 139 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX, and Ogre::SmallVectorBase::FirstEl.
Referenced by Ogre::SmallVectorImpl< T >::~SmallVectorImpl().
|
inherited |
Definition at line 200 of file OgreSmallVector.h.
|
inherited |
Definition at line 211 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin(), and Ogre::SmallVectorTemplateCommon< T >::end().
|
inherited |
Definition at line 215 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin(), and Ogre::SmallVectorTemplateCommon< T >::end().
|
inherited |
Definition at line 194 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::end().
|
inherited |
Definition at line 195 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::end().
|
inherited |
Definition at line 196 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
|
inherited |
Definition at line 197 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin().
Definition at line 165 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::EndX.
Referenced by Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::assign(), Ogre::SmallVectorImpl< T >::erase(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::pop_back(), Ogre::SmallVectorImpl< T >::push_back(), Ogre::SmallVectorImpl< T >::resize(), Ogre::SmallVectorImpl< T >::resize(), and Ogre::SmallVectorImpl< T >::set_size().
|
inherited |
Definition at line 199 of file OgreSmallVector.h.
References Ogre::SmallVectorTemplateCommon< T >::begin(), and Ogre::SmallVectorTemplateCommon< T >::end().
Referenced by Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::append(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::insert(), Ogre::SmallVectorImpl< T >::operator==(), Ogre::SmallVectorImpl< T >::resize(), and Ogre::SmallVectorImpl< T >::resize().
|
protectedinherited |
size_in_bytes - This returns size()*sizeof(T).
Definition at line 144 of file OgreSmallVector.h.
References Ogre::SmallVectorBase::BeginX, and Ogre::SmallVectorBase::EndX.
|
static |
uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.
Definition at line 300 of file OgreSmallVector.h.
|
static |
uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.
Definition at line 308 of file OgreSmallVector.h.
|
protectedinherited |
Definition at line 118 of file OgreSmallVector.h.
Referenced by Ogre::SmallVectorTemplateCommon< T >::begin(), Ogre::SmallVectorTemplateCommon< T >::begin(), Ogre::SmallVectorBase::capacity_in_bytes(), Ogre::SmallVectorImpl< T >::clear(), Ogre::SmallVectorBase::empty(), Ogre::SmallVectorBase::isSmall(), and Ogre::SmallVectorBase::size_in_bytes().
|
protectedinherited |
|
protectedinherited |
Definition at line 118 of file OgreSmallVector.h.
Referenced by Ogre::SmallVectorImpl< T >::clear(), Ogre::SmallVectorBase::empty(), Ogre::SmallVectorTemplateCommon< T >::end(), Ogre::SmallVectorTemplateCommon< T >::end(), Ogre::SmallVectorTemplateCommon< T >::setEnd(), and Ogre::SmallVectorBase::size_in_bytes().
|
protectedinherited |
Referenced by Ogre::SmallVectorBase::isSmall().
Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.