ATLAS Offline Software
HLTResultReader.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
13 #include "HLTResultReader.h"
28 
29 
36 HLT_END_TYPE_REGISTRATION(DataModelTest)
37 
38 
40 {
41  typedef TypeInfo_DataModelTest map;
42  static const std::string package_name;
43 };
44 
45 struct TypeInfo_EDM {
46  typedef HLT::TypeInformation::newlist
47  ::add<class_DataModelTest> ::go
48  ::done map;
49 };
50 
51 
53 
54 
55 namespace DMTest {
56 
57 
64  ISvcLocator *pSvcLocator)
65  : AthAlgorithm (name, pSvcLocator),
66  m_nav ("TestNav", this)
67 {
68  declareProperty ("ResultKey", m_resultKey = "HLTResult_HLT");
69  declareProperty ("Nav", m_nav);
70 }
71 
72 
77 {
78  ATH_CHECK( m_resultKey.initialize() );
79  ATH_CHECK( m_nav.retrieve() );
80  HLT::TypeMaps::registerFeatureContainer<DMTest::CVec,DMTest::CVec>();
81  HLT::TypeMaps::registerFeatureContainer<DMTest::CView,DMTest::CView>();
82  HLT::TypeMaps::registerType<DMTest::CAuxContainer>();
83  HLT::TypeMaps::registerFeatureContainer<DMTest::PVec,DMTest::PVec>();
84  HLT::TypeMaps::registerType<DMTest::PAuxContainer>();
85  HLT::TypeMaps::registerFeatureContainer<DMTest::HVec,DMTest::HVec>();
86  HLT::TypeMaps::registerFeatureContainer<DMTest::HView,DMTest::HView>();
87  HLT::TypeMaps::registerType<DMTest::HAuxContainer>();
88  return StatusCode::SUCCESS;
89 }
90 
91 
96 {
98  m_nav->prepare();
99  if (!m_nav->deserialize (result->getNavigationResult()))
100  return StatusCode::FAILURE;
101  m_nav->reset();
102 
103  return StatusCode::SUCCESS;
104 }
105 
106 
111 {
112  return StatusCode::SUCCESS;
113 }
114 
115 
116 } // namespace DMTest
117 
DMTest::HLTResultReader::execute
virtual StatusCode execute() override
Algorithm event processing.
Definition: HLTResultReader.cxx:95
class_DataModelTest::package_name
static const std::string package_name
Definition: HLTResultReader.cxx:42
DMTest::CAuxContainer_v1
Definition: CAuxContainer_v1.h:27
DMTest::HLTResultReader::finalize
virtual StatusCode finalize() override
Algorithm finalization; called at the end of the job.
Definition: HLTResultReader.cxx:110
get_generator_info.result
result
Definition: get_generator_info.py:21
DMTest::HLTResultReader::m_nav
ToolHandle< HLT::Navigation > m_nav
Navigation object use to fill the result.
Definition: HLTResultReader.h:72
DMTest::P_v1
Class used for testing xAOD data reading/writing with packed containers.
Definition: P_v1.h:29
DMTest::HAuxContainer_v2
Definition: HAuxContainer_v2.h:28
PVec.h
Class used for testing xAOD data reading/writing with packed containers.
H.h
Test for xAOD schema evolution.
SG::ReadHandle
Definition: StoreGate/StoreGate/ReadHandle.h:70
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
initialize
void initialize()
Definition: run_EoverP.cxx:894
TypeInfo_EDM::map
HLT::TypeInformation::newlist ::add< class_DataModelTest >::go ::done map
Definition: HLTResultReader.cxx:48
DMTest::HLTResultReader::m_resultKey
SG::ReadHandleKey< HLT::HLTResult > m_resultKey
Handle to read the HLTResult object.
Definition: HLTResultReader.h:69
Holder.icc
CAuxContainer.h
Class used for testing xAOD data reading/writing.
DMTest::ATLAS_NOT_THREAD_SAFE
void setPluginLibrary ATLAS_NOT_THREAD_SAFE(const std::string &name, const std::string &lib)
Definition: setConverterLibrary.cxx:23
DMTest::C_v1
Definition: C_v1.h:27
PAuxContainer.h
Class used for testing xAOD data reading/writing with packed containers.
HLTResult.h
P.h
Class used for testing xAOD data reading/writing with packed containers.
HVec.h
CVec.h
Class used for testing xAOD data reading/writing.
DMTest::HLTResultReader::HLTResultReader
HLTResultReader(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition: HLTResultReader.cxx:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
C.h
Class used for testing xAOD data reading/writing.
ViewVector
Identify view containers to be made persistent.
Definition: ViewVector.h:67
class_DataModelTest::map
TypeInfo_DataModelTest map
Definition: HLTResultReader.cxx:41
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
Navigation.h
HLT_END_TYPE_REGISTRATION
#define HLT_END_TYPE_REGISTRATION(name)
Definition: EDM_TypeInformation.h:36
DMTest::PAuxContainer_v1
Class used for testing xAOD data reading/writing with packed containers.
Definition: PAuxContainer_v1.h:31
class_DataModelTest
Definition: HLTResultReader.cxx:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
AthAlgorithm
Definition: AthAlgorithm.h:47
HAuxContainer.h
Test for xAOD schema evolution.
CView.h
Class used for testing ViewVector reading/writing.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
HLTNavDetails::HolderImp
This is an implementation class for all Holders It is templated with 2 arguments STORED which is type...
Definition: Holder.h:281
HLT_REGISTER_TYPE
#define HLT_REGISTER_TYPE(...)
Definition: EDM_TypeInformation.h:34
HLTResultReader.h
Test for serializing an xAOD object from bytestream.
HView.h
TypeInfo_EDM
Definition: HLTResultReader.cxx:45
HLT_BEGIN_TYPE_REGISTRATION
#define HLT_BEGIN_TYPE_REGISTRATION
Definition: EDM_TypeInformation.h:13
DMTest
Definition: B.h:23
DMTest::H_v2
Definition: H_v2.h:30