CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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

Definition at line 16 of file TkLasBeam.h.

Constructor & Destructor Documentation

TkLasBeam::TkLasBeam ( )
inline

Definition at line 18 of file TkLasBeam.h.

18 {}
TkLasBeam::TkLasBeam ( unsigned int  aBeamId)
inline

Definition at line 20 of file TkLasBeam.h.

References beamId.

20 { beamId = aBeamId; }
unsigned int beamId
Definition: TkLasBeam.h:54
virtual TkLasBeam::~TkLasBeam ( )
inlinevirtual

Definition at line 22 of file TkLasBeam.h.

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

Member Function Documentation

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

access iterator to the collection of hits

Definition at line 31 of file TkLasBeam.h.

References data.

Referenced by TkLasBeamFitter::getLasBeams().

31 { return data.begin(); }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:55
std::vector<SiStripLaserRecHit2D>::const_iterator TkLasBeam::end ( void  ) const
inline

access iterator to the collection of hits

Definition at line 34 of file TkLasBeam.h.

References data.

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

34 { return data.end(); }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:55
unsigned int TkLasBeam::getBeamId ( void  ) const
inline

return the full beam identifier

Definition at line 25 of file TkLasBeam.h.

References beamId.

Referenced by MillePedeAlignmentAlgorithm::addLasBeam(), and TkLasBeamFitter::getLasBeams().

25 { return beamId; }
unsigned int beamId
Definition: TkLasBeam.h:54
unsigned int TkLasBeam::getBeamNumber ( void  ) const
inline

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

Definition at line 40 of file TkLasBeam.h.

References beamId.

40 { return beamId%100/10; }
unsigned int beamId
Definition: TkLasBeam.h:54
const std::vector<SiStripLaserRecHit2D>& TkLasBeam::getData ( void  ) const
inline

access the collection of hits

Definition at line 28 of file TkLasBeam.h.

References data.

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

28 { return data; }
std::vector< SiStripLaserRecHit2D > data
Definition: TkLasBeam.h:55
bool TkLasBeam::isAlignmentTube ( void  ) const
inline

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

Definition at line 46 of file TkLasBeam.h.

References beamId.

Referenced by TkLasBeamFitter::fitBeam(), TkLasBeamFitter::fitter(), TkLasBeamFitter::getLasBeams(), and TkLasBeamFitter::getLasHits().

46 { return ( beamId%1000/100 ) == 2; }
unsigned int beamId
Definition: TkLasBeam.h:54
bool TkLasBeam::isRing6 ( void  ) const
inline

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

Definition at line 49 of file TkLasBeam.h.

References beamId.

Referenced by TkLasBeamFitter::getLasBeams().

49 { return (beamId%10) == 1; }
unsigned int beamId
Definition: TkLasBeam.h:54
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, and edm::hlt::Exception.

Referenced by TkLasBeamFitter::buildTrajectory(), TkLasBeamFitter::fitBeam(), TkLasBeamFitter::fitter(), TkLasBeamFitter::getLasBeams(), TkLasBeamFitter::globalTrackPoint(), and TkLasBeamFitter::trackPhi().

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

insert a hit in the data vector

Definition at line 37 of file TkLasBeam.h.

References data.

Referenced by LaserAlignment::endRunProduce().

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

Member Data Documentation

unsigned int TkLasBeam::beamId
private

Definition at line 54 of file TkLasBeam.h.

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

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