ATLAS Offline Software
jFEXOutputCollection.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 //***************************************************************************
5 // jFEXOutputCollection.h -
6 // -------------------
7 // begin : 09 12 2020
8 // email : varsiha.sothilingam@cern.ch
9 // **************************************************************************
10 
11 #ifndef JFEX_OUTPUT_COLLECTION_H
12 #define JFEX_OUTPUT_COLLECTION_H
13 
14 #include "AthenaKernel/CLASS_DEF.h"
15 #include "StoreGate/StoreGateSvc.h"
16 #include <map>
17 #include <iostream>
18 #include <vector>
19 #include <string>
20 
21 namespace LVL1 {
23 {
24  public:
27  void clear();
28  void addValue_smallRJet(std::string, int);
29  void fill_smallRJet();
30  void addValue_largeRJet(std::string, int);
31  void fill_largeRJet();
32  void addValue_tau(std::string, int);
33  void fill_tau();
34  void addValue_fwdEl(std::string, int);
35  void fill_fwdEl();
36  void addValue_pileup(std::string, int);
37  void addValue_pileup(std::string, std::vector<int> );
38  void fill_pileup();
39  int SRJetSize() const;
40  int LRJetSize() const;
41  int TauSize() const;
42  int FwdElSize() const;
43  int PileupSize() const;
44  int PileupEtSize() const;
45  void setdooutput(bool);
46  bool getdooutput() const;
47  int get_smallRJet(int,std::string) const;
48  int get_largeRJet(int,std::string) const;
49  int get_tau(int,std::string) const;
50  int get_fwdEl(int,std::string) const;
51  int get_pileup(int,std::string) const;
52  std::vector<int> get_pileup_map(int,std::string) const;
53  private:
54  bool m_dooutput;
55  std::unordered_map<std::string, int> m_values_tem_smallRJet;
56  std::vector< std::unique_ptr<std::unordered_map<std::string, int>> > m_allvalues_smallRJet;
57  std::unordered_map<std::string, int> m_values_tem_largeRJet;
58  std::vector<std::unique_ptr<std::unordered_map<std::string, int>> > m_allvalues_largeRJet;
59  std::unordered_map<std::string, int> m_values_tem_tau;
60  std::vector<std::unique_ptr<std::unordered_map<std::string, int>> > m_allvalues_tau;
61  std::unordered_map<std::string, int> m_values_tem_fwdEl;
62  std::vector<std::unique_ptr<std::unordered_map<std::string, int>> > m_allvalues_fwdEl;
63  std::unordered_map<std::string, int> m_values_tem_pileup;
64  std::vector< std::unique_ptr<std::unordered_map<std::string, int>> > m_allvalues_pileup;
65  std::unordered_map<std::string, std::vector<int> > m_values_tem_pileup_maps;
66  std::vector< std::unique_ptr<std::unordered_map<std::string, std::vector<int> >> > m_allvalues_pileup_map;
67 };
68 }
69 CLASS_DEF(LVL1::jFEXOutputCollection, 1317184196 , 1 )
70 #endif
LVL1::jFEXOutputCollection::m_allvalues_smallRJet
std::vector< std::unique_ptr< std::unordered_map< std::string, int > > > m_allvalues_smallRJet
Definition: jFEXOutputCollection.h:56
LVL1::jFEXOutputCollection::m_allvalues_pileup
std::vector< std::unique_ptr< std::unordered_map< std::string, int > > > m_allvalues_pileup
Definition: jFEXOutputCollection.h:64
LVL1::jFEXOutputCollection::addValue_smallRJet
void addValue_smallRJet(std::string, int)
Definition: jFEXOutputCollection.cxx:76
LVL1::jFEXOutputCollection::PileupSize
int PileupSize() const
Definition: jFEXOutputCollection.cxx:165
LVL1::jFEXOutputCollection::get_pileup_map
std::vector< int > get_pileup_map(int, std::string) const
Definition: jFEXOutputCollection.cxx:195
LVL1::jFEXOutputCollection::get_tau
int get_tau(int, std::string) const
Definition: jFEXOutputCollection.cxx:182
LVL1::jFEXOutputCollection::jFEXOutputCollection
jFEXOutputCollection()
Definition: jFEXOutputCollection.cxx:15
LVL1::jFEXOutputCollection::getdooutput
bool getdooutput() const
Definition: jFEXOutputCollection.cxx:204
LVL1::jFEXOutputCollection::addValue_largeRJet
void addValue_largeRJet(std::string, int)
Definition: jFEXOutputCollection.cxx:81
LVL1::jFEXOutputCollection::get_fwdEl
int get_fwdEl(int, std::string) const
Definition: jFEXOutputCollection.cxx:186
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::jFEXOutputCollection::clear
void clear()
Definition: jFEXOutputCollection.cxx:47
LVL1::jFEXOutputCollection::SRJetSize
int SRJetSize() const
Definition: jFEXOutputCollection.cxx:148
LVL1::jFEXOutputCollection::FwdElSize
int FwdElSize() const
Definition: jFEXOutputCollection.cxx:161
LVL1::jFEXOutputCollection::m_allvalues_pileup_map
std::vector< std::unique_ptr< std::unordered_map< std::string, std::vector< int > > > > m_allvalues_pileup_map
Definition: jFEXOutputCollection.h:66
LVL1::jFEXOutputCollection::addValue_tau
void addValue_tau(std::string, int)
Definition: jFEXOutputCollection.cxx:86
LVL1::jFEXOutputCollection::m_values_tem_pileup
std::unordered_map< std::string, int > m_values_tem_pileup
Definition: jFEXOutputCollection.h:63
LVL1::jFEXOutputCollection::get_pileup
int get_pileup(int, std::string) const
Definition: jFEXOutputCollection.cxx:191
LVL1::jFEXOutputCollection::fill_smallRJet
void fill_smallRJet()
Definition: jFEXOutputCollection.cxx:107
LVL1::jFEXOutputCollection
Definition: jFEXOutputCollection.h:23
LVL1::jFEXOutputCollection::LRJetSize
int LRJetSize() const
Definition: jFEXOutputCollection.cxx:153
LVL1::jFEXOutputCollection::PileupEtSize
int PileupEtSize() const
Definition: jFEXOutputCollection.cxx:169
LVL1::jFEXOutputCollection::m_values_tem_tau
std::unordered_map< std::string, int > m_values_tem_tau
Definition: jFEXOutputCollection.h:59
LVL1::jFEXOutputCollection::get_largeRJet
int get_largeRJet(int, std::string) const
Definition: jFEXOutputCollection.cxx:178
LVL1::jFEXOutputCollection::addValue_fwdEl
void addValue_fwdEl(std::string, int)
Definition: jFEXOutputCollection.cxx:91
LVL1::jFEXOutputCollection::fill_pileup
void fill_pileup()
Definition: jFEXOutputCollection.cxx:136
LVL1::jFEXOutputCollection::m_values_tem_fwdEl
std::unordered_map< std::string, int > m_values_tem_fwdEl
Definition: jFEXOutputCollection.h:61
LVL1::jFEXOutputCollection::fill_fwdEl
void fill_fwdEl()
Definition: jFEXOutputCollection.cxx:129
LVL1::jFEXOutputCollection::TauSize
int TauSize() const
Definition: jFEXOutputCollection.cxx:157
LVL1::jFEXOutputCollection::setdooutput
void setdooutput(bool)
Definition: jFEXOutputCollection.cxx:200
LVL1::jFEXOutputCollection::m_values_tem_pileup_maps
std::unordered_map< std::string, std::vector< int > > m_values_tem_pileup_maps
Definition: jFEXOutputCollection.h:65
LVL1::jFEXOutputCollection::addValue_pileup
void addValue_pileup(std::string, int)
Definition: jFEXOutputCollection.cxx:97
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
LVL1::jFEXOutputCollection::fill_largeRJet
void fill_largeRJet()
Definition: jFEXOutputCollection.cxx:114
LVL1::jFEXOutputCollection::get_smallRJet
int get_smallRJet(int, std::string) const
Definition: jFEXOutputCollection.cxx:174
LVL1::jFEXOutputCollection::m_values_tem_smallRJet
std::unordered_map< std::string, int > m_values_tem_smallRJet
Definition: jFEXOutputCollection.h:55
LVL1::jFEXOutputCollection::m_values_tem_largeRJet
std::unordered_map< std::string, int > m_values_tem_largeRJet
Definition: jFEXOutputCollection.h:57
LVL1::jFEXOutputCollection::m_dooutput
bool m_dooutput
Definition: jFEXOutputCollection.h:54
LVL1::jFEXOutputCollection::m_allvalues_tau
std::vector< std::unique_ptr< std::unordered_map< std::string, int > > > m_allvalues_tau
Definition: jFEXOutputCollection.h:60
LVL1::jFEXOutputCollection::m_allvalues_largeRJet
std::vector< std::unique_ptr< std::unordered_map< std::string, int > > > m_allvalues_largeRJet
Definition: jFEXOutputCollection.h:58
LVL1::jFEXOutputCollection::m_allvalues_fwdEl
std::vector< std::unique_ptr< std::unordered_map< std::string, int > > > m_allvalues_fwdEl
Definition: jFEXOutputCollection.h:62
LVL1::jFEXOutputCollection::fill_tau
void fill_tau()
Definition: jFEXOutputCollection.cxx:121
LVL1::jFEXOutputCollection::~jFEXOutputCollection
~jFEXOutputCollection()
Definition: jFEXOutputCollection.cxx:19
StoreGateSvc.h
CLASS_DEF.h
macros to associate a CLID to a type