CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/L1Trigger/GlobalTriggerAnalyzer/interface/L1RetrieveL1Extra.h

Go to the documentation of this file.
00001 #ifndef L1Trigger_GlobalTriggerAnalyzer_L1RetrieveL1Extra_h
00002 #define L1Trigger_GlobalTriggerAnalyzer_L1RetrieveL1Extra_h
00003 
00020 // system include files
00021 #include <iosfwd>
00022 #include <memory>
00023 #include <vector>
00024 #include <string>
00025 
00026 // user include files
00027 //   base classes
00028 
00029 //
00030 #include "FWCore/Framework/interface/Frameworkfwd.h"
00031 #include "FWCore/ServiceRegistry/interface/Service.h"
00032 
00033 #include "FWCore/Framework/interface/Event.h"
00034 #include "FWCore/Framework/interface/Run.h"
00035 #include "FWCore/Framework/interface/EventSetup.h"
00036 
00037 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00038 #include "FWCore/Utilities/interface/InputTag.h"
00039 
00040 // L1Extra objects
00041 #include "DataFormats/L1Trigger/interface/L1MuonParticle.h"
00042 #include "DataFormats/L1Trigger/interface/L1MuonParticleFwd.h"
00043 #include "DataFormats/L1Trigger/interface/L1EmParticle.h"
00044 #include "DataFormats/L1Trigger/interface/L1EmParticleFwd.h"
00045 #include "DataFormats/L1Trigger/interface/L1JetParticle.h"
00046 #include "DataFormats/L1Trigger/interface/L1JetParticleFwd.h"
00047 #include "DataFormats/L1Trigger/interface/L1EtMissParticle.h"
00048 #include "DataFormats/L1Trigger/interface/L1EtMissParticleFwd.h"
00049 #include "DataFormats/L1Trigger/interface/L1HFRings.h"
00050 #include "DataFormats/L1Trigger/interface/L1HFRingsFwd.h"
00051 
00052 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
00053 
00054 // forward declarations
00055 
00056 
00057 // class declaration
00058 class L1RetrieveL1Extra {
00059 
00060 public:
00061 
00062     // constructor(s)
00063     explicit L1RetrieveL1Extra(const edm::ParameterSet&);
00064 
00065     // destructor
00066     virtual ~L1RetrieveL1Extra();
00067 
00068 public:
00069 
00071 
00072     inline const bool validL1ExtraMuon() const {
00073         return m_validL1ExtraMuon;
00074     }
00075 
00076     //
00077     inline const bool validL1ExtraIsoEG() const {
00078         return m_validL1ExtraIsoEG;
00079     }
00080 
00081     inline const bool validL1ExtraNoIsoEG() const {
00082         return m_validL1ExtraNoIsoEG;
00083     }
00084 
00085     //
00086     inline const bool validL1ExtraCenJet() const {
00087         return m_validL1ExtraCenJet;
00088     }
00089 
00090     inline const bool validL1ExtraForJet() const {
00091         return m_validL1ExtraForJet;
00092     }
00093 
00094     inline const bool validL1ExtraTauJet() const {
00095         return m_validL1ExtraTauJet;
00096     }
00097 
00098     //
00099     inline const bool validL1ExtraETT() const {
00100         return m_validL1ExtraETT;
00101     }
00102 
00103     inline const bool validL1ExtraETM() const {
00104         return m_validL1ExtraETM;
00105     }
00106 
00107     inline const bool validL1ExtraHTT() const {
00108         return m_validL1ExtraHTT;
00109     }
00110 
00111     inline const bool validL1ExtraHTM() const {
00112         return m_validL1ExtraHTM;
00113     }
00114 
00115     //
00116     inline const bool validL1ExtraHfBitCounts() const {
00117         return m_validL1ExtraHfBitCounts;
00118     }
00119 
00120     inline const bool validL1ExtraHfRingEtSums() const {
00121         return m_validL1ExtraHfRingEtSums;
00122     }
00123 
00125 
00126     inline const l1extra::L1MuonParticleCollection* l1ExtraMuon() const {
00127         return m_l1ExtraMuon;
00128     }
00129 
00130     inline const l1extra::L1EmParticleCollection* l1ExtraIsoEG() const {
00131         return m_l1ExtraIsoEG;
00132     }
00133     inline const l1extra::L1EmParticleCollection* l1ExtraNoIsoEG() const {
00134         return m_l1ExtraNoIsoEG;
00135     }
00136 
00137     inline const l1extra::L1JetParticleCollection* l1ExtraCenJet() const {
00138         return m_l1ExtraCenJet;
00139     }
00140     inline const l1extra::L1JetParticleCollection* l1ExtraForJet() const {
00141         return m_l1ExtraForJet;
00142     }
00143     inline const l1extra::L1JetParticleCollection* l1ExtraTauJet() const {
00144         return m_l1ExtraTauJet;
00145     }
00146 
00147     inline const l1extra::L1EtMissParticleCollection* l1ExtraETT() const {
00148         return m_l1ExtraETT;
00149     }
00150     inline const l1extra::L1EtMissParticleCollection* l1ExtraETM() const {
00151         return m_l1ExtraETM;
00152     }
00153     inline const l1extra::L1EtMissParticleCollection* l1ExtraHTT() const {
00154         return m_l1ExtraHTT;
00155     }
00156     inline const l1extra::L1EtMissParticleCollection* l1ExtraHTM() const {
00157         return m_l1ExtraHTM;
00158     }
00159 
00160     inline const l1extra::L1HFRingsCollection* l1ExtraHfBitCounts() const {
00161         return m_l1ExtraHfBitCounts;
00162     }
00163     inline const l1extra::L1HFRingsCollection* l1ExtraHfRingEtSums() const {
00164         return m_l1ExtraHfRingEtSums;
00165     }
00166 
00169     void retrieveL1ExtraObjects(const edm::Event&, const edm::EventSetup&);
00170 
00171 private:
00172 
00174 
00176 
00177     edm::InputTag m_tagL1ExtraMuon;
00178 
00179     edm::InputTag m_tagL1ExtraIsoEG;
00180     edm::InputTag m_tagL1ExtraNoIsoEG;
00181 
00182     edm::InputTag m_tagL1ExtraCenJet;
00183     edm::InputTag m_tagL1ExtraForJet;
00184     edm::InputTag m_tagL1ExtraTauJet;
00185 
00186     edm::InputTag m_tagL1ExtraEtMissMET;
00187     edm::InputTag m_tagL1ExtraEtMissHTM;
00188 
00189     edm::InputTag m_tagL1ExtraHFRings;
00190 
00191     int m_nrBxInEventGmt;
00192     int m_nrBxInEventGct;
00193 
00195 
00196     bool m_validL1ExtraMuon;
00197 
00198     bool m_validL1ExtraIsoEG;
00199     bool m_validL1ExtraNoIsoEG;
00200 
00201     bool m_validL1ExtraCenJet;
00202     bool m_validL1ExtraForJet;
00203     bool m_validL1ExtraTauJet;
00204 
00205     bool m_validL1ExtraETT;
00206     bool m_validL1ExtraETM;
00207     bool m_validL1ExtraHTT;
00208     bool m_validL1ExtraHTM;
00209 
00210     bool m_validL1ExtraHfBitCounts;
00211     bool m_validL1ExtraHfRingEtSums;
00212 
00214 
00215     const l1extra::L1MuonParticleCollection* m_l1ExtraMuon;
00216 
00217     const l1extra::L1EmParticleCollection* m_l1ExtraIsoEG;
00218     const l1extra::L1EmParticleCollection* m_l1ExtraNoIsoEG;
00219 
00220     const l1extra::L1JetParticleCollection* m_l1ExtraCenJet;
00221     const l1extra::L1JetParticleCollection* m_l1ExtraForJet;
00222     const l1extra::L1JetParticleCollection* m_l1ExtraTauJet;
00223 
00224     const l1extra::L1EtMissParticleCollection* m_l1ExtraETT;
00225     const l1extra::L1EtMissParticleCollection* m_l1ExtraETM;
00226     const l1extra::L1EtMissParticleCollection* m_l1ExtraHTT;
00227     const l1extra::L1EtMissParticleCollection* m_l1ExtraHTM;
00228 
00229     const l1extra::L1HFRingsCollection* m_l1ExtraHfBitCounts;
00230     const l1extra::L1HFRingsCollection* m_l1ExtraHfRingEtSums;
00231 
00232 };
00233 
00234 #endif