ATLAS Offline Software
sTgcMeasViewAlg.cxx
Go to the documentation of this file.
1 
2 /*
3  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4 */
5 
6 
7 #include "sTgcMeasViewAlg.h"
8 
11 namespace MuonR4{
12 
14  ATH_CHECK(m_readKeyStrip.initialize());
15  ATH_CHECK(m_readKeyWire.initialize());
16  ATH_CHECK(m_readKeyPad.initialize());
17  ATH_CHECK(m_writeKey.initialize());
18  return StatusCode::SUCCESS;
19  }
20 
21  StatusCode sTgcMeasViewAlg::execute(const EventContext& ctx) const {
22  const xAOD::sTgcStripContainer* strips{nullptr};
23  const xAOD::sTgcWireContainer* wires{nullptr};
24  const xAOD::sTgcPadContainer* pads{nullptr};
25  ATH_CHECK(SG::get(strips, m_readKeyStrip, ctx));
26  ATH_CHECK(SG::get(wires, m_readKeyWire, ctx));
27  ATH_CHECK(SG::get(pads, m_readKeyPad, ctx));
28 
30  if (strips) {
31  outContainer.insert(outContainer.end(), strips->begin(), strips->end());
32  }
33  if (wires) {
34  outContainer.insert(outContainer.end(),wires->begin(), wires->end());
35  }
36  if (pads){
37  outContainer.insert(outContainer.end(), pads->begin(), pads->end());
38  }
39  std::sort(outContainer.begin(), outContainer.end(),
41  return a->identifier() < b->identifier();
42  });
43 
45  ATH_CHECK(writeHandle.record(std::make_unique<xAOD::sTgcMeasContainer>(*outContainer.asDataVector())));
46  return StatusCode::SUCCESS;
47  }
48 
49 }
MuonR4::sTgcMeasViewAlg::m_readKeyStrip
SG::ReadHandleKey< xAOD::sTgcStripContainer > m_readKeyStrip
Definition: sTgcMeasViewAlg.h:35
SG::VIEW_ELEMENTS
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
Definition: OwnershipPolicy.h:18
ConstDataVector.h
DataVector adapter that acts like it holds const pointers.
MuonR4::sTgcMeasViewAlg::m_writeKey
SG::WriteHandleKey< xAOD::sTgcMeasContainer > m_writeKey
Definition: sTgcMeasViewAlg.h:44
MuonR4::sTgcMeasViewAlg::m_readKeyWire
SG::ReadHandleKey< xAOD::sTgcWireContainer > m_readKeyWire
Definition: sTgcMeasViewAlg.h:38
MuonR4::sTgcMeasViewAlg::m_readKeyPad
SG::ReadHandleKey< xAOD::sTgcPadContainer > m_readKeyPad
Definition: sTgcMeasViewAlg.h:41
WriteHandle.h
Handle class for recording to StoreGate.
SG::get
const T * get(const ReadCondHandleKey< T > &key, const EventContext &ctx)
Convenience function to retrieve an object given a ReadCondHandleKey.
Definition: ReadCondHandle.h:287
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:76
MuonR4::sTgcMeasViewAlg::initialize
StatusCode initialize() override
Definition: sTgcMeasViewAlg.cxx:13
MuonR4
This header ties the generic definitions in this package.
Definition: HoughEventData.h:16
SG::WriteHandle
Definition: StoreGate/StoreGate/WriteHandle.h:73
a
TList * a
Definition: liststreamerinfos.cxx:10
MuonR4::sTgcMeasViewAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition: sTgcMeasViewAlg.cxx:21
ConstDataVector
DataVector adapter that acts like it holds const pointers.
Definition: ConstDataVector.h:76
sTgcMeasViewAlg.h
xAOD::sTgcMeasurement_v1
Definition: sTgcMeasurement_v1.h:21