Commit 01d74621 authored by Sergi Rodriguez Bosca's avatar Sergi Rodriguez Bosca Committed by Vakhtang Tsulaia
Browse files

jFEX Pileup and Noise Algo and jFEX mapping

parent 3fa95bf7
......@@ -24,7 +24,7 @@ CLASS_DEF2( std::map<std::string,int> , 170542827 , 1 )
CLASS_DEF2( std::map<std::string,unsigned int> , 113556225 , 1 )
CLASS_DEF2( std::map<std::string,float> , 193758082 , 1 )
CLASS_DEF2( std::map<std::string,double> , 252602412 , 1 )
CLASS_DEF2( std::map<std::string,std::string> , 143489258 , 1 )
CLASS_DEF2( std::map<std::string,std::string> , 143489258 , 1 )
CLASS_DEF2( std::map<std::string,std::vector<int> > , 181049313 , 1 )
CLASS_DEF2( std::map<std::string,std::vector<unsigned int> > , 199376827 , 1 )
......
......@@ -13,7 +13,6 @@
#include "L1CaloFEXSim/jTowerBuilder.h"
#include "L1CaloFEXSim/jSuperCellTowerMapper.h"
#include "L1CaloFEXToolInterfaces/IjFEXSysSim.h"
#include "L1CaloFEXSim/jFEXSim.h"
#include "xAODTrigL1Calo/TriggerTowerContainer.h"
#include "CaloIdentifier/CaloIdManager.h"
#include "CaloIdentifier/CaloCell_SuperCell_ID.h"
......@@ -23,7 +22,6 @@
#include "xAODTrigger/jFexTauRoIContainer.h"
class CaloIdManager;
namespace LVL1 {
......
......@@ -24,14 +24,27 @@
#include "L1CaloFEXToolInterfaces/IjFEXsumETAlgo.h"
#include "L1CaloFEXToolInterfaces/IjFEXmetAlgo.h"
#include "L1CaloFEXToolInterfaces/IjFEXForwardJetsAlgo.h"
#include "L1CaloFEXToolInterfaces/IjFEXPileupAndNoise.h"
#include "CaloEvent/CaloCellContainer.h"
#include "CaloIdentifier/CaloIdManager.h"
#include "CaloIdentifier/CaloCell_SuperCell_ID.h"
#include "L1CaloFEXSim/jFEXOutputCollection.h"
#include "L1CaloFEXSim/FEXAlgoSpaceDefs.h"
#include <vector>
#include "GaudiKernel/ServiceHandle.h"
#include "GaudiKernel/ISvcLocator.h"
#include "GaudiKernel/ITHistSvc.h"
#include "GaudiKernel/IClassIDSvc.h"
#include "SGTools/StlMapClids.h"
#include "SGTools/TestStore.h"
#include "StoreGate/WriteHandle.h"
#include "StoreGate/ReadHandle.h"
#include "StoreGate/StoreGateSvc.h"
namespace LVL1 {
//Doxygen class description below:
......@@ -82,7 +95,11 @@ namespace LVL1 {
virtual uint32_t formMetTOB(int , int ) override;
virtual std::vector <uint32_t> getMetTOBs() override;
int getTTowerET_EM (unsigned int TTID ) override;
int getTTowerET_HAD (unsigned int TTID ) override;
int getTTowerET (unsigned int TTID ) override;
int getTTowerET_forMET (unsigned int TTID ) override;
/** Internal data */
private:
static bool etSRJetSort(uint32_t i, uint32_t j){ return (((i >> 12 ) & 0x7ff)> ((j >> 12) & 0x7ff));}
......@@ -101,13 +118,17 @@ namespace LVL1 {
int m_jTowersIDs_Thin [FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width] = {{0}};
int m_jTowersIDs [FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width] = {{0}};
std::map<int,jTower> m_jTowersColl;
std::map<int,std::vector<int> > m_map_Etvalues_FPGA;
std::map<int,std::vector<int> > m_map_HAD_Etvalues_FPGA;
std::map<int,std::vector<int> > m_map_EM_Etvalues_FPGA;
std::map<int, jFEXForwardJetsInfo> m_FCALJets;
CaloCellContainer m_sCellsCollection;
SG::ReadHandleKey<LVL1::jTowerContainer> m_jFEXFPGA_jTowerContainerKey {this, "MyETowers", "jTowerContainer", "Input container for jTowers"};
SG::WriteHandleKey<LVL1::jFEXOutputCollection> m_jFEXFPGA_jFEXOutputCollectionKey {this, "jFEXOutputCollection", "jFEXOutputCollection", "Input container for jFEXOutputCollection"};
ToolHandle<IjFEXSmallRJetAlgo> m_jFEXSmallRJetAlgoTool {this, "jFEXSmallRJetAlgoTool", "LVL1::jFEXSmallRJetAlgo", "Tool that runs the jFEX Small R Jet algorithm"};
......@@ -116,9 +137,16 @@ namespace LVL1 {
ToolHandle<IjFEXsumETAlgo> m_jFEXsumETAlgoTool {this, "jFEXsumETAlgoTool" , "LVL1::jFEXsumETAlgo" , "Tool that runs the jFEX sumET algorithm"};
ToolHandle<IjFEXmetAlgo> m_jFEXmetAlgoTool {this, "jFEXmetAlgoTool" , "LVL1::jFEXmetAlgo" , "Tool that runs the jFEX met algorithm"};
ToolHandle<IjFEXForwardJetsAlgo> m_jFEXForwardJetsAlgoTool {this, "jFEXForwardJetsAlgoTool" , "LVL1::jFEXForwardJetsAlgo" , "Tool that runs the jFEX FCAL Jets algorithm"};
//ToolHandle<IjFEXegAlgo> m_jFEXegAlgoTool {this, "jFEXegAlgoTool", "LVL1::jFEXegAlgo", "Tool that runs the jFEX e/gamma algorithm"};
ToolHandle<IjFEXPileupAndNoise> m_jFEXPileupAndNoiseTool {this, "jFEXPileupAndNoiseTool", "LVL1::jFEXPileupAndNoise", "Tool that applies Pileup and Noise"};
int getTTowerET_SG(unsigned int TTID);
};
} // end of namespace
CLASS_DEF( LVL1::jFEXFPGA , 76081081 , 1 )
#endif
......@@ -47,17 +47,19 @@ namespace LVL1 {
virtual float globalEta(int nphi, int neta) override;
virtual unsigned int localPhi(int nphi, int neta) override;
virtual unsigned int localEta(int nphi, int neta) override;
virtual unsigned int getTTowerET(int nphi, int neta) override;
virtual int getTTowerET(int nphi, int neta) override;
virtual std::map<int, jFEXForwardJetsInfo> FcalJetsTowerIDLists() override;
virtual std::map<int, jFEXForwardJetsInfo> isSeedLocalMaxima() override;
virtual std::map<int, jFEXForwardJetsInfo> calculateJetETs() override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
protected:
private:
SG::ReadHandleKey<LVL1::jTowerContainer> m_jFEXForwardJetsAlgo_jTowerContainerKey {this, "MyjTowers", "jTowerContainer", "Input container for jTowers"};
int m_jFEXalgoTowerID[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width];
bool m_storeEnergyRingTTIDs;
std::map<int,std::vector<int> > m_map_Etvalues;
};
}//end of namespace
#endif
......@@ -44,6 +44,7 @@ namespace LVL1 {
virtual unsigned int getRingET() override;
virtual unsigned int getLargeClusterET(unsigned int smallClusterET, unsigned int largeRingET) override;
virtual std::unique_ptr<jFEXLargeRJetTOB> getLargeRJetTOBs() override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
protected:
......@@ -55,6 +56,8 @@ namespace LVL1 {
//int inputTable[15][15];
int m_largeRJetEtRing_IDs[15][15];
int getTTowerET(unsigned int TTID ) ;
std::map<int,std::vector<int> > m_map_Etvalues;
};
......
......@@ -81,6 +81,16 @@ private:
std::vector<int> m_tau_TOB_phi;
std::vector<int> m_tau_TOB_ISO;
std::vector<int> m_tau_TOB_Sat;
//Pile-up
std::vector<int> m_pileup_FPGAid;
std::vector<int> m_pileup_jFEXid;
std::vector<int> m_pileup_rho_EM;
std::vector<int> m_pileup_rho_HAD1;
std::vector<int> m_pileup_rho_HAD2;
std::vector<int> m_pileup_rho_HAD3;
std::vector<int> m_pileup_rho_FCAL;
//std::string m_jet_container_name = "AntiKt10TruthJets";
......@@ -89,6 +99,7 @@ private:
StatusCode loadsmallRJetAlgoVariables();
StatusCode loadlargeRJetAlgoVariables();
StatusCode loadtauAlgoVariables();
StatusCode loadPileupVariables();
};
}
#endif
......@@ -27,26 +27,39 @@ namespace LVL1 {
jFEXOutputCollection() {};
~jFEXOutputCollection();
void clear();
void addValue_smallRJet(std::string, int);
void addValue_smallRJet(std::string, int);
void fill_smallRJet();
void addValue_largeRJet(std::string, int);
void fill_largeRJet();
void addValue_tau(std::string, int);
void fill_tau();
void addValue_pileup(std::string, int);
void fill_pileup();
int SRsize();
int LRsize();
int tausize();
int tausize();
int pileupsize();
std::map<std::string, int>* get_smallRJet(int);
std::map<std::string, int>* get_largeRJet(int);
std::map<std::string, int>* get_largeRJet(int);
std::map<std::string, int>* get_tau(int);
std::map<std::string, int>* get_pileup(int);
private:
std::map<std::string, int> m_values_tem_smallRJet;
std::vector<std::map<std::string, int>*> m_allvalues_smallRJet;
std::map<std::string, int> m_values_tem_largeRJet;
std::vector<std::map<std::string, int>*> m_allvalues_largeRJet;
std::map<std::string, int> m_values_tem_tau;
std::vector<std::map<std::string, int>*> m_allvalues_tau;
std::map<std::string, int> m_values_tem_pileup;
std::vector<std::map<std::string, int>*> m_allvalues_pileup;
};
}
......
/*
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
*/
//***************************************************************************
// jFEXPileupAndNoise - Algorithm for Pileup and Noise in jFEX
// -------------------
// begin : 24 05 2021
// email : Sergi.Rodriguez@cern.ch
//***************************************************************************
#ifndef jFEXPileupAndNoise_H
#define jFEXPileupAndNoise_H
#include "AthenaBaseComps/AthAlgTool.h"
#include "AthenaKernel/CLASS_DEF.h"
#include "L1CaloFEXSim/jTowerContainer.h"
#include "L1CaloFEXToolInterfaces/IjFEXPileupAndNoise.h"
#include "CaloEvent/CaloCellContainer.h"
#include "CaloIdentifier/CaloIdManager.h"
#include "CaloIdentifier/CaloCell_SuperCell_ID.h"
#include "AthenaBaseComps/AthAlgorithm.h"
#include "StoreGate/StoreGateSvc.h"
#include "L1CaloFEXSim/FEXAlgoSpaceDefs.h"
namespace LVL1 {
class jFEXPileupAndNoise : public AthAlgTool, virtual public IjFEXPileupAndNoise{
public:
/** Constructors **/
jFEXPileupAndNoise(const std::string& type, const std::string& name, const IInterface* parent);
/** standard Athena-Algorithm method **/
virtual StatusCode initialize() override;
virtual StatusCode safetyTest() override;
virtual StatusCode reset() override;
virtual void setup(int FPGA[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width]) override;
virtual void setup(int FPGA[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]) override;
virtual std::map<int,std::vector<int> > GetEt_values() override;
virtual std::map<int,std::vector<int> > Get_EM_Et_values() override;
virtual std::map<int,std::vector<int> > Get_HAD_Et_values() override;
/** Destructor **/
virtual ~jFEXPileupAndNoise();
virtual std::vector<int> CalculatePileup() override;
virtual void ApplyPileupJets() override;
virtual void ApplyPileupMet() override;
protected:
private:
SG::ReadHandleKey<LVL1::jTowerContainer> m_jFEXPileupAndNoise_jTowerContainerKey {this, "MyjTowers", "jTowerContainer", "Input container for jTowers"};
int m_FPGA_central[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width]={{0}};
int m_FPGA_forward[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]={{0}};
int m_FPGA_ET_central_EM[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width]={{0}};
int m_FPGA_ET_central_HAD[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width]={{0}};
int m_FPGA_ET_forward_EM[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]={{0}};
int m_FPGA_ET_forward_HAD[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]={{0}};
//rho variables for the pileup
int m_rho_EM = 0; //for eta < 3.2
int m_rho_HAD1 = 0; //for eta < 1.5
int m_rho_HAD2 = 0; //for 1.5 < eta < 1.6
int m_rho_HAD3 = 0; //for 1.6 < eta < 3.2
int m_rho_FCAL = 0; //for eta > 3.1
//TT counters
int m_count_rho_EM = 0;
int m_count_rho_HAD1 = 0;
int m_count_rho_HAD2 = 0;
int m_count_rho_HAD3 = 0;
int m_count_rho_FCAL = 0;
//boolean flags
bool m_is_FWD = false; // 0 for central, 1 for forward
bool m_apply_jets = false;
bool m_apply_met = false;
bool m_apply_noise = true ; // internal only, always set to true
void reset_conters();
void SubtractPileup();
void ApplyNoiseCuts(std::map<int,std::vector<int> > & map_Etvalues, int Jet_NoiseCut, int Met_NoiseCut);
// SG information
int getTTowerEta(unsigned int TTID );
int getTTowerET (unsigned int TTID );
int getET_EM (unsigned int TTID );
int getET_HAD (unsigned int TTID );
int m_noisecut_EM_Jet = 100 ;
int m_noisecut_EM_Met = 100 ;
int m_noisecut_HAD_Jet = 100 ;
int m_noisecut_HAD_Met = 100 ;
};
}//end of namespace
CLASS_DEF( LVL1::jFEXPileupAndNoise , 585629 , 1 )
#endif
......@@ -41,15 +41,17 @@ namespace LVL1 {
virtual StatusCode safetyTest() override;
virtual void setup(int inputTable[7][7]) override;
virtual int realValue(int ID, int eta) override;
virtual unsigned int getRealPhi() override;
virtual int getRealEta() override;
virtual unsigned int getTTowerET() override;
virtual unsigned int getRealPhi(unsigned int TTID ) override;
virtual int getRealEta(unsigned int TTID ) override;
virtual unsigned int getTTowerET(unsigned int TTID ) override;
virtual void buildSeeds() override;
virtual bool isSeedLocalMaxima() override;
virtual unsigned int getSmallClusterET() override;
virtual unsigned int getSmallETRing() override;
virtual bool checkDisplacedLM() override;
virtual std::unique_ptr<jFEXSmallRJetTOB> getSmallRJetTOBs() override;
virtual unsigned int getTTIDcentre() override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
// virtual jFEXSmallRJetTOB* getSmallRJetTOBs() override;
//LVL1::jFEXSmallRJetAlgoTOB * LVL1::jFEXSmallRJetAlgo::getSmallRJetTOB()
......@@ -61,6 +63,7 @@ protected:
int m_jFEXalgoSearchWindowSeedET[5][5];
bool m_seedSet;
bool m_LMDisplaced;
std::map<int,std::vector<int> > m_map_Etvalues;
};
......
......@@ -84,9 +84,9 @@ namespace LVL1 {
SG::WriteHandleKey< xAOD::jFexSRJetRoIContainer> m_jFexSRJetOutKey {this,"Key_jFexSRJetOutputContainer","L1_jFexSRJetRoI","Output jFexEM container"};
SG::WriteHandleKey< xAOD::jFexLRJetRoIContainer> m_jFexLRJetOutKey {this,"Key_jFexLRJetOutputContainer","L1_jFexLRJetRoI","Output jFexEM container"};
SG::WriteHandleKey< xAOD::jFexTauRoIContainer> m_jFexTauOutKey {this,"Key_jFexTauOutputContainer","L1_jFexTauRoI","Output jFexEDM tau container"};
SG::WriteHandleKey< xAOD::jFexTauRoIContainer> m_jFexTauOutKey {this,"Key_jFexTauOutputContainer","L1_jFexTauRoI","Output jFexEDM tau container"};
SG::WriteHandleKey< xAOD::jFexSumETRoIContainer> m_jFexSumETOutKey {this,"Key_jFexSumETOutputContainer","L1_jFexSumETRoI","Output jFexEDM SumET container"};
SG::WriteHandleKey< xAOD::jFexMETRoIContainer> m_jFexMETOutKey {this,"Key_jFexMETOutputContainer","L1_jFexMETRoI","Output jFexEDM Met container"};
SG::WriteHandleKey< xAOD::jFexMETRoIContainer> m_jFexMETOutKey {this,"Key_jFexMETOutputContainer","L1_jFexMETRoI","Output jFexEDM Met container"};
std::map<int,jTower> m_jTowersColl;
std::map<uint8_t, std::vector<std::vector<uint32_t>> > m_allSmallRJetTobs;
......
......@@ -49,6 +49,8 @@ namespace LVL1 {
virtual void buildFWDmet() override;
virtual int GetMetXComponent() override;
virtual int GetMetYComponent() override;
virtual int getTTowerET(unsigned int TTID ) override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
virtual std::unique_ptr<jFEXmetTOB> getmetTOBs() override;
......@@ -69,7 +71,7 @@ protected:
virtual void buildMetXComponent();
virtual void buildMetYComponent();
std::map<int,std::vector<int> > m_map_Etvalues;
};
......
......@@ -49,7 +49,8 @@ namespace LVL1 {
virtual void buildBarrelSumET() override;
virtual void buildFWDSumET() override;
virtual int getETlowerEta(uint bin) override;
virtual int getETupperEta(uint bin) override;
virtual int getETupperEta(uint bin) override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
virtual std::unique_ptr<jFEXsumETTOB> getsumETTOBs() override;
......@@ -64,6 +65,9 @@ protected:
int m_SumlowEta =0;
int m_SumhighEta=0;
std::map<int,std::vector<int> > m_map_Etvalues;
};
......
......@@ -41,9 +41,9 @@ namespace LVL1 {
virtual StatusCode safetyTest() override;
virtual void setup(int TTwindow[5][5], int seed[3][3]) override;
virtual int getTTowerET(unsigned int row_=1 ,unsigned int col_=1 ) override; // arguments 2,2 to get the central TT from m_TTwindow[5][5]
virtual int getRealPhi(unsigned int row_=1 ,unsigned int col_=1 ) override; // arguments 2,2 to get the central TT from m_TTwindow[5][5]
virtual int getRealEta(unsigned int row_=1 ,unsigned int col_=1 ) override; // arguments 2,2 to get the central TT from m_TTwindow[5][5]
virtual int getTTowerET(unsigned int TTID ) override;
virtual int getRealPhi(unsigned int TTID ) override;
virtual int getRealEta(unsigned int TTID ) override;
virtual void buildSeeds() override;
virtual bool isSeedLocalMaxima() override;
......@@ -51,10 +51,10 @@ namespace LVL1 {
virtual int getClusterEt() override;
virtual int getIsLocalMaxima() override;
virtual int getFirstEtRing() override;
virtual void setFPGAEnergy(std::map<int,std::vector<int> > et_map) override;
virtual std::unique_ptr<jFEXtauTOB> getTauTOBs(int mphi, int meta) override;
virtual void Represent(int var_=0, int dim_=3) override;
// virtual jFEXtauAlgo* getTauTOBs() override;
......@@ -64,6 +64,7 @@ protected:
private:
SG::ReadHandleKey<LVL1::jTowerContainer> m_jFEXtauAlgo_jTowerContainerKey {this, "MyjTowers", "jTowerContainer", "Input container for jTowers"};
int realValue(int ID, int eta);
int m_SeedIDs[3][3]={{0}};
int m_SeedConditions_ET[3][3]={{0}};
......@@ -72,8 +73,10 @@ protected:
int m_ClusterEt = 0;
int m_TauIsolation = 0;
//int m_tauClusterIDs[4][5];
bool m_seedSet=false;
bool m_isLocalMaxima=false;
bool m_seedSet=false;
bool m_isLocalMaxima=false;
std::map<int,std::vector<int> > m_map_Etvalues;
struct color {
std::string RED ="\033[1;31m";
......@@ -92,7 +95,6 @@ protected:
} m_color;
};
......
......@@ -94,6 +94,12 @@ namespace LVL1 {
/** Get vector of all ET values in MeV */
std::vector<int> getETs() const {return m_et;};
/** Get EM ET value in MeV */
int getET_EM() const {return m_et[0];};
/** Get HAD ET value in MeV */
int getET_HAD() const {return m_et[1];};
/** Get ET of a specified cell in MeV FLOAT VERSION */
float getET_float(unsigned int layer, int cell = 0) const;
......@@ -110,7 +116,7 @@ namespace LVL1 {
/** Get vector of all ET values in MeV FLOAT VERSION */
std::vector<float> getETs_float() const {return m_et_float;};
void setET(int cell, float et, int layer);
void setET(int cell, float et);
/** Set supercell position ID **/
void setSCID(Identifier ID, int cell, float et, int layer, bool doenergysplit);
......
......@@ -49,21 +49,86 @@ DetFlags.detdescr.Calo_setOn()
include("RecExCond/AllDet_detDescr.py")
svcMgr += CfgMgr.THistSvc()
#svcMgr.THistSvc.Output += ["ISO DATAFILE='tobIso.root' OPT='RECREATE'"]
svcMgr.THistSvc.Output += ["ANALYSIS DATAFILE='myfile_jfex.root' OPT='RECREATE'"]
from OutputStreamAthenaPool.MultipleStreamManager import MSMgr
xaodStream = MSMgr.NewPoolRootStream( "StreamXAOD", "xAOD.out.root" )
xaodStream.AddItem( ["xAOD::jFexSRJetRoIContainer"] )
xaodStream.AddItem( ["xAOD::jFexSRJetRoIAuxContainer"] )
xaodStream.AddItem( ["xAOD::jFexLRJetRoIContainer"] )
xaodStream.AddItem( ["xAOD::jFexLRJetRoIAuxContainer"] )
xaodStream.AddItem( ["xAOD::jFexTauRoIContainer"] )
xaodStream.AddItem( ["xAOD::jFexTauRoIAuxContainer"] )
xaodStream.AddItem( ["xAOD::jFexSumETRoIContainer"] )
xaodStream.AddItem( ["xAOD::jFexSumETRoIAuxContainer"] )
xaodStream.AddItem( ["xAOD::jFexMETRoIContainer"] )
xaodStream.AddItem( ["xAOD::jFexMETRoIAuxContainer"] )
xaodStream = MSMgr.NewPoolRootStream( "StreamXAOD", "xAOD.jFEX.output.root" )
# the jFex containers
xaodStream.AddItem( ["xAOD::jFexSRJetRoIContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexSRJetRoIAuxContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexLRJetRoIContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexLRJetRoIAuxContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexTauRoIContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexTauRoIAuxContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexSumETRoIContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexSumETRoIAuxContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexMETRoIContainer#*"] )
xaodStream.AddItem( ["xAOD::jFexMETRoIAuxContainer#*"] )
# Generic event info
xaodStream.AddItem( ["xAOD::EventInfo#*"] )
xaodStream.AddItem( ["xAOD::EventAuxInfo#*"])
xaodStream.AddItem( ["xAOD::EventShape#Kt4EMTopoOriginEventShape"])
xaodStream.AddItem( ["xAOD::EventShapeAuxInfo#Kt4EMTopoOriginEventShapeAux."])
#Physics Objects
xaodStream.AddItem( ["xAOD::JetContainer#AntiKt4EMTopoJets"])
xaodStream.AddItem( ["xAOD::JetAuxContainer#AntiKt4EMTopoJetsAux."])
xaodStream.AddItem( ["xAOD::MuonContainer#Muons"])
xaodStream.AddItem( ["xAOD::MuonAuxContainer#MuonsAux."])
xaodStream.AddItem( ["xAOD::ElectronContainer#Electrons"])
xaodStream.AddItem( ["xAOD::ElectronAuxContainer#ElectronsAux."])
xaodStream.AddItem( ["xAOD::PhotonContainer#Photons"])
xaodStream.AddItem( ["xAOD::PhotonAuxContainer#PhotonsAux."])
xaodStream.AddItem( ["xAOD::TauJetContainer#TauJets"])
xaodStream.AddItem( ["xAOD::TauJetAuxContainer#TauJetsAux.-VertexedClusters."])
xaodStream.AddItem( ["xAOD::MissingETContainer#MET_Reference_AntiKt4EMTopo"])
xaodStream.AddItem( ["xAOD::MissingETAuxContainer#MET_Reference_AntiKt4EMTopoAux.-ConstitObjectLinks.-ConstitObjectWeights"])
xaodStream.AddItem( ["xAOD::VertexContainer#PrimaryVertices"])
xaodStream.AddItem( ["xAOD::VertexAuxContainer#PrimaryVerticesAux.-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"])
xaodStream.AddItem( ["xAOD::MissingETAssociationMap#METAssoc_AntiKt4EMTopo"])
xaodStream.AddItem( ["xAOD::MissingETAuxAssociationMap#METAssoc_AntiKt4EMTopoAux."])
xaodStream.AddItem( ["xAOD::MissingETContainer#MET_Core_AntiKt4EMTopo"])
xaodStream.AddItem( ["xAOD::MissingETAuxContainer#MET_Core_AntiKt4EMTopoAux.name.mpx.mpy.sumet.source"])
xaodStream.AddItem( ["xAOD::MissingETContainer#MET_Track"])
xaodStream.AddItem( ["xAOD::MissingETAuxContainer#MET_TrackAux.name.mpx.mpy"])
xaodStream.AddItem( ["xAOD::MissingETComponentMap#METMap_Truth"])
xaodStream.AddItem( ["xAOD::EmTauRoIContainer#LVL1EmTauRoIs"])
xaodStream.AddItem( ["xAOD::EmTauRoIAuxContainer#LVL1EmTauRoIsAux."])
xaodStream.AddItem( ["xAOD::EnergySumRoI#LVL1EnergySumRoI"])
xaodStream.AddItem( ["xAOD::EnergySumRoIAuxInfo#LVL1EnergySumRoIAux."])
xaodStream.AddItem( ["xAOD::JetRoIContainer#LVL1JetRoIs"])
xaodStream.AddItem( ["xAOD::JetRoIAuxContainer#LVL1JetRoIsAux."])
xaodStream.AddItem( ["xAOD::TruthParticleContainer#*"])
xaodStream.AddItem( ["xAOD::TruthParticleAuxContainer#TruthParticlesAux.-caloExtension"])
xaodStream.AddItem( ["xAOD::TruthVertexContainer#*"])
xaodStream.AddItem( ["xAOD::TruthVertexAuxContainer#*"])
xaodStream.AddItem( ["xAOD::TruthEventContainer#*"])
xaodStream.AddItem( ["xAOD::TruthEventAuxContainer#*"])
xaodStream.AddItem( ["TileCellContainer#MBTSContainer"])
xaodStream.AddItem( ["xAOD::TrigDecision#xTrigDecision"])
xaodStream.AddItem( ["xAOD::TrigNavigation#TrigNavigation"])
xaodStream.AddItem( ["xAOD::TrigConfKeys#TrigConfKeys"])