![]() |
OGRE 2.3.3
Object-Oriented Graphics Rendering Engine
|
VectorSet is basically a helper to use a vector as a small set container. More...
#include <OgreVectorSet.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 SmallVector< T, S >::iterator | iterator |
| typedef T * | pointer |
| typedef T & | reference |
| typedef std::reverse_iterator< iterator > | reverse_iterator |
| typedef SuperClass::size_type | size_type |
| typedef T | value_type |
Public Member Functions | |
| iterator | add (const T &item) |
| void | addNotExists (const T &item) |
| 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. | |
| void | append (size_type NumInputs, const T &Elt) |
| append - Add the specified range to the end of the SmallVector. | |
| void | assign (unsigned NumElts, const T &Elt) |
| 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. | |
| void | clear () |
| 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 |
| iterator | erase (iterator I) |
| iterator | erase (iterator S, iterator E) |
| iterator | find (const T &item) |
| iterator | findExists (const T &item) |
| 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. | |
| bool | has (const T &item) |
| iterator | insert (iterator I, const T &Elt) |
| template<typename ItTy> | |
| iterator | insert (iterator I, ItTy From, ItTy To) |
| iterator | insert (iterator I, size_type NumToInsert, const T &Elt) |
| size_type | max_size () const |
| bool | operator!= (const SmallVectorImpl &RHS) const |
| bool | operator< (const SmallVectorImpl &RHS) const |
| bool | operator== (const SmallVectorImpl &RHS) const |
| reference | operator[] (unsigned idx) |
| const_reference | operator[] (unsigned idx) const |
| void | pop_back () |
| T | pop_back_val () |
| void | push_back (const T &Elt) |
| reverse_iterator | rbegin () |
| const_reverse_iterator | rbegin () const |
| bool | remove (const T &item) |
| void | remove (iterator it) |
| void | removeExists (const T &item) |
| reverse_iterator | rend () |
| const_reverse_iterator | rend () const |
| void | replaceExists (const T &oldItem, const T &newItem) |
| void | reserve (unsigned N) |
| void | resize (unsigned N) |
| void | resize (unsigned N, const T &NV) |
| void | set_size (unsigned N) |
| set_size - Set the array size to | |
| size_type | size () const |
| void | swap (SmallVectorImpl &RHS) |
Static Public Member Functions | |
| 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. | |
VectorSet is basically a helper to use a vector as a small set container.
Also these functions keep the code clean and fast. You can insert in O(1) time, if you know that it doesn't exists. You can remove in O(1) time, if you know the position of the item.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| typedef SmallVector<T,S>::iterator Ogre::VectorSet< T, S >::iterator |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| VectorSet< T, S >::iterator Ogre::VectorSet< T, S >::add | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), find(), and Ogre::SmallVector< T, S >::push_back().
| void Ogre::VectorSet< T, S >::addNotExists | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), find(), OgreAssert, and Ogre::SmallVector< T, S >::push_back().
|
inlineinherited |
append - Add the specified range to the end of the SmallVector.
Referenced by Ogre::SmallVector< T, 0 >::SmallVector(), Ogre::U< T >::insert(), Ogre::U< T >::insert(), and Ogre::iterator< T, S >::SmallVector().
|
inlineinherited |
append - Add the specified range to the end of the SmallVector.
|
inlineinherited |
|
inlineinherited |
References end().
|
inlineinherited |
References end().
|
inlineinherited |
Referenced by capacity(), data(), data(), front(), front(), Ogre::SmallVectorTemplateBase< T, isPodLike >::grow(), Ogre::U< T >::operator<(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::U< T >::operator==(), operator[](), operator[](), rend(), rend(), size(), and Ogre::SmallVectorImpl< T >::swap().
|
inlineinherited |
|
inlineinherited |
capacity - Return the total number of elements in the currently allocated buffer.
References begin().
Referenced by Ogre::SmallVectorTemplateBase< T, isPodLike >::grow(), and Ogre::SmallVectorImpl< T >::swap().
|
inlineinherited |
Referenced by Ogre::U< T >::assign().
|
inlineinherited |
|
inlineinherited |
|
inlinestaticinherited |
|
inlineinherited |
Referenced by Ogre::iterator< T, S >::SmallVector().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
| VectorSet< T, S >::iterator Ogre::VectorSet< T, S >::find | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::begin(), and Ogre::SmallVector< T, S >::end().
Referenced by add(), addNotExists(), findExists(), has(), remove(), removeExists(), and replaceExists().
| VectorSet< T, S >::iterator Ogre::VectorSet< T, S >::findExists | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), find(), and OgreAssert.
|
inlineinherited |
References begin().
|
inlineinherited |
References begin().
|
inherited |
grow - double the size of the allocated memory, guaranteeing space for at least one more element or MinSize if specified.
Referenced by Ogre::U< T >::append(), Ogre::U< T >::append(), Ogre::U< T >::assign(), Ogre::U< T >::insert(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::U< T >::push_back(), Ogre::U< T >::reserve(), Ogre::U< T >::resize(), Ogre::U< T >::resize(), and Ogre::SmallVectorImpl< T >::swap().
| bool Ogre::VectorSet< T, S >::has | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), and find().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Referenced by Ogre::U< T >::erase(), and Ogre::U< T >::pop_back_val().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
References end().
|
inlineinherited |
References end().
| bool Ogre::VectorSet< T, S >::remove | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), find(), and remove().
| void Ogre::VectorSet< T, S >::remove | ( | iterator | it | ) |
References Ogre::SmallVector< T, S >::back(), and Ogre::SmallVector< T, S >::pop_back().
Referenced by remove(), and removeExists().
| void Ogre::VectorSet< T, S >::removeExists | ( | const T & | item | ) |
References Ogre::SmallVector< T, S >::end(), find(), OgreAssert, and remove().
|
inlineinherited |
References begin().
|
inlineinherited |
References begin().
| void Ogre::VectorSet< T, S >::replaceExists | ( | const T & | oldItem, |
| const T & | newItem ) |
References Ogre::SmallVector< T, S >::end(), find(), and OgreAssert.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
set_size - Set the array size to
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.
|
inlineinherited |
References begin(), and end().
Referenced by Ogre::SmallVectorTemplateBase< T, isPodLike >::grow(), Ogre::SmallVectorImpl< T >::operator=(), Ogre::U< T >::operator==(), and Ogre::SmallVectorImpl< T >::swap().
|
inherited |
References Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::begin(), Ogre::SmallVectorTemplateCommon< T >::begin(), Ogre::SmallVectorTemplateCommon< T >::capacity(), Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::destroy_range(), Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::end(), Ogre::SmallVectorTemplateCommon< T >::end(), Ogre::SmallVectorTemplateBase< T, isPodLike >::grow(), Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::grow(), Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::size(), Ogre::SmallVectorTemplateCommon< T >::size(), std::swap(), and Ogre::SmallVectorTemplateBase< T, isPodLike< T >::value >::uninitialized_copy().
Referenced by std::swap(), and std::swap().
|
inlinestaticinherited |
uninitialized_copy - Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.
Referenced by Ogre::U< T >::insert(), Ogre::U< T >::insert(), Ogre::SmallVectorImpl< T >::operator=(), and Ogre::SmallVectorImpl< T >::swap().