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 | Static Public Member Functions | Private Attributes
reco::ElectronSeed Class Reference

#include <ElectronSeed.h>

Inheritance diagram for reco::ElectronSeed:
TrajectorySeed

Public Types

typedef edm::RefToBase
< CaloCluster
CaloClusterRef
 
typedef edm::Ref< TrackCollectionCtfTrackRef
 
typedef edm::OwnVector
< TrackingRecHit
RecHitContainer
 
- Public Types inherited from TrajectorySeed
typedef
recHitContainer::const_iterator 
const_iterator
 
typedef std::pair
< const_iterator,
const_iterator
range
 
typedef edm::OwnVector
< TrackingRecHit
recHitContainer
 

Public Member Functions

CaloClusterRef caloCluster () const
 
ElectronSeedclone () const
 
CtfTrackRef ctfTrack () const
 Accessors. More...
 
float dPhi1 () const
 
float dPhi1Pos () const
 
float dPhi2 () const
 
float dPhi2Pos () const
 
float dRz1 () const
 
float dRz1Pos () const
 
float dRz2 () const
 
float dRz2Pos () const
 
 ElectronSeed ()
 Construction of base attributes. More...
 
 ElectronSeed (const TrajectorySeed &)
 
 ElectronSeed (PTrajectoryStateOnDet &pts, RecHitContainer &rh, PropagationDirection &dir)
 
TrackCharge getCharge () const
 Utility. More...
 
unsigned char hitsMask () const
 
float hoe1 () const
 
float hoe2 () const
 
bool isEcalDriven () const
 
bool isTrackerDriven () const
 
void setCaloCluster (const CaloClusterRef &, unsigned char hitsMask=0, int subDet2=0, int subDet1=0, float hoe1=std::numeric_limits< float >::infinity(), float hoe2=std::numeric_limits< float >::infinity())
 
void setCtfTrack (const CtfTrackRef &)
 Set additional info. More...
 
void setNegAttributes (float dRz2=std::numeric_limits< float >::infinity(), float dPhi2=std::numeric_limits< float >::infinity(), float dRz1=std::numeric_limits< float >::infinity(), float dPhi1=std::numeric_limits< float >::infinity())
 
void setPosAttributes (float dRz2=std::numeric_limits< float >::infinity(), float dPhi2=std::numeric_limits< float >::infinity(), float dRz1=std::numeric_limits< float >::infinity(), float dPhi1=std::numeric_limits< float >::infinity())
 
int subDet1 () const
 
int subDet2 () const
 
virtual ~ElectronSeed ()
 
- Public Member Functions inherited from TrajectorySeed
PropagationDirection direction () const
 
unsigned int nHits () const
 
TrajectorySeedoperator= (TrajectorySeed const &o)
 
range recHits () const
 
PTrajectoryStateOnDet const & startingState () const
 
void swap (PTrajectoryStateOnDet &ptsos, recHitContainer &rh, PropagationDirection &dir) noexcept
 
void swap (TrajectorySeed &rh) noexcept
 
 TrajectorySeed ()
 
 TrajectorySeed (PTrajectoryStateOnDet const &ptsos, recHitContainer const &rh, PropagationDirection dir)
 
 TrajectorySeed (TrajectorySeed const &o)
 
virtual ~TrajectorySeed ()
 

Static Public Member Functions

static std::string const & name ()
 

Private Attributes

CaloClusterRef caloCluster_
 
CtfTrackRef ctfTrack_
 
float dPhi1_
 
float dPhi1Pos_
 
float dPhi2_
 
float dPhi2Pos_
 
float dRz1_
 
float dRz1Pos_
 
float dRz2_
 
float dRz2Pos_
 
float hcalDepth1OverEcal_
 
float hcalDepth2OverEcal_
 
unsigned char hitsMask_
 
bool isEcalDriven_
 
bool isTrackerDriven_
 
int subDet1_
 
int subDet2_
 

Detailed Description

ElectronSeed is a seed for gsf tracking, constructed from either a supercluster or a ctf track.

Author
D.Chamont, U.Berthon, C.Charlot, LLR Palaiseau

Definition at line 28 of file ElectronSeed.h.

Member Typedef Documentation

Definition at line 33 of file ElectronSeed.h.

Definition at line 34 of file ElectronSeed.h.

Definition at line 32 of file ElectronSeed.h.

Constructor & Destructor Documentation

ElectronSeed::ElectronSeed ( )

Construction of base attributes.

Definition at line 8 of file ElectronSeed.cc.

Referenced by clone().

10  subDet2_(0),
15  subDet1_(0),
22  isEcalDriven_(false), isTrackerDriven_(false)
23  {}
unsigned char hitsMask_
Definition: ElectronSeed.h:95
const double infinity
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
ElectronSeed::ElectronSeed ( const TrajectorySeed seed)

Definition at line 26 of file ElectronSeed.cc.

27  : TrajectorySeed(seed),
29  subDet2_(0),
34  subDet1_(0),
41  isEcalDriven_(false), isTrackerDriven_(false)
42  {}
unsigned char hitsMask_
Definition: ElectronSeed.h:95
const double infinity
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
ElectronSeed::ElectronSeed ( PTrajectoryStateOnDet pts,
RecHitContainer rh,
PropagationDirection dir 
)

Definition at line 45 of file ElectronSeed.cc.

46  : TrajectorySeed(pts,rh,dir),
48  subDet2_(0),
53  subDet1_(0),
60  isEcalDriven_(false), isTrackerDriven_(false)
61  {}
unsigned char hitsMask_
Definition: ElectronSeed.h:95
const double infinity
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
dbl *** dir
Definition: mlp_gen.cc:35
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
ElectronSeed::~ElectronSeed ( )
virtual

Definition at line 103 of file ElectronSeed.cc.

104  {}

Member Function Documentation

CaloClusterRef reco::ElectronSeed::caloCluster ( ) const
inline

Definition at line 70 of file ElectronSeed.h.

References caloCluster_.

Referenced by ElectronSeedGenerator::addSeed().

70 { return caloCluster_ ; }
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
ElectronSeed* reco::ElectronSeed::clone ( void  ) const
inlinevirtual

Reimplemented from TrajectorySeed.

Definition at line 46 of file ElectronSeed.h.

References ElectronSeed().

46 { return new ElectronSeed(*this) ; }
ElectronSeed()
Construction of base attributes.
Definition: ElectronSeed.cc:8
CtfTrackRef reco::ElectronSeed::ctfTrack ( ) const
inline

Accessors.

Definition at line 69 of file ElectronSeed.h.

References ctfTrack_.

69 { return ctfTrack_ ; }
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
float reco::ElectronSeed::dPhi1 ( ) const
inline

Definition at line 79 of file ElectronSeed.h.

References dPhi1_.

79 { return dPhi1_ ; }
float reco::ElectronSeed::dPhi1Pos ( ) const
inline

Definition at line 81 of file ElectronSeed.h.

References dPhi1Pos_.

81 { return dPhi1Pos_ ; }
float reco::ElectronSeed::dPhi2 ( ) const
inline

Definition at line 74 of file ElectronSeed.h.

References dPhi2_.

Referenced by ElectronSeedGenerator::addSeed(), and display_seed().

74 { return dPhi2_ ; }
float reco::ElectronSeed::dPhi2Pos ( ) const
inline

Definition at line 76 of file ElectronSeed.h.

References dPhi2Pos_.

Referenced by ElectronSeedGenerator::addSeed().

76 { return dPhi2Pos_ ; }
float reco::ElectronSeed::dRz1 ( ) const
inline

Definition at line 78 of file ElectronSeed.h.

References dRz1_.

78 { return dRz1_ ; }
float reco::ElectronSeed::dRz1Pos ( ) const
inline

Definition at line 80 of file ElectronSeed.h.

References dRz1Pos_.

80 { return dRz1Pos_ ; }
float reco::ElectronSeed::dRz2 ( ) const
inline

Definition at line 73 of file ElectronSeed.h.

References dRz2_.

Referenced by ElectronSeedGenerator::addSeed(), and display_seed().

73 { return dRz2_ ; }
float reco::ElectronSeed::dRz2Pos ( ) const
inline

Definition at line 75 of file ElectronSeed.h.

References dRz2Pos_.

Referenced by ElectronSeedGenerator::addSeed().

75 { return dRz2Pos_ ; }
TrackCharge reco::ElectronSeed::getCharge ( ) const
inline

Utility.

Definition at line 86 of file ElectronSeed.h.

References LocalTrajectoryParameters::charge(), PTrajectoryStateOnDet::parameters(), and TrajectorySeed::startingState().

86 { return startingState().parameters().charge() ; }
PTrajectoryStateOnDet const & startingState() const
TrackCharge charge() const
Charge (-1, 0 or 1)
const LocalTrajectoryParameters & parameters() const
unsigned char reco::ElectronSeed::hitsMask ( ) const
inline

Definition at line 71 of file ElectronSeed.h.

References hitsMask_.

Referenced by ElectronSeedGenerator::addSeed().

71 { return hitsMask_ ; }
unsigned char hitsMask_
Definition: ElectronSeed.h:95
float reco::ElectronSeed::hoe1 ( ) const
inline

Definition at line 82 of file ElectronSeed.h.

References hcalDepth1OverEcal_.

82 { return hcalDepth1OverEcal_ ; }
float reco::ElectronSeed::hoe2 ( ) const
inline

Definition at line 83 of file ElectronSeed.h.

References hcalDepth2OverEcal_.

83 { return hcalDepth2OverEcal_ ; }
bool reco::ElectronSeed::isEcalDriven ( ) const
inline

Definition at line 88 of file ElectronSeed.h.

References isEcalDriven_.

88 { return isEcalDriven_ ; }
bool reco::ElectronSeed::isTrackerDriven ( ) const
inline

Definition at line 89 of file ElectronSeed.h.

References isTrackerDriven_.

89 { return isTrackerDriven_ ; }
static std::string const& reco::ElectronSeed::name ( )
inlinestatic
void ElectronSeed::setCaloCluster ( const CaloClusterRef scl,
unsigned char  hitsMask = 0,
int  subDet2 = 0,
int  subDet1 = 0,
float  hoe1 = std::numeric_limits<float>::infinity(),
float  hoe2 = std::numeric_limits<float>::infinity() 
)

Definition at line 71 of file ElectronSeed.cc.

References funct::true.

Referenced by FastElectronSeedGenerator::addASeedToThisCluster(), SiStripElectronSeedGenerator::findSeedsFromCluster(), ElectronSeedGenerator::seedsFromRecHits(), and ElectronSeedGenerator::seedsFromTrajectorySeeds().

75  {
76  caloCluster_ = scl ;
79  subDet2_ = subDet2 ;
80  subDet1_ = subDet1 ;
83  }
unsigned char hitsMask_
Definition: ElectronSeed.h:95
float hoe1() const
Definition: ElectronSeed.h:82
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
int subDet1() const
Definition: ElectronSeed.h:77
float hoe2() const
Definition: ElectronSeed.h:83
int subDet2() const
Definition: ElectronSeed.h:72
unsigned char hitsMask() const
Definition: ElectronSeed.h:71
void ElectronSeed::setCtfTrack ( const CtfTrackRef ctfTrack)

Set additional info.

Definition at line 64 of file ElectronSeed.cc.

References funct::true.

Referenced by ElectronSeedMerger::produce(), and GoodSeedProducer::produce().

65  {
68  }
CtfTrackRef ctfTrack() const
Accessors.
Definition: ElectronSeed.h:69
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
void ElectronSeed::setNegAttributes ( float  dRz2 = std::numeric_limits<float>::infinity(),
float  dPhi2 = std::numeric_limits<float>::infinity(),
float  dRz1 = std::numeric_limits<float>::infinity(),
float  dPhi1 = std::numeric_limits<float>::infinity() 
)

Definition at line 86 of file ElectronSeed.cc.

Referenced by ElectronSeedGenerator::addSeed().

87  {
88  dRz2_ = dRz2 ;
89  dPhi2_ = dPhi2 ;
90  dRz1_ = dRz1 ;
91  dPhi1_ = dPhi1 ;
92  }
float dPhi1() const
Definition: ElectronSeed.h:79
float dPhi2() const
Definition: ElectronSeed.h:74
float dRz1() const
Definition: ElectronSeed.h:78
float dRz2() const
Definition: ElectronSeed.h:73
void ElectronSeed::setPosAttributes ( float  dRz2 = std::numeric_limits<float>::infinity(),
float  dPhi2 = std::numeric_limits<float>::infinity(),
float  dRz1 = std::numeric_limits<float>::infinity(),
float  dPhi1 = std::numeric_limits<float>::infinity() 
)

Definition at line 95 of file ElectronSeed.cc.

Referenced by ElectronSeedGenerator::addSeed().

96  {
97  dRz2Pos_ = dRz2 ;
98  dPhi2Pos_ = dPhi2 ;
99  dRz1Pos_ = dRz1 ;
100  dPhi1Pos_ = dPhi1 ;
101  }
float dPhi1() const
Definition: ElectronSeed.h:79
float dPhi2() const
Definition: ElectronSeed.h:74
float dRz1() const
Definition: ElectronSeed.h:78
float dRz2() const
Definition: ElectronSeed.h:73
int reco::ElectronSeed::subDet1 ( ) const
inline

Definition at line 77 of file ElectronSeed.h.

References subDet1_.

77 { return subDet1_ ; }
int reco::ElectronSeed::subDet2 ( ) const
inline

Definition at line 72 of file ElectronSeed.h.

References subDet2_.

Referenced by display_seed().

72 { return subDet2_ ; }

Member Data Documentation

CaloClusterRef reco::ElectronSeed::caloCluster_
private

Definition at line 94 of file ElectronSeed.h.

Referenced by caloCluster().

CtfTrackRef reco::ElectronSeed::ctfTrack_
private

Definition at line 93 of file ElectronSeed.h.

Referenced by ctfTrack().

float reco::ElectronSeed::dPhi1_
private

Definition at line 103 of file ElectronSeed.h.

Referenced by dPhi1().

float reco::ElectronSeed::dPhi1Pos_
private

Definition at line 105 of file ElectronSeed.h.

Referenced by dPhi1Pos().

float reco::ElectronSeed::dPhi2_
private

Definition at line 98 of file ElectronSeed.h.

Referenced by dPhi2().

float reco::ElectronSeed::dPhi2Pos_
private

Definition at line 100 of file ElectronSeed.h.

Referenced by dPhi2Pos().

float reco::ElectronSeed::dRz1_
private

Definition at line 102 of file ElectronSeed.h.

Referenced by dRz1().

float reco::ElectronSeed::dRz1Pos_
private

Definition at line 104 of file ElectronSeed.h.

Referenced by dRz1Pos().

float reco::ElectronSeed::dRz2_
private

Definition at line 97 of file ElectronSeed.h.

Referenced by dRz2().

float reco::ElectronSeed::dRz2Pos_
private

Definition at line 99 of file ElectronSeed.h.

Referenced by dRz2Pos().

float reco::ElectronSeed::hcalDepth1OverEcal_
private

Definition at line 106 of file ElectronSeed.h.

Referenced by hoe1().

float reco::ElectronSeed::hcalDepth2OverEcal_
private

Definition at line 107 of file ElectronSeed.h.

Referenced by hoe2().

unsigned char reco::ElectronSeed::hitsMask_
private

Definition at line 95 of file ElectronSeed.h.

Referenced by hitsMask().

bool reco::ElectronSeed::isEcalDriven_
private

Definition at line 108 of file ElectronSeed.h.

Referenced by isEcalDriven().

bool reco::ElectronSeed::isTrackerDriven_
private

Definition at line 109 of file ElectronSeed.h.

Referenced by isTrackerDriven().

int reco::ElectronSeed::subDet1_
private

Definition at line 101 of file ElectronSeed.h.

Referenced by subDet1().

int reco::ElectronSeed::subDet2_
private

Definition at line 96 of file ElectronSeed.h.

Referenced by subDet2().