File indexing completed on 2024-09-07 04:36:14
0001 #ifndef CaloCollections_h
0002 #define CaloCollections_h
0003
0004 #include "DataFormats/L1TCalorimeter/interface/CaloTower.h"
0005 #include "DataFormats/L1Trigger/interface/EGamma.h"
0006 #include "DataFormats/L1Trigger/interface/EtSum.h"
0007 #include "DataFormats/L1Trigger/interface/Jet.h"
0008 #include "DataFormats/L1Trigger/interface/Tau.h"
0009
0010
0011 #include "L1TObjectCollections.h"
0012
0013 namespace l1t {
0014 namespace stage2 {
0015 class CaloCollections : public L1TObjectCollections {
0016 public:
0017 CaloCollections(edm::Event& e)
0018 : L1TObjectCollections(e),
0019 towers_(new CaloTowerBxCollection()),
0020 egammas_(new EGammaBxCollection()),
0021 etsums_(new EtSumBxCollection()),
0022 jets_(new JetBxCollection()),
0023 taus_(new TauBxCollection()),
0024 mp_etsums_(new EtSumBxCollection()),
0025 mp_jets_(new JetBxCollection()),
0026 mp_egammas_(new EGammaBxCollection()),
0027 mp_taus_(new TauBxCollection()) {}
0028
0029 ~CaloCollections() override;
0030
0031 inline CaloTowerBxCollection* getTowers() { return towers_.get(); };
0032 inline EGammaBxCollection* getEGammas(const unsigned int copy) override { return egammas_.get(); };
0033 inline EtSumBxCollection* getEtSums(const unsigned int copy) override { return etsums_.get(); };
0034 inline JetBxCollection* getJets(const unsigned int copy) override { return jets_.get(); };
0035 inline TauBxCollection* getTaus(const unsigned int copy) override { return taus_.get(); };
0036
0037 inline EtSumBxCollection* getMPEtSums() { return mp_etsums_.get(); };
0038 inline JetBxCollection* getMPJets() { return mp_jets_.get(); };
0039 inline EGammaBxCollection* getMPEGammas() { return mp_egammas_.get(); };
0040 inline TauBxCollection* getMPTaus() { return mp_taus_.get(); };
0041
0042 private:
0043 std::unique_ptr<CaloTowerBxCollection> towers_;
0044 std::unique_ptr<EGammaBxCollection> egammas_;
0045 std::unique_ptr<EtSumBxCollection> etsums_;
0046 std::unique_ptr<JetBxCollection> jets_;
0047 std::unique_ptr<TauBxCollection> taus_;
0048
0049 std::unique_ptr<EtSumBxCollection> mp_etsums_;
0050 std::unique_ptr<JetBxCollection> mp_jets_;
0051 std::unique_ptr<EGammaBxCollection> mp_egammas_;
0052 std::unique_ptr<TauBxCollection> mp_taus_;
0053 };
0054 }
0055 }
0056
0057 #endif