ATLAS Offline Software
HiveTool.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 "HiveTool.h"
6 
7 #include "StoreGate/ReadHandle.h"
9 
10 #include <memory>
11 
12 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13 
14 HiveTool::HiveTool(const std::string& type, const std::string& name,
15  const IInterface* parent)
16  : base_class( type, name, parent )
17 {}
18 
19 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
20 
22 }
23 
26  ATH_MSG_INFO("initialize");
27 
28  if (m_rdh1.key() != "") {
30  ATH_MSG_INFO("read key: " << m_rdh1.key());
31  } else {
32  ATH_MSG_INFO("RH key is blank. not initializing");
33  }
34 
35  if (m_wrh1.key() != "") {
37  ATH_MSG_INFO("write key: " << m_wrh1.key());
38  } else {
39  ATH_MSG_INFO("WH key is blank. not initializing");
40  }
41 
42  return StatusCode::SUCCESS;
43 }
44 
47  ATH_MSG_INFO("finalize");
48 
49  return StatusCode::SUCCESS;
50 }
51 
53  ATH_MSG_INFO ("doSomething()");
54 
55  int val = 0;
56 
57  if (m_rdh1.key() == "") {
58  ATH_MSG_INFO("RH not valid - not retrieving");
59  } else {
61  ATH_MSG_INFO(" read: " << rh.key() << " = " << rh->val() );
62  val = rh->val();
63  }
64 
65  if (m_wrh1.key() == "") {
66  ATH_MSG_INFO("WH not valid - not writing");
67  } else {
69  ATH_CHECK(wrh1.record(std::make_unique< HiveDataObj >(val + 666)));
70 
71  ATH_MSG_INFO(" write: " << wrh1.key() << " = " << wrh1->val() );
72  }
73 
74  return StatusCode::SUCCESS;
75 }
HiveTool.h
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
SG::ReadHandle
Definition: StoreGate/StoreGate/ReadHandle.h:70
HiveTool::m_wrh1
SG::WriteHandleKey< HiveDataObj > m_wrh1
Definition: HiveTool.h:29
HiveTool::~HiveTool
virtual ~HiveTool()
Definition: HiveTool.cxx:21
SG::VarHandleKey::key
const std::string & key() const
Return the StoreGate ID for the referenced object.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:141
WriteHandle.h
Handle class for recording to StoreGate.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
HiveTool::m_rdh1
SG::ReadHandleKey< HiveDataObj > m_rdh1
Definition: HiveTool.h:28
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
HiveTool::finalize
virtual StatusCode finalize()
Definition: HiveTool.cxx:46
SG::VarHandleKey::initialize
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:103
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
HiveTool::HiveTool
HiveTool(const std::string &, const std::string &, const IInterface *)
Definition: HiveTool.cxx:14
HiveTool::doSomething
virtual StatusCode doSomething() const
Definition: HiveTool.cxx:52
SG::VarHandleBase::key
virtual const std::string & key() const override final
Return the StoreGate ID for the referenced object.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleBase.cxx:64
SG::WriteHandle
Definition: StoreGate/StoreGate/WriteHandle.h:76
SG::WriteHandle::record
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
HiveTool::initialize
virtual StatusCode initialize()
Definition: HiveTool.cxx:25
HiveDataObj::val
void val(int i)
Definition: HiveDataObj.h:22
ReadHandle.h
Handle class for reading from StoreGate.