CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Attributes
SeedingLayerSetsHits::SeedingLayerSet Class Reference

#include <SeedingLayerSetsHits.h>

Classes

class  const_iterator
 

Public Member Functions

const_iterator begin () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
const_iterator end () const
 
SeedingLayer operator[] (LayerSetIndex index) const
 Get a given SeedingLayer (index is between 0 and size()-1) More...
 
 SeedingLayerSet ()
 
 SeedingLayerSet (const SeedingLayerSetsHits *sls, std::vector< LayerSetIndex >::const_iterator begin, std::vector< LayerSetIndex >::const_iterator end)
 
LayerSetIndex size () const
 Number of layers in this set. More...
 
SeedingLayerSet slice (size_t begin, size_t end) const
 

Private Attributes

std::vector< LayerSetIndex >::const_iterator begin_
 
std::vector< LayerSetIndex >::const_iterator end_
 
const SeedingLayerSetsHitsseedingLayerSets_
 

Detailed Description

Auxiliary class to represent a set of SeedingLayers (e.g. BPIX1+BPIX2+BPIX3).

Holds a pointer to SeedingLayerSetsHits, and iterators to SeedingLayerSetsHits::layerSetIndices_ to for the first and last+1 layer of the set.

Definition at line 67 of file SeedingLayerSetsHits.h.

Constructor & Destructor Documentation

SeedingLayerSetsHits::SeedingLayerSet::SeedingLayerSet ( )
inline

Definition at line 95 of file SeedingLayerSetsHits.h.

95 : seedingLayerSets_(nullptr) {}
const SeedingLayerSetsHits * seedingLayerSets_
SeedingLayerSetsHits::SeedingLayerSet::SeedingLayerSet ( const SeedingLayerSetsHits sls,
std::vector< LayerSetIndex >::const_iterator  begin,
std::vector< LayerSetIndex >::const_iterator  end 
)
inline

Definition at line 96 of file SeedingLayerSetsHits.h.

96  :
std::vector< LayerSetIndex >::const_iterator begin_
std::vector< LayerSetIndex >::const_iterator end_
const SeedingLayerSetsHits * seedingLayerSets_

Member Function Documentation

const_iterator SeedingLayerSetsHits::SeedingLayerSet::begin ( void  ) const
inline

Definition at line 127 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_.

127 { return const_iterator(seedingLayerSets_, begin_); }
std::vector< LayerSetIndex >::const_iterator begin_
const SeedingLayerSetsHits * seedingLayerSets_
const_iterator SeedingLayerSetsHits::SeedingLayerSet::cbegin ( ) const
inline

Definition at line 128 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::begin().

128 { return begin(); }
const_iterator SeedingLayerSetsHits::SeedingLayerSet::cend ( ) const
inline

Definition at line 130 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::end().

130 { return end(); }
const_iterator SeedingLayerSetsHits::SeedingLayerSet::end ( void  ) const
inline

Definition at line 129 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_.

129 { return const_iterator(seedingLayerSets_, end_); }
std::vector< LayerSetIndex >::const_iterator end_
const SeedingLayerSetsHits * seedingLayerSets_
SeedingLayer SeedingLayerSetsHits::SeedingLayerSet::operator[] ( LayerSetIndex  index) const
inline

Get a given SeedingLayer (index is between 0 and size()-1)

Definition at line 122 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::SeedingLayer(), and SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_.

122  {
123  return SeedingLayer(seedingLayerSets_, *(begin_+index));
124  }
std::vector< LayerSetIndex >::const_iterator begin_
const SeedingLayerSetsHits * seedingLayerSets_
LayerSetIndex SeedingLayerSetsHits::SeedingLayerSet::size ( void  ) const
inline

Number of layers in this set.

Definition at line 100 of file SeedingLayerSetsHits.h.

Referenced by ntupleDataFormat._Collection::__iter__(), ntupleDataFormat._Collection::__len__(), and SeedingLayerSetsHits::print().

100 { return end_-begin_; }
std::vector< LayerSetIndex >::const_iterator begin_
std::vector< LayerSetIndex >::const_iterator end_
SeedingLayerSet SeedingLayerSetsHits::SeedingLayerSet::slice ( size_t  begin,
size_t  end 
) const
inline

Slices the layer set

E.g. slicing BPix1+BPix2+BPix3+BPix4 with (0,2) will give BPix1+BPix2.

Parameters
beginIndex for the first layer of the slice
endIndex for the one-beyond-last layer of the slice

It is caller's responsibility to guarantee that "begin < size()" and "0 < end <= size()" and "begin < end".

Definition at line 114 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_, and SeedingLayerSetsHits::size().

114  {
115  assert(begin < size());
116  assert(0 < end && end <= size());
117  assert(begin < end);
119  }
LayerSetIndex size() const
Number of layers in this set.
std::vector< LayerSetIndex >::const_iterator begin_
const SeedingLayerSetsHits * seedingLayerSets_

Member Data Documentation

std::vector<LayerSetIndex>::const_iterator SeedingLayerSetsHits::SeedingLayerSet::begin_
private

Definition at line 134 of file SeedingLayerSetsHits.h.

std::vector<LayerSetIndex>::const_iterator SeedingLayerSetsHits::SeedingLayerSet::end_
private

Definition at line 135 of file SeedingLayerSetsHits.h.

const SeedingLayerSetsHits* SeedingLayerSetsHits::SeedingLayerSet::seedingLayerSets_
private

Definition at line 133 of file SeedingLayerSetsHits.h.