ATLAS Offline Software
ElementLinkResetAlg.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef XAODCORECNV_ELEMENTLINKRESETALG_H
8 #define XAODCORECNV_ELEMENTLINKRESETALG_H
9 
10 // System include(s):
11 #include <vector>
12 #include <string>
13 
14 // Gaudi/Athena include(s):
17 
18 // Forward declaration(s):
19 namespace SG {
20  class IConstAuxStore;
21 }
22 
23 namespace xAODMaker {
24 
40 
41  public:
43  ElementLinkResetAlg( const std::string& name, ISvcLocator* svcLoc );
44 
46  virtual StatusCode initialize();
48  virtual StatusCode execute();
49 
50  private:
53  const std::string& key );
54 
56  std::vector< std::string > m_keys;
57 
59  class AuxIDType {
60  public:
61  AuxIDType();
62  bool isSet;
63  bool isEL;
64  bool isELVec;
65  };
66 
68  std::vector< AuxIDType > m_typeCache;
69 
70  }; // class ElementLinkResetAlg
71 
72 } // namespace xAODMaker
73 
74 #endif // XAODCORECNV_ELEMENTLINKRESETALG_H
store
StoreGateSvc * store
Definition: fbtTestBasics.cxx:69
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
xAODMaker::ElementLinkResetAlg::m_typeCache
std::vector< AuxIDType > m_typeCache
Cached types of the auxiliary IDs.
Definition: ElementLinkResetAlg.h:68
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
initialize
void initialize()
Definition: run_EoverP.cxx:894
xAODMaker
Definition: StoreGateSvc.h:72
LArG4FSStartPointFilterLegacy.execute
execute
Definition: LArG4FSStartPointFilterLegacy.py:20
AthAlgorithm.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAODMaker::ElementLinkResetAlg::AuxIDType::isELVec
bool isELVec
True of the type is an ElementLink vector.
Definition: ElementLinkResetAlg.h:64
AthAlgorithm
Definition: AthAlgorithm.h:47
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
xAODMaker::ElementLinkResetAlg::AuxIDType::isEL
bool isEL
True if the type is an ElementLink.
Definition: ElementLinkResetAlg.h:63
xAODMaker::ElementLinkResetAlg::AuxIDType::isSet
bool isSet
Flag for whether this type was already set up.
Definition: ElementLinkResetAlg.h:62
CxxUtils::reset
constexpr std::enable_if_t< is_bitmask_v< E >, E & > reset(E &lhs, E rhs)
Convenience function to clear bits in a class enum bitmask.
Definition: bitmask.h:243
xAODMaker::ElementLinkResetAlg
Algorithm reseting ElementLink objects to their default state.
Definition: ElementLinkResetAlg.h:39
SG::IConstAuxStore
Interface for const operations on an auxiliary store.
Definition: IConstAuxStore.h:64
checker_macros.h
Define macros for attributes used to control the static checker.
xAODMaker::ElementLinkResetAlg::AuxIDType
Helper class for caching auxiliary ID types.
Definition: ElementLinkResetAlg.h:59
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
xAODMaker::ElementLinkResetAlg::m_keys
std::vector< std::string > m_keys
StoreGate keys of the auxiliary objects to be processed.
Definition: ElementLinkResetAlg.h:56