CMS 3D CMS Logo

Photon.cc

Go to the documentation of this file.
00001 //
00002 // $Id: Photon.cc,v 1.15 2008/07/08 20:56:48 gpetrucc Exp $
00003 //
00004 
00005 #include "DataFormats/PatCandidates/interface/Photon.h"
00006 
00007 
00008 using pat::Photon;
00009 
00010 
00012 Photon::Photon() :
00013     PATObject<PhotonType>(PhotonType()),
00014     embeddedSuperCluster_(false)
00015 {
00016 }
00017 
00018 
00020 Photon::Photon(const PhotonType & aPhoton) :
00021     PATObject<PhotonType>(aPhoton),
00022     embeddedSuperCluster_(false)
00023 {
00024 }
00025 
00027 Photon::Photon(const edm::RefToBase<PhotonType> & aPhotonRef) :
00028     PATObject<PhotonType>(aPhotonRef),
00029     embeddedSuperCluster_(false)
00030 {
00031 }
00032 
00034 Photon::Photon(const edm::Ptr<PhotonType> & aPhotonRef) :
00035     PATObject<PhotonType>(aPhotonRef),
00036     embeddedSuperCluster_(false)
00037 {
00038 }
00039 
00041 Photon::~Photon() {
00042 }
00043 
00044 
00047 reco::SuperClusterRef Photon::superCluster() const {
00048   if (embeddedSuperCluster_) {
00049     return reco::SuperClusterRef(&superCluster_, 0);
00050   } else {
00051     return PhotonType::superCluster();
00052   }
00053 }
00054 
00056 void Photon::embedSuperCluster() {
00057   superCluster_.clear();
00058   if (PhotonType::superCluster().isNonnull()) {
00059       superCluster_.push_back(*PhotonType::superCluster());
00060       embeddedSuperCluster_ = true;
00061   }
00062 }
00063 

Generated on Tue Jun 9 17:30:43 2009 for CMSSW by  doxygen 1.5.4