diff --git a/Event/xAOD/xAODTrigger/CMakeLists.txt b/Event/xAOD/xAODTrigger/CMakeLists.txt index 5f0b72e796662982aa060d2399159828708bc237..73487f2ce92cb27943d88d0875a150e05d88f81a 100644 --- a/Event/xAOD/xAODTrigger/CMakeLists.txt +++ b/Event/xAOD/xAODTrigger/CMakeLists.txt @@ -1,38 +1,41 @@ -################################################################################ -# Package: xAODTrigger -################################################################################ +# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration -# Declare the package name: +# Declare the package name. atlas_subdir( xAODTrigger ) -# Extra dependencies, based on what environment we're in: +# Extra dependencies, based on what environment we're in. +set( extra_libs ) if( NOT XAOD_STANDALONE ) - set( extra_deps Control/AthenaKernel ) set( extra_libs AthenaKernel ) endif() -# Declare the package's dependencies: -atlas_depends_on_subdirs( - PUBLIC - Control/AthContainers - Control/AthContainersInterfaces - Control/AthLinks - Event/xAOD/xAODCore - Event/xAOD/xAODBase - Trigger/TrigEvent/TrigNavStructure - ${extra_deps} ) - -# Component(s) in the package: +# Pull in the helper CMake code. +find_package( xAODUtilities ) + +# Component(s) in the package. atlas_add_library( xAODTrigger xAODTrigger/*.h xAODTrigger/versions/*.h xAODTrigger/versions/*.icc Root/*.cxx PUBLIC_HEADERS xAODTrigger - LINK_LIBRARIES AthContainers AthLinks xAODCore xAODBase TrigNavStructure ${extra_libs} ) + LINK_LIBRARIES AthContainers AthLinks xAODCore xAODBase TrigNavStructure + ${extra_libs} ) + +atlas_add_xaod_smart_pointer_dicts( + INPUT xAODTrigger/selection.xml + OUTPUT _selectionFile + CONTAINERS "xAOD::MuonRoIContainer_v1" "xAOD::JetRoIContainer_v1" + "xAOD::JetRoIContainer_v2" "xAOD::EmTauRoIContainer_v1" + "xAOD::EmTauRoIContainer_v2" "xAOD::TriggerMenuContainer_v1" + "xAOD::TrigCompositeContainer_v1" "xAOD::BunchConfContainer_v1" + "xAOD::TrigPassBitsContainer_v1" + OBJECTS "xAOD::EnergySumRoI_v1" "xAOD::EnergySumRoI_v2" + "xAOD::TrigDecision_v1" "xAOD::TrigNavigation_v1" + "xAOD::RoiDescriptorStore_v1" ) atlas_add_dictionary( xAODTriggerDict xAODTrigger/xAODTriggerDict.h - xAODTrigger/selection.xml - LINK_LIBRARIES xAODTrigger + ${_selectionFile} + LINK_LIBRARIES xAODCore xAODTrigger EXTRA_FILES Root/dict/*.cxx ) atlas_add_test( ut_xaodtrigger_bytestreamauxcontainer_v1_test diff --git a/Event/xAOD/xAODTrigger/xAODTrigger/selection.xml b/Event/xAOD/xAODTrigger/xAODTrigger/selection.xml index a336d26549c40ab88c901f80d273464d24d46d90..d316db7bfc34bcecf06ead33a906285e5e1ae57e 100644 --- a/Event/xAOD/xAODTrigger/xAODTrigger/selection.xml +++ b/Event/xAOD/xAODTrigger/xAODTrigger/selection.xml @@ -1,7 +1,7 @@ -<!-- $Id: selection.xml 743093 2016-04-26 21:46:56Z watsona $ --> +<!-- Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration --> <lcgdict> - <!-- The byte stream auxiliary container, v1: --> + <!-- xAOD::ByteStreamAuxContainer type(s). --> <class name="xAOD::ByteStreamAuxContainer_v1" > <field name="m_auxids" transient="true" /> <field name="m_staticVecs" transient="true" /> @@ -20,119 +20,169 @@ ]]> </read> - <!-- Types used by ByteStreamAuxContainer_v1 internally: --> - <class name="std::map<std::string,std::vector<int> >" /> - <class name="std::map<std::string,std::vector<float> >" /> - <class name="std::map<std::string,std::vector<std::vector<int> > >" /> - <class name="std::map<std::string,std::vector<std::vector<float> > >" /> - - <!-- Types used by Signature and Sequence info in TriggerMenuAuxContainer_v1 --> - <class name="std::vector<std::vector<std::vector<std::string> > >" /> - <class name="std::vector<std::vector<std::vector<uint32_t> > >" /> - <class name="std::vector<std::vector<std::vector<std::vector<std::string> > > >" /> - - <!-- RoI dictionaries: --> + <!-- xAOD::MuonRoI interface type(s). --> <class name="xAOD::MuonRoI_v1" /> <class name="xAOD::MuonRoIContainer_v1" id="807F1B34-CFD5-4410-AB98-83231B551D6F" /> + <typedef name="xAOD::MuonRoI" /> + <typedef name="xAOD::MuonRoIContainer" /> + + <!-- xAOD::MuonRoI auxiliary type(s). --> <class name="xAOD::MuonRoIAuxContainer_v1" id="242CC7E8-D74C-4208-A3F6-2982628F1F8E" /> + <typedef name="xAOD::MuonRoIAuxContainer" /> + <!-- xAOD::JetRoI interface type(s). --> <class name="xAOD::JetRoI_v1" /> <class name="xAOD::JetRoIContainer_v1" id="ED39F230-5E9A-11E3-9563-02163E00A725" /> - <class name="xAOD::JetRoIAuxContainer_v1" - id="64C2E2A4-5E9A-11E3-BEF2-02163E00A725" /> - <class name="xAOD::JetRoI_v2" /> <class name="xAOD::JetRoIContainer_v2" id="8F9A76C9-2083-4774-A0EE-FB585930B664" /> + <typedef name="xAOD::JetRoI" /> + <typedef name="xAOD::JetRoIContainer" /> + + <!-- xAOD::JetRoI auxiliary type(s). --> + <class name="xAOD::JetRoIAuxContainer_v1" + id="64C2E2A4-5E9A-11E3-BEF2-02163E00A725" /> <class name="xAOD::JetRoIAuxContainer_v2" id="8448ECAF-10E0-4E8B-9E67-3A00FEA36317" /> - + <typedef name="xAOD::JetRoIAuxContainer" /> + + <!-- Tell ROOT that it should automatically convert between smart pointer --> + <!-- types. --> + <read sourceClass="DataLink<xAOD::JetRoIContainer_v1>" version="[1-]" + targetClass="DataLink<xAOD::JetRoIContainer_v2>" + source="" target="" /> + <read sourceClass="ElementLink<xAOD::JetRoIContainer_v1>" version="[1-]" + targetClass="ElementLink<xAOD::JetRoIContainer_v2>" + source="" target="" /> + + <!-- xAOD::EmTauRoI interface type(s). --> <class name="xAOD::EmTauRoI_v1" /> <class name="xAOD::EmTauRoIContainer_v1" id="101CD1EE-5EA2-11E3-895D-02163E00A743" /> - <class name="xAOD::EmTauRoIAuxContainer_v1" - id="1825AE7E-5EA2-11E3-A41F-02163E00A743" /> - <class name="xAOD::EmTauRoI_v2" /> <class name="xAOD::EmTauRoIContainer_v2" id="6AB862C4-31E6-4F66-AAE8-56BA01E350F2" /> + <typedef name="xAOD::EmTauRoI" /> + <typedef name="xAOD::EmTauRoIContainer" /> + + <!-- xAOD::EmTauRoI auxiliary type(s). --> + <class name="xAOD::EmTauRoIAuxContainer_v1" + id="1825AE7E-5EA2-11E3-A41F-02163E00A743" /> <class name="xAOD::EmTauRoIAuxContainer_v2" id="74EA3AFB-B7BE-4E4B-AD5D-4297CA6EDBCD" /> - + <typedef name="xAOD::EmTauRoIAuxContainer" /> + + <!-- Tell ROOT that it should automatically convert between smart pointer --> + <!-- types. --> + <read sourceClass="DataLink<xAOD::EmTauRoIContainer_v1>" version="[1-]" + targetClass="DataLink<xAOD::EmTauRoIContainer_v2>" + source="" target="" /> + <read sourceClass="ElementLink<xAOD::EmTauRoIContainer_v1>" version="[1-]" + targetClass="ElementLink<xAOD::EmTauRoIContainer_v2>" + source="" target="" /> + + <!-- xAOD::JetEtRoI interface type(s). --> <class name="xAOD::JetEtRoI_v1" id="6018AD28-5EAF-11E3-9B5D-02163E00A743" /> + <typedef name="xAOD::JetEtRoI" /> + + <!-- xAOD::JetEtRoI auxiliary type(s). --> <class name="xAOD::JetEtRoIAuxInfo_v1" id="6A7C6F7A-5EAF-11E3-BFBC-02163E00A743" /> + <typedef name="xAOD::JetEtRoIAuxInfo" /> + <!-- xAOD::EnergySumRoI interface type(s). --> <class name="xAOD::EnergySumRoI_v1" id="727CB19A-5EB8-11E3-81B0-02163E00A743" /> - <class name="xAOD::EnergySumRoIAuxInfo_v1" - id="7BD71A00-5EB8-11E3-95AF-02163E00A743" /> - <class name="xAOD::EnergySumRoI_v2" id="3F26401F-25D9-4CCA-B883-57EBCEE8D299" /> + <typedef name="xAOD::EnergySumRoI" /> + + <!-- xAOD::EnergySumRoI auxiliary type(s). --> + <class name="xAOD::EnergySumRoIAuxInfo_v1" + id="7BD71A00-5EB8-11E3-95AF-02163E00A743" /> <class name="xAOD::EnergySumRoIAuxInfo_v2" id="7A0DB6D7-05F6-4D3A-9E8B-0230350E3E25" /> + <typedef name="xAOD::EnergySumRoIAuxInfo" /> + + <!-- Tell ROOT that it should automatically convert between smart pointer --> + <!-- types. --> + <read sourceClass="DataLink<xAOD::EnergySumRoI_v1>" version="[1-]" + targetClass="DataLink<xAOD::EnergySumRoI_v2>" + source="" target="" /> - <!-- TriggerMenu dictionaries: --> + <!-- xAOD::TriggerMenu interface type(s). --> <class name="xAOD::TriggerMenu_v1" /> <class name="xAOD::TriggerMenuContainer_v1" id="AA55120B-11CF-44A3-B1E4-A5AB062207B7" /> + <typedef name="xAOD::TriggerMenu" /> + <typedef name="xAOD::TriggerMenuContainer" /> + + <!-- xAOD::TriggerMenu auxiliary type(s). --> <class name="xAOD::TriggerMenuAuxContainer_v1" id="B8614CC5-8696-4170-8CCC-496DA7671246" /> + <typedef name="xAOD::TriggerMenuAuxContainer" /> - <class name="xAOD::TrigConfKeys_v1" - id="A88FD5D2-8BCB-4ADC-978C-0914D86B96B7" /> - - <!-- Extra types used by TriggerMenu: --> - <class name="std::vector<std::vector<uint16_t> >" /> - <class name="std::vector<std::vector<std::vector<uint16_t> > >" /> - - <!-- TrigDecision_v1 dictionaries: --> + <!-- xAOD::TrigDecision interface type(s). --> <class name="xAOD::TrigDecision_v1" id="092BCB2D-9630-4689-BE86-7B93466420DA" /> + <typedef name="xAOD::TrigDecision" /> + + <!-- xAOD::TrigDecision auxiliary type(s). --> <class name="xAOD::TrigDecisionAuxInfo_v1" id="F9618829-3B9C-41CB-8A87-D26B5D31CA79" /> + <typedef name="xAOD::TrigDecisionAuxInfo" /> - <!-- TrigNavigation_v1 dictionaries: --> + <!-- xAOD::TrigNavigation interface type(s). --> <class name="xAOD::TrigNavigation_v1" id="C9131CE0-C4D5-47A2-B088-D49ECE2C3C69" /> + <typedef name="xAOD::TrigNavigation" /> + + <!-- xAOD::TrigNavigation auxiliary type(s). --> <class name="xAOD::TrigNavigationAuxInfo_v1" id="924049A6-25B4-4406-A70A-CCAC2E4233E1" /> + <typedef name="xAOD::TrigNavigationAuxInfo" /> - <!-- TrigComposite_v1 dictionaries: --> + <!-- xAOD::TrigComposite interface type(s). --> <class name="xAOD::TrigComposite_v1" /> <class name="xAOD::TrigCompositeContainer_v1" id="3CB1DCCD-2B78-4E15-AC09-D75B228A29AA" /> + <typedef name="xAOD::TrigComposite" /> + <typedef name="xAOD::TrigCompositeContainer" /> + + <!-- xAOD::TrigComposite auxiliary type(s). --> <class name="xAOD::TrigCompositeAuxContainer_v1" id="171EB8B8-A777-47D9-94A9-33B2482E2AAF" /> - - <!-- TrigComposite_v2 dictionaries: --> <class name="xAOD::TrigCompositeAuxContainer_v2" id="3174A8A0-7EA2-436D-93FC-0D058BE99B09" /> + <typedef name="xAOD::TrigCompositeAuxContainer" /> - <!-- RoiDescriptorStore_v1 dictionaries: --> + <!-- xAOD::RoiDescriptorStore interface type(s). --> <class name="xAOD::RoiDescriptorStore_v1" id="882822c8-906a-11e5-87f4-02163e010d8c" /> + <typedef name="xAOD::RoiDescriptorStore" /> + + <!-- xAOD::RoiDescriptorStore auxiliary type(s). --> <class name="xAOD::RoiDescriptorStoreAuxInfo_v1" id="8aa7eae2-906a-11e5-a100-02163e010d8c" /> + <typedef name="xAOD::RoiDescriptorStoreAuxInfo" /> - <!-- Extra types used by TrigComposite: --> - <class name="std::vector<std::vector<std::string> >" /> - - <!-- Bunch configuration dictionaries: --> + <!-- xAOD::BunchConf interface type(s). --> <class name="xAOD::BunchConf_v1" /> <class name="xAOD::BunchConfContainer_v1" id="07B1BB98-24EE-4EA3-B0D5-ECB2B0A3CB65" /> + <typedef name="xAOD::BunchConf" /> + <typedef name="xAOD::BunchConfContainer" /> + + <!-- xAOD::BunchConf auxiliary type(s). --> <class name="xAOD::BunchConfAuxContainer_v1" id="29CFA84E-5C7C-4AAD-8FB5-F5EB9AF93423" /> - <class name="xAOD::BunchConfKey_v1" - id="B7FA1A14-95A4-4852-813E-CB2271906060" /> + <typedef name="xAOD::BunchConfAuxContainer" /> - <!-- TrigPassBits dictionaries: --> + <!-- xAOD::TrigPassBits interface type(s). --> <class name="xAOD::TrigPassBits_v1" > <field name="m_container" transient="true" /> </class> @@ -145,7 +195,18 @@ </read> <class name="xAOD::TrigPassBitsContainer_v1" id="7B5DF7FF-2043-414E-BEDC-2BB0AB518AF7" /> + <typedef name="xAOD::TrigPassBits" /> + <typedef name="xAOD::TrigPassBitsContainer" /> + + <!-- xAOD::TrigPassBits auxiliary type(s). --> <class name="xAOD::TrigPassBitsAuxContainer_v1" id="AD293D04-8D40-4704-B945-04283172D035" /> + <typedef name="xAOD::TrigPassBitsAuxContainer" /> + + <!-- Key type(s). --> + <class name="xAOD::TrigConfKeys_v1" + id="A88FD5D2-8BCB-4ADC-978C-0914D86B96B7" /> + <class name="xAOD::BunchConfKey_v1" + id="B7FA1A14-95A4-4852-813E-CB2271906060" /> </lcgdict> diff --git a/Event/xAOD/xAODTrigger/xAODTrigger/xAODTriggerDict.h b/Event/xAOD/xAODTrigger/xAODTrigger/xAODTriggerDict.h index 6ce42c1839a9c1a88cfda109e3c8e1260f130a4d..5b5127c252347499f3700279dd848a66e4cd9c38 100644 --- a/Event/xAOD/xAODTrigger/xAODTrigger/xAODTriggerDict.h +++ b/Event/xAOD/xAODTrigger/xAODTrigger/xAODTriggerDict.h @@ -1,149 +1,128 @@ // Dear emacs, this is -*- c++ -*- - /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ - -// $Id: xAODTriggerDict.h 743093 2016-04-26 21:46:56Z watsona $ #ifndef XAODTRIGGER_XAODTRIGGERDICT_H #define XAODTRIGGER_XAODTRIGGERDICT_H -// STL include(s): -#include <vector> - -// EDM include(s): -#include "AthLinks/DataLink.h" -#include "AthLinks/ElementLink.h" -#include "AthLinks/ElementLinkVector.h" - -// Local include(s): +// Local include(s). #include "xAODTrigger/versions/ByteStreamAuxContainer_v1.h" +#include "xAODTrigger/TriggerMenu.h" +#include "xAODTrigger/TriggerMenuContainer.h" +#include "xAODTrigger/TriggerMenuAuxContainer.h" #include "xAODTrigger/versions/TriggerMenu_v1.h" #include "xAODTrigger/versions/TriggerMenuContainer_v1.h" #include "xAODTrigger/versions/TriggerMenuAuxContainer_v1.h" +#include "xAODTrigger/MuonRoI.h" +#include "xAODTrigger/MuonRoIContainer.h" +#include "xAODTrigger/MuonRoIAuxContainer.h" +#include "xAODTrigger/versions/MuonRoI_v1.h" #include "xAODTrigger/versions/MuonRoIContainer_v1.h" #include "xAODTrigger/versions/MuonRoIAuxContainer_v1.h" -#include "xAODTrigger/versions/MuonRoI_v1.h" +#include "xAODTrigger/JetRoI.h" +#include "xAODTrigger/JetRoIContainer.h" +#include "xAODTrigger/JetRoIAuxContainer.h" +#include "xAODTrigger/versions/JetRoI_v1.h" #include "xAODTrigger/versions/JetRoIContainer_v1.h" #include "xAODTrigger/versions/JetRoIAuxContainer_v1.h" -#include "xAODTrigger/versions/JetRoI_v1.h" - +#include "xAODTrigger/versions/JetRoI_v2.h" #include "xAODTrigger/versions/JetRoIContainer_v2.h" #include "xAODTrigger/versions/JetRoIAuxContainer_v2.h" -#include "xAODTrigger/versions/JetRoI_v2.h" +#include "xAODTrigger/EmTauRoI.h" +#include "xAODTrigger/EmTauRoIContainer.h" +#include "xAODTrigger/EmTauRoIAuxContainer.h" +#include "xAODTrigger/versions/EmTauRoI_v1.h" #include "xAODTrigger/versions/EmTauRoIContainer_v1.h" #include "xAODTrigger/versions/EmTauRoIAuxContainer_v1.h" -#include "xAODTrigger/versions/EmTauRoI_v1.h" - +#include "xAODTrigger/versions/EmTauRoI_v2.h" #include "xAODTrigger/versions/EmTauRoIContainer_v2.h" #include "xAODTrigger/versions/EmTauRoIAuxContainer_v2.h" -#include "xAODTrigger/versions/EmTauRoI_v2.h" -#include "xAODTrigger/versions/JetEtRoIAuxInfo_v1.h" +#include "xAODTrigger/JetEtRoI.h" +#include "xAODTrigger/JetEtRoIAuxInfo.h" #include "xAODTrigger/versions/JetEtRoI_v1.h" +#include "xAODTrigger/versions/JetEtRoIAuxInfo_v1.h" -#include "xAODTrigger/versions/EnergySumRoIAuxInfo_v2.h" -#include "xAODTrigger/versions/EnergySumRoI_v2.h" - -#include "xAODTrigger/versions/EnergySumRoIAuxInfo_v1.h" +#include "xAODTrigger/EnergySumRoI.h" +#include "xAODTrigger/EnergySumRoIAuxInfo.h" #include "xAODTrigger/versions/EnergySumRoI_v1.h" - -#include "xAODTrigger/versions/EnergySumRoIAuxInfo_v2.h" +#include "xAODTrigger/versions/EnergySumRoIAuxInfo_v1.h" #include "xAODTrigger/versions/EnergySumRoI_v2.h" +#include "xAODTrigger/versions/EnergySumRoIAuxInfo_v2.h" +#include "xAODTrigger/TrigDecision.h" +#include "xAODTrigger/TrigDecisionAuxInfo.h" #include "xAODTrigger/versions/TrigDecision_v1.h" #include "xAODTrigger/versions/TrigDecisionAuxInfo_v1.h" +#include "xAODTrigger/TrigNavigation.h" +#include "xAODTrigger/TrigNavigationAuxInfo.h" #include "xAODTrigger/versions/TrigNavigation_v1.h" #include "xAODTrigger/versions/TrigNavigationAuxInfo_v1.h" +#include "xAODTrigger/TrigConfKeys.h" #include "xAODTrigger/versions/TrigConfKeys_v1.h" +#include "xAODTrigger/TrigComposite.h" +#include "xAODTrigger/TrigCompositeContainer.h" +#include "xAODTrigger/TrigCompositeAuxContainer.h" #include "xAODTrigger/versions/TrigComposite_v1.h" #include "xAODTrigger/versions/TrigCompositeContainer_v1.h" #include "xAODTrigger/versions/TrigCompositeAuxContainer_v1.h" #include "xAODTrigger/versions/TrigCompositeAuxContainer_v2.h" +#include "xAODTrigger/BunchConfKey.h" #include "xAODTrigger/versions/BunchConfKey_v1.h" + +#include "xAODTrigger/BunchConf.h" +#include "xAODTrigger/BunchConfContainer.h" +#include "xAODTrigger/BunchConfAuxContainer.h" +#include "xAODTrigger/versions/BunchConf_v1.h" #include "xAODTrigger/versions/BunchConfContainer_v1.h" #include "xAODTrigger/versions/BunchConfAuxContainer_v1.h" +#include "xAODTrigger/TrigPassBits.h" +#include "xAODTrigger/TrigPassBitsContainer.h" +#include "xAODTrigger/TrigPassBitsAuxContainer.h" #include "xAODTrigger/versions/TrigPassBits_v1.h" #include "xAODTrigger/versions/TrigPassBitsContainer_v1.h" #include "xAODTrigger/versions/TrigPassBitsAuxContainer_v1.h" +#include "xAODTrigger/RoiDescriptorStore.h" +#include "xAODTrigger/RoiDescriptorStoreAuxInfo.h" #include "xAODTrigger/versions/RoiDescriptorStore_v1.h" #include "xAODTrigger/versions/RoiDescriptorStoreAuxInfo_v1.h" -namespace{ - struct GCCXML_DUMMY_INSTANTIATION_XAODTRIGGER { - - xAOD::MuonRoIContainer_v1 muon_c1; - DataLink< xAOD::MuonRoIContainer_v1 > muon_l1; - ElementLink< xAOD::MuonRoIContainer_v1 > muon_l2; - ElementLinkVector< xAOD::MuonRoIContainer_v1 > muon_l3; - std::vector< DataLink<xAOD::MuonRoIContainer_v1 > > muon_l4; - std::vector< ElementLink<xAOD::MuonRoIContainer_v1 > > muon_l5; - std::vector< ElementLinkVector< xAOD::MuonRoIContainer_v1 > > muon_l6; - - xAOD::JetRoIContainer_v1 jet_c1; - DataLink< xAOD::JetRoIContainer_v1 > jet_l1; - ElementLink< xAOD::JetRoIContainer_v1 > jet_l2; - ElementLinkVector< xAOD::JetRoIContainer_v1 > jet_l3; - std::vector< DataLink<xAOD::JetRoIContainer_v1 > > jet_l4; - std::vector< ElementLink<xAOD::JetRoIContainer_v1 > > jet_l5; - std::vector< ElementLinkVector< xAOD::JetRoIContainer_v1 > > jet_l6; - - xAOD::JetRoIContainer_v2 jet_v2_c1; - DataLink< xAOD::JetRoIContainer_v2 > jet_v2_l1; - ElementLink< xAOD::JetRoIContainer_v2 > jet_v2_l2; - ElementLinkVector< xAOD::JetRoIContainer_v2 > jet_v2_l3; - std::vector< DataLink<xAOD::JetRoIContainer_v2 > > jet_v2_l4; - std::vector< ElementLink<xAOD::JetRoIContainer_v2 > > jet_v2_l5; - std::vector< ElementLinkVector< xAOD::JetRoIContainer_v2 > > jet_v2_l6; - - xAOD::EmTauRoIContainer_v1 emtau_c1; - DataLink< xAOD::EmTauRoIContainer_v1 > emtau_l1; - ElementLink< xAOD::EmTauRoIContainer_v1 > emtau_l2; - ElementLinkVector< xAOD::EmTauRoIContainer_v1 > emtau_l3; - std::vector< DataLink<xAOD::EmTauRoIContainer_v1 > > emtau_l4; - std::vector< ElementLink<xAOD::EmTauRoIContainer_v1 > > emtau_l5; - std::vector< ElementLinkVector< xAOD::EmTauRoIContainer_v1 > > emtau_l6; - - xAOD::EmTauRoIContainer_v2 emtau_v2_c1; - DataLink< xAOD::EmTauRoIContainer_v2 > emtau_v2_l1; - ElementLink< xAOD::EmTauRoIContainer_v2 > emtau_v2_l2; - ElementLinkVector< xAOD::EmTauRoIContainer_v2 > emtau_v2_l3; - std::vector< DataLink<xAOD::EmTauRoIContainer_v2 > > emtau_v2_l4; - std::vector< ElementLink<xAOD::EmTauRoIContainer_v2 > > emtau_v2_l5; - std::vector< ElementLinkVector< xAOD::EmTauRoIContainer_v2 > > emtau_v2_l6; - - DataLink< xAOD::JetEtRoI_v1 > jetEt_l1; - std::vector< DataLink< xAOD::JetEtRoI_v1 > > jetEt_l2; - - DataLink< xAOD::EnergySumRoI_v1 > esum_l1; - std::vector< DataLink< xAOD::EnergySumRoI_v1 > > esum_l2; - - DataLink< xAOD::EnergySumRoI_v2 > esum_v2_l1; - std::vector< DataLink< xAOD::EnergySumRoI_v2 > > esum_v2_l2; - - xAOD::TriggerMenuContainer_v1 c2; - - xAOD::TrigCompositeContainer_v1 comp_c1; - - xAOD::BunchConfContainer_v1 c5; - - xAOD::TrigPassBitsContainer_v1 pb_c1; - DataLink< xAOD::TrigPassBitsContainer_v1 > pb_l1; - ElementLink< xAOD::TrigPassBitsContainer_v1 > pb_l2; - std::vector< DataLink< xAOD::TrigPassBitsContainer_v1 > > pb_l3; - std::vector< ElementLink< xAOD::TrigPassBitsContainer_v1 > > pb_l4; - - }; +// EDM include(s). +#include "xAODCore/tools/DictHelpers.h" + +// Instantiate all necessary types for the dictionary. +namespace { + struct GCCXML_DUMMY_INSTANTIATION_XAODTRIGGER { + // Local type(s). + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, TriggerMenuContainer_v1 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, BunchConfContainer_v1 ); + + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, MuonRoIContainer_v1 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, JetRoIContainer_v1 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, JetRoIContainer_v2 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, EmTauRoIContainer_v1 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, EmTauRoIContainer_v2 ); + + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, TrigCompositeContainer_v1 ); + XAOD_INSTANTIATE_NS_CONTAINER_TYPES( xAOD, TrigPassBitsContainer_v1 ); + + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, JetEtRoI_v1 ); + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, EnergySumRoI_v1 ); + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, EnergySumRoI_v2 ); + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, TrigDecision_v1 ); + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, TrigNavigation_v1 ); + XAOD_INSTANTIATE_NS_OBJECT_TYPES( xAOD, RoiDescriptorStore_v1 ); + }; } #endif // XAODTRIGGER_XAODTRIGGERDICT_H