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 65 of file SeedingLayerSetsHits.h.

Constructor & Destructor Documentation

SeedingLayerSetsHits::SeedingLayerSet::SeedingLayerSet ( )
inline

Definition at line 97 of file SeedingLayerSetsHits.h.

97 : 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 98 of file SeedingLayerSetsHits.h.

101  : seedingLayerSets_(sls), begin_(begin), end_(end) {}
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 129 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_.

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

Definition at line 130 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::begin().

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

Definition at line 132 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::end().

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

Definition at line 131 of file SeedingLayerSetsHits.h.

References SeedingLayerSetsHits::SeedingLayer::seedingLayerSets_.

131 { 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 126 of file SeedingLayerSetsHits.h.

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

126 { return SeedingLayer(seedingLayerSets_, *(begin_ + index)); }
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 104 of file SeedingLayerSetsHits.h.

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

104 { 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 118 of file SeedingLayerSetsHits.h.

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

118  {
119  assert(begin < size());
120  assert(0 < end && end <= size());
121  assert(begin < end);
123  }
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 136 of file SeedingLayerSetsHits.h.

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

Definition at line 137 of file SeedingLayerSetsHits.h.

const SeedingLayerSetsHits* SeedingLayerSetsHits::SeedingLayerSet::seedingLayerSets_
private

Definition at line 135 of file SeedingLayerSetsHits.h.