CMS 3D CMS Logo

GctUnpackCollections.h
Go to the documentation of this file.
1 #ifndef GctUnpackCollections_h
2 #define GctUnpackCollections_h
3 
13 // CMSSW headers
15 
16 // DataFormat headers
20 
21 
23 {
24 public:
27 
30 
31  // Collections for storing GCT input data.
32  L1GctFibreCollection * const gctFibres() const { return m_gctFibres.get(); }
33  L1CaloEmCollection * const rctEm() const { return m_rctEm.get(); }
34  L1CaloRegionCollection * const rctCalo() const { return m_rctCalo.get(); }
35 
36  // GCT intermediate data
37  L1GctInternEmCandCollection * const gctInternEm() const { return m_gctInternEm.get(); }
38  L1GctInternJetDataCollection * const gctInternJets() const { return m_gctInternJets.get(); }
42 
43  // GCT output data
44  L1GctEmCandCollection * const gctIsoEm() const { return m_gctIsoEm.get(); }
45  L1GctEmCandCollection * const gctNonIsoEm() const { return m_gctNonIsoEm.get(); }
46  L1GctJetCandCollection * const gctCenJets() const { return m_gctCenJets.get(); }
47  L1GctJetCandCollection * const gctForJets() const { return m_gctForJets.get(); }
48  L1GctJetCandCollection * const gctTauJets() const { return m_gctTauJets.get(); }
49  L1GctHFBitCountsCollection * const gctHfBitCounts() const { return m_gctHfBitCounts.get(); }
51  L1GctEtTotalCollection * const gctEtTot() const { return m_gctEtTot.get(); }
52  L1GctEtHadCollection * const gctEtHad() const { return m_gctEtHad.get(); }
53  L1GctEtMissCollection * const gctEtMiss() const { return m_gctEtMiss.get(); }
54  L1GctHtMissCollection * const gctHtMiss() const { return m_gctHtMiss.get(); }
55  L1GctJetCountsCollection * const gctJetCounts() const { return m_gctJetCounts.get(); }
56 
57  // Misc
58  L1TriggerErrorCollection * const errors() const { return m_errors.get(); }
59 
60 private:
61 
64 
66 
67  // Collections for storing GCT input data.
68  std::unique_ptr<L1GctFibreCollection> m_gctFibres;
69  std::unique_ptr<L1CaloEmCollection> m_rctEm;
70  std::unique_ptr<L1CaloRegionCollection> m_rctCalo;
71 
72  // GCT intermediate data
73  std::unique_ptr<L1GctInternEmCandCollection> m_gctInternEm;
74  std::unique_ptr<L1GctInternJetDataCollection> m_gctInternJets;
75  std::unique_ptr<L1GctInternEtSumCollection> m_gctInternEtSums;
76  std::unique_ptr<L1GctInternHFDataCollection> m_gctInternHFData;
77  std::unique_ptr<L1GctInternHtMissCollection> m_gctInternHtMiss;
78 
79  // GCT output data
80  std::unique_ptr<L1GctEmCandCollection> m_gctIsoEm;
81  std::unique_ptr<L1GctEmCandCollection> m_gctNonIsoEm;
82  std::unique_ptr<L1GctJetCandCollection> m_gctCenJets;
83  std::unique_ptr<L1GctJetCandCollection> m_gctForJets;
84  std::unique_ptr<L1GctJetCandCollection> m_gctTauJets;
85  std::unique_ptr<L1GctHFBitCountsCollection> m_gctHfBitCounts;
86  std::unique_ptr<L1GctHFRingEtSumsCollection> m_gctHfRingEtSums;
87  std::unique_ptr<L1GctEtTotalCollection> m_gctEtTot;
88  std::unique_ptr<L1GctEtHadCollection> m_gctEtHad;
89  std::unique_ptr<L1GctEtMissCollection> m_gctEtMiss;
90  std::unique_ptr<L1GctHtMissCollection> m_gctHtMiss;
91  std::unique_ptr<L1GctJetCountsCollection> m_gctJetCounts; // DEPRECATED. ONLY GT NEEDS THIS.
92 
93  // Misc
94  std::unique_ptr<L1TriggerErrorCollection> m_errors;
95 
96 };
97 
98 // Pretty print for the GctUnpackCollections sub-class
99 std::ostream& operator<<(std::ostream& os, const GctUnpackCollections& rhs);
100 
101 #endif /* GctUnpackCollections_h */
L1GctJetCandCollection *const gctTauJets() const
GCT output: Tau Jets collection.
L1GctHFBitCountsCollection *const gctHfBitCounts() const
GCT output: Hadronic-Forward bit-counts collection.
std::vector< L1CaloEmCand > L1CaloEmCollection
L1GctEmCandCollection *const gctNonIsoEm() const
GCT output: Non-isolated EM candidate collection.
std::unique_ptr< L1GctInternJetDataCollection > m_gctInternJets
std::unique_ptr< L1GctInternEtSumCollection > m_gctInternEtSums
L1CaloEmCollection *const rctEm() const
Input electrons from the RCT to the GCT.
std::vector< L1TriggerError > L1TriggerErrorCollection
std::vector< L1GctEtMiss > L1GctEtMissCollection
std::unique_ptr< L1GctEmCandCollection > m_gctNonIsoEm
edm::Event & m_event
The event the collections will be put into on destruction of the GctUnpackCollections instance...
L1GctHtMissCollection *const gctHtMiss() const
GCT output: Missing Ht collection.
std::vector< L1GctHFRingEtSums > L1GctHFRingEtSumsCollection
L1GctJetCountsCollection *const gctJetCounts() const
DEPRECATED. ONLY GT NEEDS THIS.
std::unique_ptr< L1CaloRegionCollection > m_rctCalo
Input calo regions.
std::unique_ptr< L1CaloEmCollection > m_rctEm
Input electrons.
std::vector< L1GctEtHad > L1GctEtHadCollection
std::vector< L1GctJetCounts > L1GctJetCountsCollection
std::vector< L1GctInternHtMiss > L1GctInternHtMissCollection
std::ostream & operator<<(std::ostream &os, const GctUnpackCollections &rhs)
std::unique_ptr< L1GctFibreCollection > m_gctFibres
Raw fibre input to the GCT.
std::vector< L1GctInternEmCand > L1GctInternEmCandCollection
GctUnpackCollections & operator=(const GctUnpackCollections &)
Assignment op - deliberately not implemented!
std::vector< L1GctFibreWord > L1GctFibreCollection
std::vector< L1GctEtTotal > L1GctEtTotalCollection
std::vector< L1GctInternHFData > L1GctInternHFDataCollection
L1GctInternHFDataCollection *const gctInternHFData() const
Internal Hadronic-Forward bit-counts/ring-sums data collection.
std::vector< L1GctHFBitCounts > L1GctHFBitCountsCollection
std::vector< L1GctJetCand > L1GctJetCandCollection
L1GctInternEtSumCollection *const gctInternEtSums() const
Internal Et Sum collection.
L1GctEtTotalCollection *const gctEtTot() const
GCT output: Total Et collection.
L1GctJetCandCollection *const gctCenJets() const
GCT output: Central Jets collection.
L1GctInternHtMissCollection *const gctInternHtMiss() const
Internal missing Ht collection.
std::unique_ptr< L1GctInternHtMissCollection > m_gctInternHtMiss
L1GctEtMissCollection *const gctEtMiss() const
GCT output: Missing Et collection.
L1TriggerErrorCollection *const errors() const
Unpack error code collection.
std::unique_ptr< L1TriggerErrorCollection > m_errors
std::unique_ptr< L1GctInternHFDataCollection > m_gctInternHFData
RAII and useful methods for the many dataformat collections required by the GCT unpacker.
std::unique_ptr< L1GctHtMissCollection > m_gctHtMiss
std::vector< L1GctHtMiss > L1GctHtMissCollection
std::unique_ptr< L1GctEtMissCollection > m_gctEtMiss
std::unique_ptr< L1GctEtHadCollection > m_gctEtHad
std::unique_ptr< L1GctJetCandCollection > m_gctTauJets
L1GctHFRingEtSumsCollection *const gctHfRingEtSums() const
GCT output: Hadronic-Forward ring-sums collection.
std::unique_ptr< L1GctInternEmCandCollection > m_gctInternEm
std::unique_ptr< L1GctJetCandCollection > m_gctForJets
std::vector< L1GctInternJetData > L1GctInternJetDataCollection
L1GctFibreCollection *const gctFibres() const
Raw fibre input to the GCT.
L1GctEmCandCollection *const gctIsoEm() const
GCT output: Isolated EM candidate collection.
std::unique_ptr< L1GctJetCountsCollection > m_gctJetCounts
L1GctInternJetDataCollection *const gctInternJets() const
Internal Jet candidate collection.
std::unique_ptr< L1GctHFRingEtSumsCollection > m_gctHfRingEtSums
std::unique_ptr< L1GctEmCandCollection > m_gctIsoEm
L1GctEtHadCollection *const gctEtHad() const
GCT output: Hadronic transverse-energy (Ht) collection.
~GctUnpackCollections()
Destructor - the last action of this object is to put the gct collections into the event provided on ...
std::vector< L1GctInternEtSum > L1GctInternEtSumCollection
std::vector< L1CaloRegion > L1CaloRegionCollection
L1GctInternEmCandCollection *const gctInternEm() const
Internal EM candidate collection.
std::unique_ptr< L1GctJetCandCollection > m_gctCenJets
L1CaloRegionCollection *const rctCalo() const
Input calo regions from the RCT to the GCT.
Definition: event.py:1
std::unique_ptr< L1GctHFBitCountsCollection > m_gctHfBitCounts
std::vector< L1GctEmCand > L1GctEmCandCollection
GctUnpackCollections(edm::Event &event)
Construct with an event. The collections get put into the event when the object instance goes out of ...
std::unique_ptr< L1GctEtTotalCollection > m_gctEtTot
L1GctJetCandCollection *const gctForJets() const
GCT output: Forward Jets collection.