CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PhotonCore.h
Go to the documentation of this file.
1 #ifndef EgammaCandidates_PhotonCore_h
2 #define EgammaCandidates_PhotonCore_h
3 
21 
22 
23 namespace reco {
24 
25  class PhotonCore {
26  public:
28  // PhotonCore() { }
29 
33 
34  // while for building photons from pf I would use the default constructor
36  // followed by the setters of the provenance and of the Ref to the wanted supercluster
37  // at that point if in PF you have found a photon which correspond to a standard SC yuo can
38  // set both supercluster and the two flags to true
39  // if you have found an object which does not have a standard SC associated you set only the
40  // one from pflow.
41  // How does this sound ?
42 
43 
45  virtual ~PhotonCore() { }
46 
47  PhotonCore* clone() const { return new PhotonCore( * this ); }
48 
60  void setPFlowPhoton( const bool prov) { isPFlowPhoton_ = prov; }
61  void setStandardPhoton( const bool prov) { isStandardPhoton_ = prov; }
62 
63 
68 
70  // which returns the pfSuperCluster only if the standard supeclsuter is not null
71  // But I had udnerstood from you when we spke last time that we wish to be free
72  // to have both SCs available. Or not ?
73 
78 
81 
84  bool isPFlowPhoton() const {return isPFlowPhoton_;}
85  bool isStandardPhoton() const {return isStandardPhoton_;}
86 
87  private:
88 
91  // vector of references to Conversions
93  //vector of references for 1-leg
95  // vector of references to ElectronPixelSeeds
101 
102  };
103 
104 
105 }
106 
107 #endif
reco::ConversionRefVector conversions() const
get vector of references to Conversion's
Definition: PhotonCore.h:75
void setSuperCluster(const reco::SuperClusterRef &r)
set reference to SuperCluster
Definition: PhotonCore.h:50
void addOneLegConversion(const reco::ConversionRef &r)
add single ConversionRef to the vector of Refs
Definition: PhotonCore.h:56
void addConversion(const reco::ConversionRef &r)
add single ConversionRef to the vector of Refs
Definition: PhotonCore.h:54
reco::ConversionRefVector conversionsOneLeg_
Definition: PhotonCore.h:94
reco::ElectronSeedRefVector electronPixelSeeds() const
get reference to electron seed if existing
Definition: PhotonCore.h:83
void setConversionsOneLeg(const reco::ConversionRefVector &conversions)
Definition: PhotonCore.h:80
bool isStandardPhoton_
Definition: PhotonCore.h:100
reco::SuperClusterRef parentSuperCluster() const
get reference to PFlow SuperCluster
Definition: PhotonCore.h:67
void setParentSuperCluster(const reco::SuperClusterRef &r)
set reference to PFlow SuperCluster
Definition: PhotonCore.h:52
void setStandardPhoton(const bool prov)
Definition: PhotonCore.h:61
reco::ElectronSeedRefVector electronSeed_
Definition: PhotonCore.h:96
void setConversions(const reco::ConversionRefVector &conversions)
Definition: PhotonCore.h:79
reco::SuperClusterRef parentSuperCluster_
reference to a Particle flow SuperCluster
Definition: PhotonCore.h:98
void setPFlowPhoton(const bool prov)
set the provenance
Definition: PhotonCore.h:60
bool isPFlowPhoton() const
Definition: PhotonCore.h:84
PhotonCore * clone() const
Definition: PhotonCore.h:47
bool isStandardPhoton() const
Definition: PhotonCore.h:85
reco::SuperClusterRef superCluster() const
get reference to SuperCluster
Definition: PhotonCore.h:65
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
Definition: RefVector.h:62
PhotonCore(const reco::SuperClusterRef &scl)
default constructor
Definition: PhotonCore.h:32
reco::ConversionRefVector conversions_
Definition: PhotonCore.h:92
virtual ~PhotonCore()
destructor
Definition: PhotonCore.h:45
volatile std::atomic< bool > shutdown_flag false
reco::ConversionRefVector conversionsOneLeg() const
get vector of references to one leg Conversion&#39;s
Definition: PhotonCore.h:77
void addElectronPixelSeed(const reco::ElectronSeedRef &r)
set electron pixel seed ref
Definition: PhotonCore.h:58
reco::SuperClusterRef superCluster_
reference to a SuperCluster
Definition: PhotonCore.h:90