Panda3D
|
A specialization of ordered_vector that emulates a standard STL set: many copies of each element are allowed. More...
#include "ordered_vector.h"
Public Types | |
typedef const_iterator_0 | const_iterator |
typedef Vector::const_iterator | const_iterator_0 |
typedef const_reference_0 | const_reference |
typedef const Key & | const_reference_0 |
typedef const_reverse_iterator_0 | const_reverse_iterator |
typedef Vector::const_reverse_iterator | const_reverse_iterator_0 |
typedef difference_type_0 | difference_type |
typedef Vector::difference_type | difference_type_0 |
typedef iterator_0 | iterator |
typedef ordered_vector< Key, Compare >::iterator_0 | iterator_0 |
typedef key_compare_0 | key_compare |
typedef Compare | key_compare_0 |
typedef key_type_0 | key_type |
typedef Key | key_type_0 |
typedef reference_0 | reference |
typedef Key & | reference_0 |
typedef reverse_iterator_0 | reverse_iterator |
typedef Vector::reverse_iterator | reverse_iterator_0 |
typedef size_type_0 | size_type |
typedef Vector::size_type | size_type_0 |
typedef value_compare_0 | value_compare |
typedef Compare | value_compare_0 |
typedef value_type_0 | value_type |
typedef ordered_vector< Key, Compare >::value_type_0 | value_type_0 |
Public Member Functions | |
ov_multiset (TypeHandle type_handle=ov_set_type_handle) | |
ov_multiset (const Compare &compare, TypeHandle type_handle=ov_set_type_handle) | |
ov_multiset (const ov_multiset< Key, Compare > ©) | |
iterator_0 | begin () |
Returns the iterator that marks the first element in the ordered vector. | |
const_iterator_0 | begin () const |
Returns the iterator that marks the first element in the ordered vector. | |
void | clear () |
Removes all elements from the ordered vector. | |
size_type_0 | count (const key_type_0 &key) const |
Returns the number of elements that sort equivalent to the key that are in the vector. | |
bool | empty () const |
Returns true if the ordered vector is empty, false otherwise. | |
iterator_0 | end () |
Returns the iterator that marks the end of the ordered vector. | |
const_iterator_0 | end () const |
Returns the iterator that marks the end of the ordered vector. | |
pair< iterator_0, iterator_0 > | equal_range (const key_type_0 &key) |
pair< const_iterator_0, const_iterator_0 > | equal_range (const key_type_0 &key) const |
iterator_0 | erase (iterator_0 position) |
size_type_0 | erase (const key_type_0 &key) |
void | erase (iterator_0 first, iterator_0 last) |
iterator_0 | find (const key_type_0 &key) |
const_iterator_0 | find (const key_type_0 &key) const |
iterator_0 | find_particular (const key_type_0 &key) |
const_iterator_0 | find_particular (const key_type_0 &key) const |
iterator_0 | insert (iterator_0 position, const value_type_0 &key) |
iterator_0 | insert (const value_type_0 &key) |
iterator_0 | insert_nonunique (iterator_0 position, const value_type_0 &key) |
iterator_0 | insert_nonunique (const value_type_0 &key) |
pair< iterator_0, bool > | insert_unique (const value_type_0 &key) |
iterator_0 | insert_unique (iterator_0 position, const value_type_0 &key) |
iterator_0 | insert_unverified (iterator_0 position, const value_type_0 &key) |
const_iterator_0 | lower_bound (const key_type_0 &key) const |
iterator_0 | lower_bound (const key_type_0 &key) |
size_type_0 | max_size () const |
Returns the maximum number of elements that can possibly be stored in an ordered vector. | |
bool | operator!= (const ordered_vector< Key, Compare > &other) const |
Returns true if the two ordered vectors are not memberwise equivalent, false if they are. | |
bool | operator< (const ordered_vector< Key, Compare > &other) const |
Returns true if this ordered vector sorts lexicographically before the other one, false otherwise. | |
bool | operator<= (const ordered_vector< Key, Compare > &other) const |
Returns true if this ordered vector sorts lexicographically before the other one or is equivalent, false otherwise. | |
ov_multiset< Key, Compare > & | operator= (const ov_multiset< Key, Compare > ©) |
bool | operator== (const ordered_vector< Key, Compare > &other) const |
Returns true if the two ordered vectors are memberwise equivalent, false otherwise. | |
bool | operator> (const ordered_vector< Key, Compare > &other) const |
Returns true if this ordered vector sorts lexicographically after the other one, false otherwise. | |
bool | operator>= (const ordered_vector< Key, Compare > &other) const |
Returns true if this ordered vector sorts lexicographically after the other one or is equivalent, false otherwise. | |
reference | operator[] (size_type_0 n) |
const_reference | operator[] (size_type_0 n) const |
void | pop_back () |
Removes the last element at the end of the vector. | |
void | push_back (const value_type_0 &key) |
Adds the new element to the end of the vector without regard for proper sorting. | |
reverse_iterator_0 | rbegin () |
Returns the iterator that marks the first element in the ordered vector, when viewed in reverse order. | |
const_reverse_iterator_0 | rbegin () const |
Returns the iterator that marks the first element in the ordered vector, when viewed in reverse order. | |
const_reverse_iterator_0 | rend () const |
Returns the iterator that marks the end of the ordered vector, when viewed in reverse order. | |
reverse_iterator_0 | rend () |
Returns the iterator that marks the end of the ordered vector, when viewed in reverse order. | |
void | reserve (size_type_0 n) |
size_type_0 | size () const |
Returns the number of elements in the ordered vector. | |
void | sort () |
Maps to sort_nonunique(). | |
void | sort_nonunique () |
Ensures that the vector is properly sorted after a potentially damaging operation. | |
void | sort_unique () |
Ensures that the vector is properly sorted after a potentially damaging operation. | |
void | swap (ordered_vector< Key, Compare > &other) |
Exchanges the contents of this vector and the other vector, in constant time (e.g., with a pointer swap). | |
iterator_0 | upper_bound (const key_type_0 &key) |
const_iterator_0 | upper_bound (const key_type_0 &key) const |
bool | verify_list () const |
Maps to verify_list_nonunique(). | |
bool | verify_list_nonunique () const |
bool | verify_list_unique () const |
A specialization of ordered_vector that emulates a standard STL set: many copies of each element are allowed.
Definition at line 302 of file ordered_vector.h.
ordered_vector< Key, Compare >::ITERATOR ordered_vector< Key, Compare >::begin | ( | ) | [inline, inherited] |
Returns the iterator that marks the first element in the ordered vector.
Definition at line 86 of file ordered_vector.I.
Referenced by AnimPreloadTable::add_anims_from(), RenderEffects::adjust_transform(), MayaNodeTree::clear_egg(), CharacterJoint::clear_local_transforms(), CharacterJoint::clear_net_transforms(), TransformBlend::compare_to(), TextureAttrib::compare_to_impl(), TexMatrixAttrib::compare_to_impl(), LightAttrib::compare_to_impl(), ClipPlaneAttrib::compare_to_impl(), TextureAttrib::complete_pointers(), RenderEffects::complete_pointers(), ClipPlaneAttrib::complete_pointers(), TransformBlend::complete_pointers(), TextureAttrib::cull_callback(), RenderEffects::cull_callback(), AsyncTaskManager::do_has_task(), AnimPreloadTable::find_anim(), RenderEffects::find_effect(), AttribNodeRegistry::find_node(), TextureAttrib::find_on_stage(), Multifile::find_subfile(), AsyncTaskManager::get_active_tasks(), CharacterJoint::get_local_transforms(), CharacterJoint::get_net_transforms(), SparseArray::get_next_higher_different_bit(), AsyncTaskManager::get_next_wake_time(), SparseArray::get_num_bits(), SparseArray::get_num_off_bits(), SparseArray::get_num_on_bits(), AsyncTaskManager::get_sleeping_tasks(), AsyncTaskManager::get_tasks(), TextureAttrib::has_cull_callback(), VertexTransform::mark_modified(), TransformBlend::normalize_weights(), RenderEffects::operator<(), GraphicsEngine::remove_all_windows(), AnimPreloadTable::remove_anim(), AttribNodeRegistry::remove_node(), Multifile::remove_subfile(), GraphicsEngine::remove_window(), GraphicsEngine::render_frame(), Multifile::repack(), GraphicsEngine::reset_all_windows(), MayaNodeTree::reset_sliders(), RenderEffects::safe_to_combine(), RenderEffects::safe_to_transform(), CharacterJoint::update_internals(), SparseArray::write_datagram(), TextureAttrib::write_datagram(), TexMatrixAttrib::write_datagram(), RenderEffects::write_datagram(), LightAttrib::write_datagram(), ClipPlaneAttrib::write_datagram(), TransformBlend::write_datagram(), CharacterJoint::write_datagram(), and AnimPreloadTable::write_datagram().
ordered_vector< Key, Compare >::CONST_ITERATOR ordered_vector< Key, Compare >::begin | ( | ) | const [inline, inherited] |
Returns the iterator that marks the first element in the ordered vector.
Definition at line 134 of file ordered_vector.I.
void ordered_vector< Key, Compare >::clear | ( | ) | [inline, inherited] |
Removes all elements from the ordered vector.
Definition at line 435 of file ordered_vector.I.
Referenced by SparseArray::clear(), AttribNodeRegistry::clear(), AnimPreloadTable::clear_anims(), CharacterJoint::clear_local_transforms(), and CharacterJoint::clear_net_transforms().
ordered_vector< Key, Compare >::SIZE_TYPE ordered_vector< Key, Compare >::count | ( | const key_type_0 & | key | ) | const [inline, inherited] |
Returns the number of elements that sort equivalent to the key that are in the vector.
Definition at line 521 of file ordered_vector.I.
Referenced by CharacterJoint::has_local_transform(), and CharacterJoint::has_net_transform().
bool ordered_vector< Key, Compare >::empty | ( | ) | const [inline, inherited] |
Returns true if the ordered vector is empty, false otherwise.
Definition at line 227 of file ordered_vector.I.
Referenced by AsyncTaskManager::cleanup(), SparseArray::get_highest_off_bit(), SparseArray::get_highest_on_bit(), SparseArray::get_lowest_off_bit(), SparseArray::get_lowest_on_bit(), SparseArray::get_num_bits(), TextureAttrib::get_texture(), SparseArray::is_all_on(), TexMatrixAttrib::is_empty(), RenderEffects::is_empty(), GraphicsEngine::is_empty(), TextureAttrib::is_identity(), LightAttrib::is_identity(), ClipPlaneAttrib::is_identity(), TextureAttrib::is_off(), SparseArray::is_zero(), TransformBlend::transform_point(), TransformBlend::transform_vector(), and CharacterJoint::update_internals().
ordered_vector< Key, Compare >::ITERATOR ordered_vector< Key, Compare >::end | ( | ) | [inline, inherited] |
Returns the iterator that marks the end of the ordered vector.
Definition at line 98 of file ordered_vector.I.
Referenced by AnimPreloadTable::add_anims_from(), RenderEffects::adjust_transform(), MayaNodeTree::clear_egg(), CharacterJoint::clear_local_transforms(), CharacterJoint::clear_net_transforms(), TransformBlend::compare_to(), TextureAttrib::compare_to_impl(), TexMatrixAttrib::compare_to_impl(), LightAttrib::compare_to_impl(), ClipPlaneAttrib::compare_to_impl(), TextureAttrib::complete_pointers(), ClipPlaneAttrib::complete_pointers(), TransformBlend::complete_pointers(), TextureAttrib::cull_callback(), RenderEffects::cull_callback(), AsyncTaskManager::do_find_task_chain(), AsyncTaskManager::do_has_task(), AnimPreloadTable::find_anim(), RenderEffects::find_effect(), AttribNodeRegistry::find_node(), TextureAttrib::find_on_stage(), Multifile::find_subfile(), AsyncTaskManager::get_active_tasks(), RenderEffects::get_effect(), CharacterJoint::get_local_transforms(), CharacterJoint::get_net_transforms(), SparseArray::get_next_higher_different_bit(), AsyncTaskManager::get_next_wake_time(), SparseArray::get_num_off_bits(), SparseArray::get_num_on_bits(), TextureAttrib::get_on_stage_override(), TextureAttrib::get_on_texture(), TexMatrixAttrib::get_override(), AsyncTaskManager::get_sleeping_tasks(), AsyncTaskManager::get_tasks(), TransformBlend::get_weight(), TextureAttrib::has_cull_callback(), Multifile::has_directory(), LightAttrib::has_off_light(), ClipPlaneAttrib::has_off_plane(), TextureAttrib::has_off_stage(), LightAttrib::has_on_light(), ClipPlaneAttrib::has_on_plane(), TextureAttrib::has_on_stage(), TexMatrixAttrib::has_stage(), TransformBlend::has_transform(), AttribNodeRegistry::lookup_node(), VertexTransform::mark_modified(), TransformBlend::normalize_weights(), RenderEffects::operator<(), GraphicsEngine::remove_all_windows(), AttribNodeRegistry::remove_node(), AsyncTaskManager::remove_task_chain(), TransformBlend::remove_transform(), GraphicsEngine::remove_window(), GraphicsEngine::render_frame(), Multifile::repack(), GraphicsEngine::reset_all_windows(), MayaNodeTree::reset_sliders(), RenderEffects::safe_to_combine(), RenderEffects::safe_to_transform(), Multifile::scan_directory(), VirtualFileSimple::scan_local_directory(), CharacterJoint::update_internals(), SparseArray::write_datagram(), TextureAttrib::write_datagram(), TexMatrixAttrib::write_datagram(), RenderEffects::write_datagram(), LightAttrib::write_datagram(), ClipPlaneAttrib::write_datagram(), TransformBlend::write_datagram(), CharacterJoint::write_datagram(), and AnimPreloadTable::write_datagram().
ordered_vector< Key, Compare >::CONST_ITERATOR ordered_vector< Key, Compare >::end | ( | ) | const [inline, inherited] |
Returns the iterator that marks the end of the ordered vector.
Definition at line 146 of file ordered_vector.I.
ordered_vector< Key, Compare >::SIZE_TYPE ordered_vector< Key, Compare >::max_size | ( | ) | const [inline, inherited] |
Returns the maximum number of elements that can possibly be stored in an ordered vector.
Definition at line 215 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator!= | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if the two ordered vectors are not memberwise equivalent, false if they are.
Definition at line 251 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator< | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if this ordered vector sorts lexicographically before the other one, false otherwise.
Definition at line 264 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator<= | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if this ordered vector sorts lexicographically before the other one or is equivalent, false otherwise.
Definition at line 290 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator== | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if the two ordered vectors are memberwise equivalent, false otherwise.
Definition at line 239 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator> | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if this ordered vector sorts lexicographically after the other one, false otherwise.
Definition at line 277 of file ordered_vector.I.
bool ordered_vector< Key, Compare >::operator>= | ( | const ordered_vector< Key, Compare > & | other | ) | const [inline, inherited] |
Returns true if this ordered vector sorts lexicographically after the other one or is equivalent, false otherwise.
Definition at line 303 of file ordered_vector.I.
void ordered_vector< Key, Compare >::pop_back | ( | ) | [inline, inherited] |
Removes the last element at the end of the vector.
Definition at line 692 of file ordered_vector.I.
Referenced by AsyncTaskManager::cleanup().
void ordered_vector< Key, Compare >::push_back | ( | const value_type_0 & | key | ) | [inline, inherited] |
Adds the new element to the end of the vector without regard for proper sorting.
This is a bad idea to do except to populate the vector the first time; be sure to call sort() after you have added all the elements.
Definition at line 680 of file ordered_vector.I.
Referenced by AnimPreloadTable::add_anim(), AnimPreloadTable::add_anims_from(), TextureAttrib::complete_pointers(), TextureAttrib::fillin(), TexMatrixAttrib::fillin(), RenderEffects::fillin(), ClipPlaneAttrib::fillin(), TransformBlend::fillin(), AnimPreloadTable::fillin(), LightAttrib::finalize(), SparseArray::read_datagram(), and GraphicsEngine::render_frame().
ordered_vector< Key, Compare >::REVERSE_ITERATOR ordered_vector< Key, Compare >::rbegin | ( | ) | [inline, inherited] |
Returns the iterator that marks the first element in the ordered vector, when viewed in reverse order.
Definition at line 110 of file ordered_vector.I.
Referenced by SparseArray::compare_to().
ordered_vector< Key, Compare >::CONST_REVERSE_ITERATOR ordered_vector< Key, Compare >::rbegin | ( | ) | const [inline, inherited] |
Returns the iterator that marks the first element in the ordered vector, when viewed in reverse order.
Definition at line 158 of file ordered_vector.I.
ordered_vector< Key, Compare >::REVERSE_ITERATOR ordered_vector< Key, Compare >::rend | ( | ) | [inline, inherited] |
Returns the iterator that marks the end of the ordered vector, when viewed in reverse order.
Definition at line 122 of file ordered_vector.I.
Referenced by SparseArray::compare_to().
ordered_vector< Key, Compare >::CONST_REVERSE_ITERATOR ordered_vector< Key, Compare >::rend | ( | ) | const [inline, inherited] |
Returns the iterator that marks the end of the ordered vector, when viewed in reverse order.
Definition at line 170 of file ordered_vector.I.
ordered_vector< Key, Compare >::SIZE_TYPE ordered_vector< Key, Compare >::size | ( | ) | const [inline, inherited] |
Returns the number of elements in the ordered vector.
Definition at line 203 of file ordered_vector.I.
Referenced by AnimPreloadTable::add_anims_from(), AsyncTaskManager::cleanup(), Multifile::compare_subfile(), TransformBlend::compare_to(), TextureAttrib::complete_pointers(), TexMatrixAttrib::complete_pointers(), RenderEffects::complete_pointers(), Multifile::extract_subfile(), Multifile::extract_subfile_to(), AnimPreloadTable::get_base_frame_rate(), AnimPreloadTable::get_basename(), MayaNodeTree::get_blend_desc(), RenderEffects::get_effect(), SparseArray::get_highest_off_bit(), SparseArray::get_highest_on_bit(), AttribNodeRegistry::get_node(), AttribNodeRegistry::get_node_name(), AttribNodeRegistry::get_node_type(), AnimPreloadTable::get_num_anims(), SparseArray::get_num_bits(), MayaNodeTree::get_num_blend_descs(), RenderEffects::get_num_effects(), AnimPreloadTable::get_num_frames(), AttribNodeRegistry::get_num_nodes(), LightAttrib::get_num_off_lights(), ClipPlaneAttrib::get_num_off_planes(), TextureAttrib::get_num_off_stages(), LightAttrib::get_num_on_lights(), ClipPlaneAttrib::get_num_on_planes(), TexMatrixAttrib::get_num_stages(), Multifile::get_num_subfiles(), SparseArray::get_num_subranges(), AsyncTaskManager::get_num_task_chains(), TransformBlend::get_num_transforms(), GraphicsEngine::get_num_windows(), LightAttrib::get_off_light(), ClipPlaneAttrib::get_off_plane(), TextureAttrib::get_off_stage(), LightAttrib::get_on_light(), ClipPlaneAttrib::get_on_plane(), TexMatrixAttrib::get_stage(), Multifile::get_subfile_internal_length(), Multifile::get_subfile_internal_start(), Multifile::get_subfile_length(), Multifile::get_subfile_name(), Multifile::get_subfile_timestamp(), SparseArray::get_subrange_begin(), SparseArray::get_subrange_end(), AsyncTaskManager::get_task_chain(), TransformBlend::get_transform(), TransformBlend::get_weight(), GraphicsEngine::get_window(), Multifile::is_subfile_compressed(), Multifile::is_subfile_encrypted(), Multifile::open_read_subfile(), AsyncTaskManager::poll(), Multifile::read_subfile(), AnimPreloadTable::remove_anim(), AttribNodeRegistry::remove_node(), Multifile::remove_subfile(), GraphicsEngine::render_frame(), TransformBlend::set_transform(), TransformBlend::set_weight(), AsyncTaskManager::start_threads(), AsyncTaskManager::stop_threads(), AsyncTaskManager::wait_for_tasks(), SparseArray::write_datagram(), TexMatrixAttrib::write_datagram(), RenderEffects::write_datagram(), TransformBlend::write_datagram(), CharacterJoint::write_datagram(), and AnimPreloadTable::write_datagram().
void ov_multiset< Key, Compare >::sort | ( | ) | [inline] |
Maps to sort_nonunique().
Definition at line 898 of file ordered_vector.I.
References ordered_vector< Key, Compare >::sort_nonunique().
void ordered_vector< Key, Compare >::sort_nonunique | ( | ) | [inline, inherited] |
Ensures that the vector is properly sorted after a potentially damaging operation.
This should not normally need to be called, unless the user has written to the vector using the non-const iterators or has called push_back().
Definition at line 665 of file ordered_vector.I.
Referenced by ov_multiset< Key, Compare >::sort().
void ordered_vector< Key, Compare >::sort_unique | ( | ) | [inline, inherited] |
Ensures that the vector is properly sorted after a potentially damaging operation.
This should not normally need to be called, unless the user has written to the vector using the non-const iterators or has called push_back().
This flavor of sort also eliminates repeated elements.
Definition at line 647 of file ordered_vector.I.
Referenced by ov_set< Key, Compare >::sort().
void ordered_vector< Key, Compare >::swap | ( | ordered_vector< Key, Compare > & | other | ) | [inline, inherited] |
Exchanges the contents of this vector and the other vector, in constant time (e.g., with a pointer swap).
Definition at line 614 of file ordered_vector.I.
Referenced by GraphicsEngine::remove_all_windows(), and GraphicsEngine::render_frame().
bool ov_multiset< Key, Compare >::verify_list | ( | ) | const [inline] |
Maps to verify_list_nonunique().
Definition at line 909 of file ordered_vector.I.