ATLAS Offline Software
AthLegacySequence.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // AthLegacySequence.h
6 // Header file for class AthLegacySequence
8 #ifndef ATHENABASECOMPS_ATHLEGACYEQUENCE_H
9 #define ATHENABASECOMPS_ATHLEGACYEQUENCE_H 1
10 
11 #pragma once
12 
13 
14 // Framework includes
17 #include "Gaudi/Sequence.h"
18 #include "GaudiKernel/ThreadLocalContext.h"
20 
21 namespace Athena {
22  namespace details {
23 #pragma GCC diagnostic push
24 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
26  : public AthCommonDataStore<AthCommonMsg< Gaudi::Sequence >>
27  {
28  public:
29 
31  AthLegacySequenceAdapter(const std::string& name,
32  ISvcLocator* pSvcLocator);
33 
34  virtual StatusCode execute() = 0;
35 
36  const EventContext& getContext() const { return Gaudi::Hive::currentContext(); }
37 
38  virtual const DataObjIDColl& extraOutputDeps() const override;
39 
40  protected:
41  bool isReEntrant() const override final { return false; }
42 
43  private:
44  StatusCode execute( const EventContext& ) const override final
45  {
47  const_cast<AthLegacySequenceAdapter*>( this );
48  return seq->execute();
49  }
50 
51  DataObjIDColl m_extendedExtraObjects;
52 
53  };
54 #pragma GCC diagnostic pop
55  }
56 }
57 
58 
59 #pragma GCC diagnostic push
60 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
63 {
64 public:
66  // this is to explicitly hide the other signature of `execute`
67  StatusCode execute() override = 0;
68 };
69 #pragma GCC diagnostic pop
70 
71 
72 #endif //> !ATHENABASECOMPS_ATHLEGACYSEQUENCE_H
test_athena_ntuple_filter.seq
seq
filter configuration ## -> we use the special sequence 'AthMasterSeq' which is run before any other a...
Definition: test_athena_ntuple_filter.py:18
Athena::details::AthLegacySequenceAdapter::getContext
const EventContext & getContext() const
Definition: AthLegacySequence.h:36
python.compareTCTs.details
details
Definition: compareTCTs.py:214
AthCommonMsg.h
Templated class that provides backwards compatibility for legacy MsgService manipulation methods.
AthLegacySequence::execute
StatusCode execute() override=0
Athena::details::AthLegacySequenceAdapter::extraOutputDeps
virtual const DataObjIDColl & extraOutputDeps() const override
Definition: AthLegacySequence.cxx:30
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
Athena::details::AthLegacySequenceAdapter::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthLegacySequence.h:51
AthCommonDataStore
Definition: AthCommonDataStore.h:52
AthLegacySequence
Alias for backward compatibility.
Definition: AthLegacySequence.h:63
Athena
Some weak symbol referencing magic...
Definition: AthLegacySequence.h:21
Athena::details::AthLegacySequenceAdapter::AthLegacySequenceAdapter
AthLegacySequenceAdapter(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition: AthLegacySequence.cxx:13
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthCommonDataStore.h
Templated class that provides access to Athena event stores and ability to set data dependencies via ...
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
Athena::details::AthLegacySequenceAdapter
Definition: AthLegacySequence.h:27
Athena::details::AthLegacySequenceAdapter::execute
virtual StatusCode execute()=0
Athena::details::AthLegacySequenceAdapter::execute
StatusCode execute(const EventContext &) const override final
Definition: AthLegacySequence.h:44
Athena::details::AthLegacySequenceAdapter::isReEntrant
bool isReEntrant() const override final
Definition: AthLegacySequence.h:41
ATLAS_THREAD_SAFE
#define ATLAS_THREAD_SAFE
Definition: checker_macros.h:211
checker_macros.h
Define macros for attributes used to control the static checker.