CMS 3D CMS Logo

List of all members | Classes | Public Types | Public Member Functions | Private Attributes
edm::IDVectorMap< ID, C, P > Class Template Reference

#include <IDVectorMap.h>

Classes

struct  const_iterator
 
struct  id_iterator
 
struct  match_iterator
 
struct  range
 

Public Types

typedef C::const_iterator container_iterator
 
typedef std::map< ID, C > map
 
typedef map::const_iterator map_iterator
 
typedef C::value_type value_type
 

Public Member Functions

const_iterator begin () const
 
template<typename M >
match_iterator< M > begin (const M &m) const
 
const_iterator end () const
 
template<typename M >
match_iterator< M > end (const M &m) const
 
range get (ID id) const
 
id_iterator id_begin () const
 
id_iterator id_end () const
 
size_t id_size () const
 
 IDVectorMap ()
 
template<typename CI >
void insert (ID id, CI begin, CI end)
 
void insert (ID id, const value_type &t)
 
IDVectorMapoperator= (IDVectorMap const &rhs)
 
void swap (IDVectorMap &other)
 

Private Attributes

collection_
 
map map_
 

Detailed Description

template<typename ID, typename C, typename P>
class edm::IDVectorMap< ID, C, P >

Definition at line 8 of file IDVectorMap.h.

Member Typedef Documentation

◆ container_iterator

template<typename ID, typename C, typename P>
typedef C::const_iterator edm::IDVectorMap< ID, C, P >::container_iterator

Definition at line 11 of file IDVectorMap.h.

◆ map

template<typename ID, typename C, typename P>
typedef std::map<ID, C> edm::IDVectorMap< ID, C, P >::map

Definition at line 12 of file IDVectorMap.h.

◆ map_iterator

template<typename ID, typename C, typename P>
typedef map::const_iterator edm::IDVectorMap< ID, C, P >::map_iterator

Definition at line 13 of file IDVectorMap.h.

◆ value_type

template<typename ID, typename C, typename P>
typedef C::value_type edm::IDVectorMap< ID, C, P >::value_type

Definition at line 10 of file IDVectorMap.h.

Constructor & Destructor Documentation

◆ IDVectorMap()

template<typename ID, typename C, typename P>
edm::IDVectorMap< ID, C, P >::IDVectorMap ( )
inline

Definition at line 73 of file IDVectorMap.h.

73 {}

Member Function Documentation

◆ begin() [1/2]

template<typename ID, typename C, typename P>
const_iterator edm::IDVectorMap< ID, C, P >::begin ( void  ) const
inline

Definition at line 74 of file IDVectorMap.h.

74 { return const_iterator(map_.end(), map_.begin(), map_.begin()->second.begin()); }

References edm::IDVectorMap< ID, C, P >::map_.

Referenced by edm::IDVectorMap< ID, C, P >::get(), and edm::IDVectorMap< ID, C, P >::insert().

◆ begin() [2/2]

template<typename ID, typename C, typename P>
template<typename M >
match_iterator<M> edm::IDVectorMap< ID, C, P >::begin ( const M &  m) const
inline

Definition at line 149 of file IDVectorMap.h.

149  {
150  return match_iterator<M>(m, map_.end(), map_.begin(), map_.begin()->second.begin());
151  }

References visualization-live-secondInstance_cfg::m, and edm::IDVectorMap< ID, C, P >::map_.

◆ end() [1/2]

template<typename ID, typename C, typename P>
const_iterator edm::IDVectorMap< ID, C, P >::end ( void  ) const
inline

◆ end() [2/2]

template<typename ID, typename C, typename P>
template<typename M >
match_iterator<M> edm::IDVectorMap< ID, C, P >::end ( const M &  m) const
inline

Definition at line 153 of file IDVectorMap.h.

153  {
154  return match_iterator<M>(m, map_.end());
155  }

References visualization-live-secondInstance_cfg::m, and edm::IDVectorMap< ID, C, P >::map_.

Referenced by Types.LuminosityBlockRange::cppID(), and Types.EventRange::cppID().

◆ get()

template<typename ID, typename C, typename P>
range edm::IDVectorMap< ID, C, P >::get ( ID  id) const
inline

◆ id_begin()

template<typename ID, typename C, typename P>
id_iterator edm::IDVectorMap< ID, C, P >::id_begin ( ) const
inline

Definition at line 193 of file IDVectorMap.h.

193 { return id_iterator(map_.begin()); }

References edm::IDVectorMap< ID, C, P >::map_.

◆ id_end()

template<typename ID, typename C, typename P>
id_iterator edm::IDVectorMap< ID, C, P >::id_end ( ) const
inline

Definition at line 194 of file IDVectorMap.h.

194 { return id_iterator(map_.end()); }

References edm::IDVectorMap< ID, C, P >::map_.

◆ id_size()

template<typename ID, typename C, typename P>
size_t edm::IDVectorMap< ID, C, P >::id_size ( ) const
inline

Definition at line 195 of file IDVectorMap.h.

195 { return map_.size(); }

References edm::IDVectorMap< ID, C, P >::map_.

◆ insert() [1/2]

template<typename ID, typename C, typename P>
template<typename CI >
void edm::IDVectorMap< ID, C, P >::insert ( ID  id,
CI  begin,
CI  end 
)
inline

Definition at line 78 of file IDVectorMap.h.

78  {
79  C& c = map_[id];
80  for (CI i = begin; i != end; ++i)
81  c.push_back(P::clone(*i));
82  }

References edm::IDVectorMap< ID, C, P >::begin(), c, gen::C, clone(), edm::IDVectorMap< ID, C, P >::end(), mps_fire::i, triggerObjects_cff::id, and edm::IDVectorMap< ID, C, P >::map_.

Referenced by BeautifulSoup.PageElement::append().

◆ insert() [2/2]

template<typename ID, typename C, typename P>
void edm::IDVectorMap< ID, C, P >::insert ( ID  id,
const value_type t 
)
inline

◆ operator=()

template<typename ID, typename C, typename P>
IDVectorMap< ID, C, P > & edm::IDVectorMap< ID, C, P >::operator= ( IDVectorMap< ID, C, P > const &  rhs)
inline

Definition at line 211 of file IDVectorMap.h.

211  {
212  IDVectorMap<ID, C, P> temp(rhs);
213  this->swap(temp);
214  return *this;
215  }

References edm::swap(), and groupFilesInBlocks::temp.

◆ swap()

template<typename ID, typename C, typename P>
void edm::IDVectorMap< ID, C, P >::swap ( IDVectorMap< ID, C, P > &  other)
inline

Definition at line 205 of file IDVectorMap.h.

205  {
206  collection_.swap(other.collection_);
207  map_.swap(other.map_);
208  }

References trackingPlots::other.

Member Data Documentation

◆ collection_

template<typename ID, typename C, typename P>
C edm::IDVectorMap< ID, C, P >::collection_
private

Definition at line 200 of file IDVectorMap.h.

◆ map_

template<typename ID, typename C, typename P>
map edm::IDVectorMap< ID, C, P >::map_
private
FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
mps_fire.i
i
Definition: mps_fire.py:428
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
edm::IDVectorMap::begin
const_iterator begin() const
Definition: IDVectorMap.h:74
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:79
trackingPlots.other
other
Definition: trackingPlots.py:1464
edm::IDVectorMap::end
const_iterator end() const
Definition: IDVectorMap.h:75
edm::IDVectorMap::map_
map map_
Definition: IDVectorMap.h:201
edm::IDVectorMap::swap
void swap(IDVectorMap &other)
Definition: IDVectorMap.h:205
edm::IDVectorMap::collection_
C collection_
Definition: IDVectorMap.h:200
gen::C
C
Definition: PomwigHadronizer.cc:78
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:29
edm::IDVectorMap::map_iterator
map::const_iterator map_iterator
Definition: IDVectorMap.h:13
edm::IDVectorMap::container_iterator
C::const_iterator container_iterator
Definition: IDVectorMap.h:11
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:56
submitPVValidationJobs.t
string t
Definition: submitPVValidationJobs.py:644