15#include "GaudiKernel/ICondSvc.h"
16#include "GaudiKernel/ServiceHandle.h"
19#include "Gaudi/Algorithm.h"
20#include "Gaudi/AsynchronousAlgorithm.h"
23#include "GaudiKernel/ThreadLocalContext.h"
25template <
class BaseAlg>
27 ISvcLocator* pSvcLocator ) :
35 std::make_unique<AthenaBaseComps::AthAlgorithmDHUpdate>
37 std::move (m_updateDataHandles));
42template <
class BaseAlg>
50template <
class BaseAlg>
62template <
class BaseAlg>
75template <
class BaseAlg>
78 return BaseAlg::sysExecute (ctx);
88template <
class BaseAlg>
96 return BaseAlg::extraOutputDeps();
106template <
class BaseAlg>
110 if (
sc.isFailure()) {
116 if (
h->isCondition() &&
h->mode() == Gaudi::DataHandle::Writer) {
118 if ( cs.retrieve().isFailure() ) {
120 return StatusCode::SUCCESS;
122 if (cs->regHandle(
this,*
h).isFailure()) {
123 sc = StatusCode::FAILURE;
124 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
Update output dependencies to include symlinks.
#define ATH_MSG_WARNING(x)
AthCommonDataStore(const std::string &name, T... args)
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
An algorithm that can be simultaneously executed in multiple threads.
virtual bool isClonable() const override
Specify if the algorithm is clonable.
DataObjIDColl m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
virtual StatusCode sysInitialize() override
Override sysInitialize.
AthCommonReentrantAlgorithm()
Default constructor:
virtual ~AthCommonReentrantAlgorithm() override
Destructor:
virtual StatusCode sysExecute(const EventContext &ctx) override
Execute an algorithm.
virtual const DataObjIDColl & extraOutputDeps() const override
Return the list of extra output dependencies.
virtual unsigned int cardinality() const override
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentra...
Header file for AthHistogramAlgorithm.