libMesh::mapvector< Val, index_t > Class Template Reference

#include <mapvector.h>

List of all members.

Classes

class  const_veclike_iterator
class  veclike_iterator

Public Types

typedef std::map< index_t, Val > maptype

Public Member Functions

Val & operator[] (const index_t &k)
Val operator[] (const index_t &k) const
void erase (index_t i)
void erase (const veclike_iterator &pos)
veclike_iterator begin ()
const_veclike_iterator begin () const
veclike_iterator end ()
const_veclike_iterator end () const

Detailed Description

template<typename Val, typename index_t = unsigned int>
class libMesh::mapvector< Val, index_t >

This mapvector templated class is intended to provide the performance characteristics of a std::map with an interface more closely resembling that of a std::vector, for use with ParallelMesh.

Author:
Roy H. Stogner

Definition at line 38 of file mapvector.h.


Member Typedef Documentation

template<typename Val, typename index_t = unsigned int>
typedef std::map<index_t, Val> libMesh::mapvector< Val, index_t >::maptype

Definition at line 41 of file mapvector.h.


Member Function Documentation

template<typename Val, typename index_t = unsigned int>
const_veclike_iterator libMesh::mapvector< Val, index_t >::begin (  )  const [inline]

Definition at line 128 of file mapvector.h.

00128                                        {
00129     return const_veclike_iterator(maptype::begin());
00130   }

template<typename Val, typename index_t = unsigned int>
veclike_iterator libMesh::mapvector< Val, index_t >::begin (  )  [inline]

Definition at line 124 of file mapvector.h.

Referenced by libMesh::ParallelMesh::active_elements_begin(), libMesh::ParallelMesh::active_local_elements_begin(), libMesh::ParallelMesh::active_local_subdomain_elements_begin(), libMesh::ParallelMesh::active_nodes_begin(), libMesh::ParallelMesh::active_not_local_elements_begin(), libMesh::ParallelMesh::active_pid_elements_begin(), libMesh::ParallelMesh::active_subdomain_elements_begin(), libMesh::ParallelMesh::active_type_elements_begin(), libMesh::ParallelMesh::ancestor_elements_begin(), libMesh::ParallelMesh::clear(), libMesh::ParallelMesh::delete_remote_elements(), libMesh::ParallelMesh::elements_begin(), libMesh::ParallelMesh::fix_broken_node_and_element_numbering(), libMesh::ParallelMesh::level_elements_begin(), libMesh::ParallelMesh::local_elements_begin(), libMesh::ParallelMesh::local_level_elements_begin(), libMesh::ParallelMesh::local_nodes_begin(), libMesh::ParallelMesh::local_not_level_elements_begin(), libMesh::ParallelMesh::nodes_begin(), libMesh::ParallelMesh::not_active_elements_begin(), libMesh::ParallelMesh::not_ancestor_elements_begin(), libMesh::ParallelMesh::not_level_elements_begin(), libMesh::ParallelMesh::not_local_elements_begin(), libMesh::ParallelMesh::not_subactive_elements_begin(), libMesh::ParallelMesh::pid_elements_begin(), libMesh::ParallelMesh::pid_nodes_begin(), libMesh::ParallelMesh::renumber_dof_objects(), libMesh::ParallelMesh::renumber_nodes_and_elements(), libMesh::ParallelMesh::subactive_elements_begin(), and libMesh::ParallelMesh::type_elements_begin().

00124                            {
00125     return veclike_iterator(maptype::begin());
00126   }

template<typename Val, typename index_t = unsigned int>
const_veclike_iterator libMesh::mapvector< Val, index_t >::end (  )  const [inline]

Definition at line 136 of file mapvector.h.

00136                                      {
00137     return const_veclike_iterator(maptype::end());
00138   }

template<typename Val, typename index_t = unsigned int>
veclike_iterator libMesh::mapvector< Val, index_t >::end (  )  [inline]

Definition at line 132 of file mapvector.h.

Referenced by libMesh::ParallelMesh::active_elements_begin(), libMesh::ParallelMesh::active_elements_end(), libMesh::ParallelMesh::active_local_elements_begin(), libMesh::ParallelMesh::active_local_elements_end(), libMesh::ParallelMesh::active_local_subdomain_elements_begin(), libMesh::ParallelMesh::active_local_subdomain_elements_end(), libMesh::ParallelMesh::active_nodes_begin(), libMesh::ParallelMesh::active_nodes_end(), libMesh::ParallelMesh::active_not_local_elements_begin(), libMesh::ParallelMesh::active_not_local_elements_end(), libMesh::ParallelMesh::active_pid_elements_begin(), libMesh::ParallelMesh::active_pid_elements_end(), libMesh::ParallelMesh::active_subdomain_elements_begin(), libMesh::ParallelMesh::active_subdomain_elements_end(), libMesh::ParallelMesh::active_type_elements_begin(), libMesh::ParallelMesh::active_type_elements_end(), libMesh::ParallelMesh::ancestor_elements_begin(), libMesh::ParallelMesh::ancestor_elements_end(), libMesh::ParallelMesh::clear(), libMesh::ParallelMesh::delete_remote_elements(), libMesh::ParallelMesh::elements_begin(), libMesh::ParallelMesh::elements_end(), libMesh::ParallelMesh::fix_broken_node_and_element_numbering(), libMesh::ParallelMesh::level_elements_begin(), libMesh::ParallelMesh::level_elements_end(), libMesh::ParallelMesh::local_elements_begin(), libMesh::ParallelMesh::local_elements_end(), libMesh::ParallelMesh::local_level_elements_begin(), libMesh::ParallelMesh::local_level_elements_end(), libMesh::ParallelMesh::local_nodes_begin(), libMesh::ParallelMesh::local_nodes_end(), libMesh::ParallelMesh::local_not_level_elements_begin(), libMesh::ParallelMesh::local_not_level_elements_end(), libMesh::ParallelMesh::nodes_begin(), libMesh::ParallelMesh::nodes_end(), libMesh::ParallelMesh::not_active_elements_begin(), libMesh::ParallelMesh::not_active_elements_end(), libMesh::ParallelMesh::not_ancestor_elements_begin(), libMesh::ParallelMesh::not_ancestor_elements_end(), libMesh::ParallelMesh::not_level_elements_begin(), libMesh::ParallelMesh::not_level_elements_end(), libMesh::ParallelMesh::not_local_elements_begin(), libMesh::ParallelMesh::not_local_elements_end(), libMesh::ParallelMesh::not_subactive_elements_begin(), libMesh::ParallelMesh::not_subactive_elements_end(), libMesh::mapvector< Elem *, dof_id_type >::operator[](), libMesh::ParallelMesh::pid_elements_begin(), libMesh::ParallelMesh::pid_elements_end(), libMesh::ParallelMesh::pid_nodes_begin(), libMesh::ParallelMesh::pid_nodes_end(), libMesh::ParallelMesh::query_elem(), libMesh::ParallelMesh::query_node_ptr(), libMesh::ParallelMesh::renumber_dof_objects(), libMesh::ParallelMesh::renumber_nodes_and_elements(), libMesh::ParallelMesh::subactive_elements_begin(), libMesh::ParallelMesh::subactive_elements_end(), libMesh::ParallelMesh::type_elements_begin(), and libMesh::ParallelMesh::type_elements_end().

00132                          {
00133     return veclike_iterator(maptype::end());
00134   }

template<typename Val, typename index_t = unsigned int>
void libMesh::mapvector< Val, index_t >::erase ( const veclike_iterator pos  )  [inline]

Definition at line 120 of file mapvector.h.

00120                                           {
00121       maptype::erase(pos.it);
00122   }

template<typename Val, typename index_t = unsigned int>
Val libMesh::mapvector< Val, index_t >::operator[] ( const index_t &  k  )  const [inline]

Definition at line 47 of file mapvector.h.

00048   {
00049     typename maptype::const_iterator it = this->find(k);
00050       return it == this->end().it? Val() : it->second;
00051   }

template<typename Val, typename index_t = unsigned int>
Val& libMesh::mapvector< Val, index_t >::operator[] ( const index_t &  k  )  [inline]

Definition at line 43 of file mapvector.h.

Referenced by libMesh::mapvector< Elem *, dof_id_type >::operator[]().

00044   {
00045     return maptype::operator[](k);
00046   }


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

Site Created By: libMesh Developers
Last modified: February 05 2013 19:55:28 UTC

Hosted By:
SourceForge.net Logo