ATLAS Offline Software
Loading...
Searching...
No Matches
HiveAlgL2.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#include "HiveAlgL2.h"
6#include "GaudiKernel/ServiceHandle.h"
7#include <thread>
8#include <chrono>
9#include <memory>
10
11HiveAlgL2::HiveAlgL2( const std::string& name,
12 ISvcLocator* pSvcLocator ) :
13 ::HiveAlgBase( name, pSvcLocator )
14 ,m_udh1("l1")
15{
16
17 declareProperty("Key_U1",m_udh1);
18
19}
20
22
24 ATH_MSG_DEBUG("initialize " << name());
25
26 ATH_CHECK( m_rdh1.initialize() );
27 ATH_CHECK( m_udh1.initialize() );
28
30}
31
32StatusCode HiveAlgL2::finalize() {
33 ATH_MSG_DEBUG("finalize " << name());
34 return StatusCode::SUCCESS;
35}
36
37StatusCode HiveAlgL2::execute() {
38
39 ATH_MSG_DEBUG("execute " << name());
40
41 sleep();
42
44 if (!rdh1.isValid()) {
45 ATH_MSG_ERROR ("Could not retrieve HiveDataObj with key " << rdh1.key());
46 return StatusCode::FAILURE;
47 }
48
49 ATH_MSG_INFO(" read: " << rdh1.key() << " = " << rdh1->val() );
50
52
53 udh1->val( udh1->val() + 1);
54
55 // wrh1 = std::make_unique< HiveDataObj >( HiveDataObj(rdh1->val()+1) );
56
57 ATH_MSG_INFO(" update: " << udh1.key() << " = " << udh1->val() );
58
59 return StatusCode::SUCCESS;
60
61}
62
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_ERROR(x)
#define ATH_MSG_INFO(x)
#define ATH_MSG_DEBUG(x)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
unsigned int sleep()
HiveAlgBase(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode initialize() override
HiveAlgL2(const std::string &name, ISvcLocator *pSvcLocator)
Definition HiveAlgL2.cxx:11
StatusCode finalize()
Definition HiveAlgL2.cxx:32
SG::UpdateHandleKey< HiveDataObj > m_udh1
Definition HiveAlgL2.h:35
SG::ReadHandleKey< HiveDataObj > m_rdh1
Definition HiveAlgL2.h:33
StatusCode initialize()
Definition HiveAlgL2.cxx:23
StatusCode execute()
Definition HiveAlgL2.cxx:37
virtual bool isValid() override final
Can the handle be successfully dereferenced?
virtual const std::string & key() const override final
Return the StoreGate ID for the referenced object.