Public Types | Public Member Functions | Private Member Functions | List of all members
gtsam::ConcurrentMap< KEY, VALUE > Class Template Reference

#include <ConcurrentMap.h>

Inheritance diagram for gtsam::ConcurrentMap< KEY, VALUE >:
Inheritance graph
[legend]

Public Types

typedef ConcurrentMapBase< KEY, VALUE > Base
 
- Public Types inherited from gtsam::FastMap< KEY, VALUE >
typedef std::map< KEY, VALUE, std::less< KEY >, typename internal::FastDefaultAllocator< std::pair< const KEY, VALUE > >::typeBase
 

Public Member Functions

 ConcurrentMap ()
 
template<typename INPUTITERATOR >
 ConcurrentMap (INPUTITERATOR first, INPUTITERATOR last)
 
 ConcurrentMap (const ConcurrentMap< KEY, VALUE > &x)
 
 ConcurrentMap (const Base &x)
 
bool exists (const KEY &e) const
 
void unsafe_erase (typename Base::iterator position)
 
Base::size_type unsafe_erase (const KEY &k)
 
void unsafe_erase (typename Base::iterator first, typename Base::iterator last)
 
- Public Member Functions inherited from gtsam::FastMap< KEY, VALUE >
bool exists (const KEY &e) const
 
 FastMap ()
 
template<typename INPUTITERATOR >
 FastMap (INPUTITERATOR first, INPUTITERATOR last)
 
 FastMap (const FastMap< KEY, VALUE > &x)
 
 FastMap (const Base &x)
 
bool insert2 (const KEY &key, const VALUE &val)
 
 operator std::map< KEY, VALUE > () const
 

Private Member Functions

void erase ()
 

Detailed Description

template<typename KEY, typename VALUE>
class gtsam::ConcurrentMap< KEY, VALUE >

FastMap is a thin wrapper around std::map that uses the boost fast_pool_allocator instead of the default STL allocator. This is just a convenience to avoid having lengthy types in the code. Through timing, we've seen that the fast_pool_allocator can lead to speedups of several percent.

Definition at line 69 of file ConcurrentMap.h.

Member Typedef Documentation

◆ Base

template<typename KEY, typename VALUE>
typedef ConcurrentMapBase<KEY,VALUE> gtsam::ConcurrentMap< KEY, VALUE >::Base

Definition at line 73 of file ConcurrentMap.h.

Constructor & Destructor Documentation

◆ ConcurrentMap() [1/4]

template<typename KEY, typename VALUE>
gtsam::ConcurrentMap< KEY, VALUE >::ConcurrentMap ( )
inline

Default constructor

Definition at line 76 of file ConcurrentMap.h.

◆ ConcurrentMap() [2/4]

template<typename KEY, typename VALUE>
template<typename INPUTITERATOR >
gtsam::ConcurrentMap< KEY, VALUE >::ConcurrentMap ( INPUTITERATOR  first,
INPUTITERATOR  last 
)
inline

Constructor from a range, passes through to base class

Definition at line 80 of file ConcurrentMap.h.

◆ ConcurrentMap() [3/4]

template<typename KEY, typename VALUE>
gtsam::ConcurrentMap< KEY, VALUE >::ConcurrentMap ( const ConcurrentMap< KEY, VALUE > &  x)
inline

Copy constructor from another ConcurrentMap

Definition at line 83 of file ConcurrentMap.h.

◆ ConcurrentMap() [4/4]

template<typename KEY, typename VALUE>
gtsam::ConcurrentMap< KEY, VALUE >::ConcurrentMap ( const Base x)
inline

Copy constructor from the base map class

Definition at line 86 of file ConcurrentMap.h.

Member Function Documentation

◆ erase()

template<typename KEY, typename VALUE>
void gtsam::ConcurrentMap< KEY, VALUE >::erase ( )
inlineprivate

Definition at line 99 of file ConcurrentMap.h.

◆ exists()

template<typename KEY, typename VALUE>
bool gtsam::ConcurrentMap< KEY, VALUE >::exists ( const KEY &  e) const
inline

Handy 'exists' function

Definition at line 89 of file ConcurrentMap.h.

◆ unsafe_erase() [1/3]

template<typename KEY, typename VALUE>
void gtsam::ConcurrentMap< KEY, VALUE >::unsafe_erase ( typename Base::iterator  position)
inline

Definition at line 94 of file ConcurrentMap.h.

◆ unsafe_erase() [2/3]

template<typename KEY, typename VALUE>
Base::size_type gtsam::ConcurrentMap< KEY, VALUE >::unsafe_erase ( const KEY &  k)
inline

Definition at line 95 of file ConcurrentMap.h.

◆ unsafe_erase() [3/3]

template<typename KEY, typename VALUE>
void gtsam::ConcurrentMap< KEY, VALUE >::unsafe_erase ( typename Base::iterator  first,
typename Base::iterator  last 
)
inline

Definition at line 96 of file ConcurrentMap.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:16