CMS 3D CMS Logo

GTCollections.h
Go to the documentation of this file.
1 #ifndef GTCollections_h
2 #define GTCollections_h
3 
10 
13 
14 //#include "EventFilter/L1TRawToDigi/interface/UnpackerCollections.h"
15 #include "L1TObjectCollections.h"
16 
17 namespace l1t {
18  namespace stage2 {
20  public:
23  cicadaScore_(std::make_unique<CICADABxCollection>()),
26  std::generate(muons_.begin(), muons_.end(), [] { return std::make_unique<MuonBxCollection>(); });
28  muonShowers_.begin(), muonShowers_.end(), [] { return std::make_unique<MuonShowerBxCollection>(); });
29  std::generate(egammas_.begin(), egammas_.end(), [] { return std::make_unique<EGammaBxCollection>(); });
30  std::generate(etsums_.begin(), etsums_.end(), [] { return std::make_unique<EtSumBxCollection>(); });
31  std::generate(zdcsums_.begin(), zdcsums_.end(), [] { return std::make_unique<EtSumBxCollection>(); });
32  std::generate(jets_.begin(), jets_.end(), [] { return std::make_unique<JetBxCollection>(); });
33  std::generate(taus_.begin(), taus_.end(), [] { return std::make_unique<TauBxCollection>(); });
34  };
35 
36  ~GTCollections() override;
37 
38  inline MuonBxCollection* getMuons(const unsigned int copy) override { return muons_[copy].get(); };
39  inline MuonShowerBxCollection* getMuonShowers(const unsigned int copy) override {
40  return muonShowers_[copy].get();
41  };
42  inline EGammaBxCollection* getEGammas(const unsigned int copy) override { return egammas_[copy].get(); };
43  inline EtSumBxCollection* getEtSums(const unsigned int copy) override { return etsums_[copy].get(); };
44  inline EtSumBxCollection* getZDCSums(const unsigned int copy) override { return zdcsums_[copy].get(); };
45  inline JetBxCollection* getJets(const unsigned int copy) override { return jets_[copy].get(); };
46  inline TauBxCollection* getTaus(const unsigned int copy) override { return taus_[copy].get(); };
47  inline CICADABxCollection* getCICADAScore() override { return cicadaScore_.get(); };
48 
49  inline GlobalAlgBlkBxCollection* getAlgs() { return algBlk_.get(); };
50  inline GlobalExtBlkBxCollection* getExts() { return extBlk_.get(); };
51 
52  private:
53  std::array<std::unique_ptr<MuonBxCollection>, 6> muons_;
54  std::array<std::unique_ptr<MuonShowerBxCollection>, 6> muonShowers_;
55  std::array<std::unique_ptr<EGammaBxCollection>, 6> egammas_;
56  std::array<std::unique_ptr<EtSumBxCollection>, 6> etsums_;
57  std::array<std::unique_ptr<EtSumBxCollection>, 6> zdcsums_;
58  std::array<std::unique_ptr<JetBxCollection>, 6> jets_;
59  std::array<std::unique_ptr<TauBxCollection>, 6> taus_;
60  std::unique_ptr<CICADABxCollection> cicadaScore_;
61 
62  std::unique_ptr<GlobalAlgBlkBxCollection> algBlk_;
63  std::unique_ptr<GlobalExtBlkBxCollection> extBlk_;
64  };
65  } // namespace stage2
66 } // namespace l1t
67 
68 #endif
TauBxCollection * getTaus(const unsigned int copy) override
Definition: GTCollections.h:46
std::array< std::unique_ptr< EGammaBxCollection >, 6 > egammas_
Definition: GTCollections.h:55
std::array< std::unique_ptr< TauBxCollection >, 6 > taus_
Definition: GTCollections.h:59
std::array< std::unique_ptr< JetBxCollection >, 6 > jets_
Definition: GTCollections.h:58
std::unique_ptr< GlobalExtBlkBxCollection > extBlk_
Definition: GTCollections.h:63
delete x;
Definition: CaloConfig.h:22
JetBxCollection * getJets(const unsigned int copy) override
Definition: GTCollections.h:45
void generate(uint32_t const nbins, float const *initValues, std::vector< float > &values)
std::array< std::unique_ptr< MuonShowerBxCollection >, 6 > muonShowers_
Definition: GTCollections.h:54
GTCollections(edm::Event &e)
Definition: GTCollections.h:21
EGammaBxCollection * getEGammas(const unsigned int copy) override
Definition: GTCollections.h:42
std::array< std::unique_ptr< EtSumBxCollection >, 6 > etsums_
Definition: GTCollections.h:56
std::array< std::unique_ptr< EtSumBxCollection >, 6 > zdcsums_
Definition: GTCollections.h:57
GlobalAlgBlkBxCollection * getAlgs()
Definition: GTCollections.h:49
GlobalExtBlkBxCollection * getExts()
Definition: GTCollections.h:50
std::array< std::unique_ptr< MuonBxCollection >, 6 > muons_
Definition: GTCollections.h:50
MuonShowerBxCollection * getMuonShowers(const unsigned int copy) override
Definition: GTCollections.h:39
EtSumBxCollection * getEtSums(const unsigned int copy) override
Definition: GTCollections.h:43
std::unique_ptr< GlobalAlgBlkBxCollection > algBlk_
Definition: GTCollections.h:62
MuonBxCollection * getMuons(const unsigned int copy) override
Definition: GTCollections.h:38
CICADABxCollection * getCICADAScore() override
Definition: GTCollections.h:47
EtSumBxCollection * getZDCSums(const unsigned int copy) override
Definition: GTCollections.h:44
std::unique_ptr< CICADABxCollection > cicadaScore_
Definition: GTCollections.h:60