Ogre::HashedVector< T > Class Template Reference
Core » General

A hashed vector. More...

`#include <OgreCommon.h>`

## Public Types

typedef VectorImpl::const_iterator | const_iterator
typedef VectorImpl::const_reference | const_reference
typedef VectorImpl::const_reverse_iterator | const_reverse_iterator
typedef VectorImpl::difference_type | difference_type
typedef VectorImpl::iterator | iterator
typedef VectorImpl::pointer | pointer
typedef VectorImpl::reference | reference
typedef VectorImpl::reverse_iterator | reverse_iterator
typedef VectorImpl::size_type | size_type
typedef VectorImpl::value_type | value_type
typedef std::vector< T, STLAllocator< T, GeneralAllocPolicy > > | VectorImpl

## Public Member Functions

| HashedVector ()
| HashedVector (size_type n)
| HashedVector (size_type n, const T &t)
| HashedVector (const HashedVector< T > &rhs)
template<class InputIterator >
| HashedVector (InputIterator a, InputIterator b)
| ~HashedVector ()
reference | at (size_type n)
const_reference | at (size_type n) const
reference | back ()
const_reference | back () const
iterator | begin ()
const_iterator | begin () const
size_type | capacity () const
void | clear ()
void | dirtyHash ()
bool | empty () const
iterator | end ()
const_iterator | end () const
iterator | erase (iterator pos)
iterator | erase (iterator first, iterator last)
reference | front ()
const_reference | front () const
uint32 | getHash () const
| Get the hash value. More...
iterator | insert (iterator pos, const T &t)
template<class InputIterator >
void | insert (iterator pos, InputIterator f, InputIterator l)
void | insert (iterator pos, size_type n, const T &x)
bool | isHashDirty () const
size_type | max_size () const
bool | operator< (const HashedVector< T > &b)
HashedVector< T > & | operator= (const HashedVector< T > &rhs)
bool | operator== (const HashedVector< T > &b)
reference | operator[] (size_type n)
const_reference | operator[] (size_type n) const
void | pop_back ()
void | push_back (const T &t)
reverse_iterator | rbegin ()
const_reverse_iterator | rbegin () const
reverse_iterator | rend ()
const_reverse_iterator | rend () const
void | reserve (size_t t)
void | resize (size_type n, const T &t=T())
size_type | size () const
void | swap (HashedVector< T > &rhs)

## Protected Member Functions

void | addToHash (const T &newPtr) const
void | recalcHash () const

## Protected Attributes

VectorImpl | mList
uint32 | mListHash
bool | mListHashDirty

## Detailed Description

### template<typename T>
class Ogre::HashedVector< T >

A hashed vector.

Definition at line 332 of file OgreCommon.h.

## Member Typedef Documentation

## const_iterator

template<typename T>

typedef VectorImpl::const_iterator Ogre::HashedVector< T >::const_iterator

Definition at line 362 of file OgreCommon.h.

## const_reference

template<typename T>

typedef VectorImpl::const_reference Ogre::HashedVector< T >::const_reference

Definition at line 358 of file OgreCommon.h.

## const_reverse_iterator

template<typename T>

typedef VectorImpl::const_reverse_iterator Ogre::HashedVector< T >::const_reverse_iterator

Definition at line 364 of file OgreCommon.h.

## difference_type

template<typename T>

typedef VectorImpl::difference_type Ogre::HashedVector< T >::difference_type

Definition at line 360 of file OgreCommon.h.

## iterator

template<typename T>

typedef VectorImpl::iterator Ogre::HashedVector< T >::iterator

Definition at line 361 of file OgreCommon.h.

## pointer

template<typename T>

typedef VectorImpl::pointer Ogre::HashedVector< T >::pointer

Definition at line 356 of file OgreCommon.h.

## reference

template<typename T>

typedef VectorImpl::reference Ogre::HashedVector< T >::reference

Definition at line 357 of file OgreCommon.h.

## reverse_iterator

template<typename T>

typedef VectorImpl::reverse_iterator Ogre::HashedVector< T >::reverse_iterator

Definition at line 363 of file OgreCommon.h.

## size_type

template<typename T>

typedef VectorImpl::size_type Ogre::HashedVector< T >::size_type

Definition at line 359 of file OgreCommon.h.

## value_type

template<typename T>

typedef VectorImpl::value_type Ogre::HashedVector< T >::value_type

Definition at line 355 of file OgreCommon.h.

## VectorImpl

template<typename T>

typedef std::vector<T, STLAllocator<T, GeneralAllocPolicy> > Ogre::HashedVector< T >::VectorImpl

Definition at line 335 of file OgreCommon.h.

## Constructor & Destructor Documentation

## HashedVector() [1/5]

template<typename T>

Ogre::HashedVector< T >::HashedVector | ( |  | ) |

Definition at line 411 of file OgreCommon.h.

## HashedVector() [2/5]

template<typename T>

Ogre::HashedVector< T >::HashedVector | ( | size_type | n | ) |

Definition at line 412 of file OgreCommon.h.

## HashedVector() [3/5]

template<typename T>

Ogre::HashedVector< T >::HashedVector | ( | size_type | n,
|  | const T & | t
| ) |  |

Definition at line 413 of file OgreCommon.h.

## HashedVector() [4/5]

template<typename T>

Ogre::HashedVector< T >::HashedVector | ( | const HashedVector< T > & | rhs | ) |

Definition at line 414 of file OgreCommon.h.

## HashedVector() [5/5]

template<typename T>
template<class InputIterator >

Ogre::HashedVector< T >::HashedVector | ( | InputIterator | a,
|  | InputIterator | b
| ) |  |

Definition at line 418 of file OgreCommon.h.

## ~HashedVector()

template<typename T>

Ogre::HashedVector< T >::~HashedVector | ( |  | ) |

Definition at line 424 of file OgreCommon.h.

## Member Function Documentation

## addToHash()

template<typename T>

void Ogre::HashedVector< T >::addToHash | ( | const T & | newPtr | ) | const

protected

Definition at line 341 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::insert(), Ogre::HashedVector< Light * >::push_back(), and Ogre::HashedVector< Light * >::recalcHash().

## at() [1/2]

template<typename T>

reference Ogre::HashedVector< T >::at | ( | size_type | n | ) |

Definition at line 404 of file OgreCommon.h.

## at() [2/2]

template<typename T>

const_reference Ogre::HashedVector< T >::at | ( | size_type | n | ) | const

Definition at line 410 of file OgreCommon.h.

## back() [1/2]

template<typename T>

reference Ogre::HashedVector< T >::back | ( |  | ) |

Definition at line 441 of file OgreCommon.h.

## back() [2/2]

template<typename T>

const_reference Ogre::HashedVector< T >::back | ( |  | ) | const

Definition at line 447 of file OgreCommon.h.

## begin() [1/2]

template<typename T>

iterator Ogre::HashedVector< T >::begin | ( |  | ) |

Definition at line 375 of file OgreCommon.h.

## begin() [2/2]

template<typename T>

const_iterator Ogre::HashedVector< T >::begin | ( |  | ) | const

Definition at line 382 of file OgreCommon.h.

## capacity()

template<typename T>

size_type Ogre::HashedVector< T >::capacity | ( |  | ) | const

Definition at line 395 of file OgreCommon.h.

## clear()

template<typename T>

void Ogre::HashedVector< T >::clear | ( |  | ) |

Definition at line 502 of file OgreCommon.h.

## dirtyHash()

template<typename T>

void Ogre::HashedVector< T >::dirtyHash | ( |  | ) |

Definition at line 366 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::at(), Ogre::HashedVector< Light * >::back(), Ogre::HashedVector< Light * >::begin(), Ogre::HashedVector< Light * >::erase(), Ogre::HashedVector< Light * >::front(), Ogre::HashedVector< Light * >::HashedVector(), Ogre::HashedVector< Light * >::insert(), Ogre::HashedVector< Light * >::operator[](), Ogre::HashedVector< Light * >::pop_back(), Ogre::HashedVector< Light * >::rbegin(), Ogre::HashedVector< Light * >::resize(), and Ogre::HashedVector< Light * >::swap().

## empty()

template<typename T>

bool Ogre::HashedVector< T >::empty | ( |  | ) | const

Definition at line 396 of file OgreCommon.h.

## end() [1/2]

template<typename T>

iterator Ogre::HashedVector< T >::end | ( |  | ) |

Definition at line 381 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::insert().

## end() [2/2]

template<typename T>

const_iterator Ogre::HashedVector< T >::end | ( |  | ) | const

Definition at line 383 of file OgreCommon.h.

## erase() [1/2]

template<typename T>

iterator Ogre::HashedVector< T >::erase | ( | iterator | pos | ) |

Definition at line 490 of file OgreCommon.h.

## erase() [2/2]

template<typename T>

iterator Ogre::HashedVector< T >::erase | ( | iterator | first,
|  | iterator | last
| ) |  |

Definition at line 496 of file OgreCommon.h.

## front() [1/2]

template<typename T>

reference Ogre::HashedVector< T >::front | ( |  | ) |

Definition at line 434 of file OgreCommon.h.

Referenced by Ogre::Box::getDepth().

## front() [2/2]

template<typename T>

const_reference Ogre::HashedVector< T >::front | ( |  | ) | const

Definition at line 440 of file OgreCommon.h.

## getHash()

template<typename T>

uint32 Ogre::HashedVector< T >::getHash | ( |  | ) | const

Get the hash value.

Definition at line 528 of file OgreCommon.h.

## insert() [1/3]

template<typename T>

iterator Ogre::HashedVector< T >::insert | ( | iterator | pos,
|  | const T & | t
| ) |  |

Definition at line 465 of file OgreCommon.h.

## insert() [2/3]

template<typename T>
template<class InputIterator >

void Ogre::HashedVector< T >::insert | ( | iterator | pos,
|  | InputIterator | f,
|  | InputIterator | l
| ) |  |

Definition at line 477 of file OgreCommon.h.

## insert() [3/3]

template<typename T>

void Ogre::HashedVector< T >::insert | ( | iterator | pos,
|  | size_type | n,
|  | const T & | x
| ) |  |

Definition at line 484 of file OgreCommon.h.

## isHashDirty()

template<typename T>

bool Ogre::HashedVector< T >::isHashDirty | ( |  | ) | const

Definition at line 370 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::getHash(), and Ogre::HashedVector< Light * >::push_back().

## max_size()

template<typename T>

size_type Ogre::HashedVector< T >::max_size | ( |  | ) | const

Definition at line 394 of file OgreCommon.h.

## operator<()

template<typename T>

bool Ogre::HashedVector< T >::operator< | ( | const HashedVector< T > & | b | ) |

Definition at line 523 of file OgreCommon.h.

## operator=()

template<typename T>

HashedVector<T>& Ogre::HashedVector< T >::operator= | ( | const HashedVector< T > & | rhs | ) |

Definition at line 425 of file OgreCommon.h.

## operator==()

template<typename T>

bool Ogre::HashedVector< T >::operator== | ( | const HashedVector< T > & | b | ) |

Definition at line 520 of file OgreCommon.h.

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

template<typename T>

reference Ogre::HashedVector< T >::operator[] | ( | size_type | n | ) |

Definition at line 397 of file OgreCommon.h.

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

template<typename T>

const_reference Ogre::HashedVector< T >::operator[] | ( | size_type | n | ) | const

Definition at line 403 of file OgreCommon.h.

## pop_back()

template<typename T>

void Ogre::HashedVector< T >::pop_back | ( |  | ) |

Definition at line 455 of file OgreCommon.h.

## push_back()

template<typename T>

void Ogre::HashedVector< T >::push_back | ( | const T & | t | ) |

Definition at line 448 of file OgreCommon.h.

## rbegin() [1/2]

template<typename T>

reverse_iterator Ogre::HashedVector< T >::rbegin | ( |  | ) |

Definition at line 384 of file OgreCommon.h.

## rbegin() [2/2]

template<typename T>

const_reverse_iterator Ogre::HashedVector< T >::rbegin | ( |  | ) | const

Definition at line 391 of file OgreCommon.h.

## recalcHash()

template<typename T>

void Ogre::HashedVector< T >::recalcHash | ( |  | ) | const

protected

Definition at line 345 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::getHash().

## rend() [1/2]

template<typename T>

reverse_iterator Ogre::HashedVector< T >::rend | ( |  | ) |

Definition at line 390 of file OgreCommon.h.

## rend() [2/2]

template<typename T>

const_reverse_iterator Ogre::HashedVector< T >::rend | ( |  | ) | const

Definition at line 392 of file OgreCommon.h.

## reserve()

template<typename T>

void Ogre::HashedVector< T >::reserve | ( | size_t | t | ) |

Definition at line 433 of file OgreCommon.h.

## resize()

template<typename T>

void Ogre::HashedVector< T >::resize | ( | size_type | n,
|  | const T & | t = `T()`
| ) |  |

Definition at line 509 of file OgreCommon.h.

## size()

template<typename T>

size_type Ogre::HashedVector< T >::size | ( |  | ) | const

Definition at line 393 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::resize().

## swap()

template<typename T>

void Ogre::HashedVector< T >::swap | ( | HashedVector< T > & | rhs | ) |

Definition at line 460 of file OgreCommon.h.

## Member Data Documentation

## mList

template<typename T>

VectorImpl Ogre::HashedVector< T >::mList

protected

Definition at line 337 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::operator=(), and Ogre::HashedVector< Light * >::swap().

## mListHash

template<typename T>

uint32 Ogre::HashedVector< T >::mListHash

mutable protected

Definition at line 338 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::getHash(), Ogre::HashedVector< Light * >::operator=(), and Ogre::HashedVector< Light * >::operator==().

## mListHashDirty

template<typename T>

bool Ogre::HashedVector< T >::mListHashDirty

mutable protected

Definition at line 339 of file OgreCommon.h.

Referenced by Ogre::HashedVector< Light * >::isHashDirty(), and Ogre::HashedVector< Light * >::operator=().

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

- OgreCommon.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.