CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
reco::PFBlockElementSuperCluster Class Reference

Cluster Element. More...

#include <PFBlockElementSuperCluster.h>

Inheritance diagram for reco::PFBlockElementSuperCluster:
reco::PFBlockElement

Public Member Functions

PFBlockElementclone () const
 necessary to have the edm::OwnVector<PFBlockElement> working More...
 
void Dump (std::ostream &out=std::cout, const char *tab=" ") const
 print the object inside the element More...
 
float ecalIso () const
 
bool fromGsfElectron () const
 
bool fromPhoton () const
 
float hcalIso () const
 
float hoverE () const
 
 PFBlockElementSuperCluster ()
 
 PFBlockElementSuperCluster (const SuperClusterRef &ref)
 constructor. type must be equal to PS1, PS2, ECAL, HCAL. More...
 
void setEcalIso (float val)
 set the ecal Iso More...
 
void setFromGsfElectron (bool val)
 set provenance More...
 
void setFromPhoton (bool val)
 set provenance More...
 
void setHcalIso (float val)
 set the had Iso More...
 
void setHoE (float val)
 set H/E More...
 
void setTrackIso (float val)
 set the track Iso More...
 
SuperClusterRef superClusterRef () const
 
float trackIso () const
 
- Public Member Functions inherited from reco::PFBlockElement
virtual PFClusterRef clusterRef () const
 
virtual ConversionRef convRef () const
 
virtual PFDisplacedTrackerVertexRef displacedVertexRef (TrackType trType) const
 
unsigned index () const
 
virtual bool isLinkedToDisplacedVertex () const
 
virtual bool isPrimary () const
 
virtual bool isSecondary () const
 
void lock ()
 lock element More...
 
bool locked () const
 locked ? More...
 
virtual MuonRef muonRef () const
 
 PFBlockElement (Type type=NONE)
 standard constructor More...
 
virtual void setConversionRef (const ConversionRef &convRef, TrackType trType)
 
virtual void setDisplacedVertexRef (const PFDisplacedTrackerVertexRef &niref, TrackType trType)
 
void setIndex (unsigned index)
 set index More...
 
virtual void setMuonRef (const MuonRef &muref)
 
virtual void setTrackType (TrackType trType, bool value)
 the trackType More...
 
virtual void setV0Ref (const VertexCompositeCandidateRef &v0ref, TrackType trType)
 
virtual reco::TrackRef trackRef () const
 
virtual PFRecTrackRef trackRefPF () const
 
virtual bool trackType (TrackType trType) const
 
Type type () const
 
void unLock ()
 unlock element More...
 
virtual VertexCompositeCandidateRef V0Ref () const
 
virtual ~PFBlockElement ()
 destructor More...
 

Private Attributes

float ecalIso_
 
bool fromGsfElectron_
 
bool fromPhoton_
 
float hcalIso_
 
float HoE_
 
SuperClusterRef superClusterRef_
 reference to the corresponding cluster More...
 
float trackIso_
 

Additional Inherited Members

- Public Types inherited from reco::PFBlockElement
enum  TrackType {
  DEFAULT =0, T_FROM_DISP, T_TO_DISP, T_FROM_GAMMACONV,
  MUON, T_FROM_V0
}
 
enum  Type {
  NONE =0, TRACK =1, PS1 =2, PS2 =3,
  ECAL =4, HCAL =5, GSF =6, BREM =7,
  HFEM =8, HFHAD =9, SC =10
}
 
- Protected Attributes inherited from reco::PFBlockElement
unsigned index_
 index in block vector More...
 
bool locked_
 
Type type_
 

Detailed Description

Cluster Element.

this class contains a reference to a PFCluster

Definition at line 14 of file PFBlockElementSuperCluster.h.

Constructor & Destructor Documentation

reco::PFBlockElementSuperCluster::PFBlockElementSuperCluster ( )
inline

Definition at line 16 of file PFBlockElementSuperCluster.h.

Referenced by clone().

16 {}
reco::PFBlockElementSuperCluster::PFBlockElementSuperCluster ( const SuperClusterRef ref)
inline

constructor. type must be equal to PS1, PS2, ECAL, HCAL.

Definition at line 21 of file PFBlockElementSuperCluster.h.

Member Function Documentation

PFBlockElement* reco::PFBlockElementSuperCluster::clone ( ) const
inlinevirtual

necessary to have the edm::OwnVector<PFBlockElement> working

Implements reco::PFBlockElement.

Definition at line 32 of file PFBlockElementSuperCluster.h.

References PFBlockElementSuperCluster().

void PFBlockElementSuperCluster::Dump ( std::ostream &  out = std::cout,
const char *  tab = " " 
) const
virtual

print the object inside the element

Reimplemented from reco::PFBlockElement.

Definition at line 11 of file PFBlockElementSuperCluster.cc.

References ET, and mathSSE::sqrt().

12  {
13 
14  if(! out ) return;
15  // need to convert the math::XYZPoint data member of the PFCluster class=
16  // to a displacement vector:
17  ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D<double> , ROOT::Math::DefaultCoordinateSystemTag >
18  clusterPos( superClusterRef_->position().X(), superClusterRef_->position().Y(),superClusterRef_->position().Z() );
19 
20  clusterPos = clusterPos.Unit();
21  double E = superClusterRef_->energy();
22  clusterPos *= E;
23  double ET = sqrt (clusterPos.X()*clusterPos.X() + clusterPos.Y()*clusterPos.Y());
24 
25  out << setprecision(3);
26  out << setiosflags(ios::right);
27  out << setiosflags(ios::fixed);
28  out << setw(4) <<", ET =" << setw(7) << ET;
29  out << setw(4) <<", E =" << setw(7) << E;
30  out << " (eta,phi,z)= (";
31  out << superClusterRef_->position().Eta()<<",";
32  out << superClusterRef_->position().Phi()<<",";
33  out << superClusterRef_->position().Z() <<")";
34  out << resetiosflags(ios::right|ios::fixed);
35 }
SuperClusterRef superClusterRef_
reference to the corresponding cluster
T sqrt(T t)
Definition: SSEVec.h:28
tuple out
Definition: dbtoconf.py:99
#define ET
float reco::PFBlockElementSuperCluster::ecalIso ( ) const
inline
Returns
the ecal isolation

Definition at line 62 of file PFBlockElementSuperCluster.h.

References ecalIso_.

bool reco::PFBlockElementSuperCluster::fromGsfElectron ( ) const
inline
Returns
provenance

Definition at line 71 of file PFBlockElementSuperCluster.h.

References fromGsfElectron_.

bool reco::PFBlockElementSuperCluster::fromPhoton ( ) const
inline
Returns
provenance

Definition at line 74 of file PFBlockElementSuperCluster.h.

References fromPhoton_.

Referenced by PFPhotonAlgo::RunPFPhoton().

float reco::PFBlockElementSuperCluster::hcalIso ( ) const
inline
Returns
the had isolation

Definition at line 65 of file PFBlockElementSuperCluster.h.

References hcalIso_.

float reco::PFBlockElementSuperCluster::hoverE ( ) const
inline
Returns
Hoe

Definition at line 68 of file PFBlockElementSuperCluster.h.

References HoE_.

void reco::PFBlockElementSuperCluster::setEcalIso ( float  val)
inline

set the ecal Iso

Definition at line 44 of file PFBlockElementSuperCluster.h.

References ecalIso_.

Referenced by PFBlockAlgo::fillFromPhoton().

void reco::PFBlockElementSuperCluster::setFromGsfElectron ( bool  val)
inline

set provenance

Definition at line 53 of file PFBlockElementSuperCluster.h.

References fromGsfElectron_.

Referenced by PFBlockAlgo::setInput().

void reco::PFBlockElementSuperCluster::setFromPhoton ( bool  val)
inline

set provenance

Definition at line 56 of file PFBlockElementSuperCluster.h.

References fromPhoton_.

Referenced by PFBlockAlgo::fillFromPhoton(), and PFBlockAlgo::setInput().

void reco::PFBlockElementSuperCluster::setHcalIso ( float  val)
inline

set the had Iso

Definition at line 47 of file PFBlockElementSuperCluster.h.

References hcalIso_.

Referenced by PFBlockAlgo::fillFromPhoton().

void reco::PFBlockElementSuperCluster::setHoE ( float  val)
inline

set H/E

Definition at line 50 of file PFBlockElementSuperCluster.h.

References HoE_.

Referenced by PFBlockAlgo::fillFromPhoton().

void reco::PFBlockElementSuperCluster::setTrackIso ( float  val)
inline

set the track Iso

Definition at line 41 of file PFBlockElementSuperCluster.h.

References trackIso_.

Referenced by PFBlockAlgo::fillFromPhoton().

SuperClusterRef reco::PFBlockElementSuperCluster::superClusterRef ( ) const
inline
Returns
reference to the corresponding cluster

Definition at line 35 of file PFBlockElementSuperCluster.h.

References superClusterRef_.

Referenced by PFPhotonAlgo::RunPFPhoton().

35 {return superClusterRef_;}
SuperClusterRef superClusterRef_
reference to the corresponding cluster
float reco::PFBlockElementSuperCluster::trackIso ( ) const
inline
Returns
the track isolation

Definition at line 59 of file PFBlockElementSuperCluster.h.

References trackIso_.

Member Data Documentation

float reco::PFBlockElementSuperCluster::ecalIso_
private

Definition at line 81 of file PFBlockElementSuperCluster.h.

Referenced by ecalIso(), and setEcalIso().

bool reco::PFBlockElementSuperCluster::fromGsfElectron_
private

Definition at line 85 of file PFBlockElementSuperCluster.h.

Referenced by fromGsfElectron(), and setFromGsfElectron().

bool reco::PFBlockElementSuperCluster::fromPhoton_
private

Definition at line 86 of file PFBlockElementSuperCluster.h.

Referenced by fromPhoton(), and setFromPhoton().

float reco::PFBlockElementSuperCluster::hcalIso_
private

Definition at line 82 of file PFBlockElementSuperCluster.h.

Referenced by hcalIso(), and setHcalIso().

float reco::PFBlockElementSuperCluster::HoE_
private

Definition at line 83 of file PFBlockElementSuperCluster.h.

Referenced by hoverE(), and setHoE().

SuperClusterRef reco::PFBlockElementSuperCluster::superClusterRef_
private

reference to the corresponding cluster

Definition at line 78 of file PFBlockElementSuperCluster.h.

Referenced by superClusterRef().

float reco::PFBlockElementSuperCluster::trackIso_
private

Definition at line 80 of file PFBlockElementSuperCluster.h.

Referenced by setTrackIso(), and trackIso().