CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
TkLasBeam Class Reference

#include <TkLasBeam.h>

Inheritance diagram for TkLasBeam:
TkFittedLasBeam

Public Types

typedef std::vector< SiStripLaserRecHit2D >::const_iterator const_iterator
 

Public Member Functions

std::vector< SiStripLaserRecHit2D >::const_iterator begin (void) const
 access iterator to the collection of hits More...
 
std::vector< SiStripLaserRecHit2D >::const_iterator end (void) const
 access iterator to the collection of hits More...
 
unsigned int getBeamId (void) const
 return the full beam identifier More...
 
unsigned int getBeamNumber (void) const
 returns the beam number (10^1 digit of beamId) More...
 
const std::vector< SiStripLaserRecHit2D > & getData (void) const
 access the collection of hits More...
 
bool isAlignmentTube (void) const
 true if this is an AT beam (from 10^2 digit of beamId) More...
 
bool isRing6 (void) const
 true if this beam hits TEC R6 (last digit of beamId) More...
 
bool isTecInternal (int side=0) const
 true if this is a TEC internal beam (from 10^2 digit of beamId). side parameter: -1 = ask if TEC-, 1 = TEC+, 0 = any tec, don't care More...
 
void push_back (const SiStripLaserRecHit2D &aHit)
 insert a hit in the data vector More...
 
 TkLasBeam ()
 
 TkLasBeam (unsigned int aBeamId)
 
virtual ~TkLasBeam ()
 

Private Attributes

unsigned int beamId
 
std::vector< SiStripLaserRecHit2Ddata
 

Detailed Description

a collection of tracker laser hits (SiStripLaserRecHit2D) originating from a single laser beam. documentation in TkLasTrackBasedInterface TWiki

Definition at line 12 of file TkLasBeam.h.

Member Typedef Documentation

◆ const_iterator

Definition at line 14 of file TkLasBeam.h.

Constructor & Destructor Documentation

◆ TkLasBeam() [1/2]

TkLasBeam::TkLasBeam ( )
inline

Definition at line 16 of file TkLasBeam.h.

16 {}

◆ TkLasBeam() [2/2]

TkLasBeam::TkLasBeam ( unsigned int  aBeamId)
inline

Definition at line 18 of file TkLasBeam.h.

References beamId.

18 { beamId = aBeamId; }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ ~TkLasBeam()

virtual TkLasBeam::~TkLasBeam ( )
inlinevirtual

Definition at line 20 of file TkLasBeam.h.

20 {} // virtual destructor to work as base class

Member Function Documentation

◆ begin()

std::vector<SiStripLaserRecHit2D>::const_iterator TkLasBeam::begin ( void  ) const
inline

access iterator to the collection of hits

Definition at line 29 of file TkLasBeam.h.

References data.

29 { return data.begin(); }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:51

◆ end()

std::vector<SiStripLaserRecHit2D>::const_iterator TkLasBeam::end ( void  ) const
inline

access iterator to the collection of hits

Definition at line 32 of file TkLasBeam.h.

References data.

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

32 { return data.end(); }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:51

◆ getBeamId()

unsigned int TkLasBeam::getBeamId ( void  ) const
inline

return the full beam identifier

Definition at line 23 of file TkLasBeam.h.

References beamId.

Referenced by MillePedeAlignmentAlgorithm::addLasBeam().

23 { return beamId; }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ getBeamNumber()

unsigned int TkLasBeam::getBeamNumber ( void  ) const
inline

returns the beam number (10^1 digit of beamId)

Definition at line 38 of file TkLasBeam.h.

References beamId.

38 { return beamId % 100 / 10; }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ getData()

const std::vector<SiStripLaserRecHit2D>& TkLasBeam::getData ( void  ) const
inline

access the collection of hits

Definition at line 26 of file TkLasBeam.h.

References data.

Referenced by MillePedeAlignmentAlgorithm::addLasBeam(), and TkFittedLasBeam::setParameters().

26 { return data; }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:51

◆ isAlignmentTube()

bool TkLasBeam::isAlignmentTube ( void  ) const
inline

true if this is an AT beam (from 10^2 digit of beamId)

Definition at line 44 of file TkLasBeam.h.

References beamId.

44 { return (beamId % 1000 / 100) == 2; }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ isRing6()

bool TkLasBeam::isRing6 ( void  ) const
inline

true if this beam hits TEC R6 (last digit of beamId)

Definition at line 47 of file TkLasBeam.h.

References beamId.

47 { return (beamId % 10) == 1; }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ isTecInternal()

bool TkLasBeam::isTecInternal ( int  side = 0) const

true if this is a TEC internal beam (from 10^2 digit of beamId). side parameter: -1 = ask if TEC-, 1 = TEC+, 0 = any tec, don't care

Definition at line 4 of file TkLasBeam.cc.

References beamId, Exception, and ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side().

4  {
5  switch (side) {
6  case 0:
7  return beamId % 1000 / 100 < 2;
8  case -1:
9  return beamId % 1000 / 100 == 1;
10  case 1:
11  return beamId % 1000 / 100 == 0;
12  }
13 
14  throw cms::Exception("[TkLasBeam::isTecInternal]") << " ** ERROR: side=" << side << " undefined, must be -1, 0 or 1.";
15  return false; // unreached
16 }
unsigned int beamId
Definition: TkLasBeam.h:50

◆ push_back()

void TkLasBeam::push_back ( const SiStripLaserRecHit2D aHit)
inline

insert a hit in the data vector

Definition at line 35 of file TkLasBeam.h.

References data.

Referenced by LaserAlignment::endRunProduce().

35 { data.push_back(aHit); }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:51

Member Data Documentation

◆ beamId

unsigned int TkLasBeam::beamId
private

Definition at line 50 of file TkLasBeam.h.

Referenced by getBeamId(), getBeamNumber(), isAlignmentTube(), isRing6(), isTecInternal(), and TkLasBeam().

◆ data

std::vector<SiStripLaserRecHit2D> TkLasBeam::data
private