ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDMaker
D3PDMakerCoreComps
src
CollectionGetterRegistryTool.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
3
/*
4
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5
*/
6
13
14
15
#ifndef D3PDMAKERCORECOMPS_COLLECTIONGETTERREGISTRYTOOL_H
16
#define D3PDMAKERCORECOMPS_COLLECTIONGETTERREGISTRYTOOL_H
17
18
19
#include "
D3PDMakerInterfaces/ICollectionGetterRegistryTool.h
"
20
#include "
AthenaBaseComps/AthAlgTool.h
"
21
#include "GaudiKernel/ToolHandle.h"
22
#include "GaudiKernel/ServiceHandle.h"
23
#include "Gaudi/Interfaces/IOptionsSvc.h"
24
25
#include <unordered_map>
26
27
28
class
IToolSvc;
29
30
31
namespace
D3PD
{
32
33
45
class
CollectionGetterRegistryTool
46
:
public
extends<AthAlgTool, ICollectionGetterRegistryTool>
47
{
48
public
:
55
CollectionGetterRegistryTool
(
const
std::string&
type
,
56
const
std::string& name,
57
const
IInterface* parent);
58
59
61
virtual
StatusCode
initialize
();
62
63
69
virtual
StatusCode
add
(
const
std::string&
label
,
70
ICollectionGetterTool
* tool);
71
72
81
virtual
StatusCode
get
(
const
std::string&
label
,
82
const
INamedInterface* parent,
83
ICollectionGetterTool
*& tool);
84
85
86
87
private
:
89
ServiceHandle<Gaudi::Interfaces::IOptionsSvc>
m_jos
;
90
92
ServiceHandle<IToolSvc>
m_toolsvc
;
93
95
typedef
std::unordered_map<std::string, D3PD::ICollectionGetterTool*>
map_t
;
96
map_t
m_collection_map
;
97
};
98
99
100
}
// namespace D3PD
101
102
103
104
#endif
// not D3PDMAKERCORECOMPS_COLLECTIONGETTERREGISTRYTOOL_H
AthAlgTool.h
ICollectionGetterRegistryTool.h
Abstract interface to keep a registry of collection getter tools.
D3PD::CollectionGetterRegistryTool::add
virtual StatusCode add(const std::string &label, ICollectionGetterTool *tool)
Register a new collection getter tool.
Definition
CollectionGetterRegistryTool.cxx:62
D3PD::CollectionGetterRegistryTool::map_t
std::unordered_map< std::string, D3PD::ICollectionGetterTool * > map_t
Map from getter labels to instances.
Definition
CollectionGetterRegistryTool.h:95
D3PD::CollectionGetterRegistryTool::m_jos
ServiceHandle< Gaudi::Interfaces::IOptionsSvc > m_jos
Property: The job options service.
Definition
CollectionGetterRegistryTool.h:89
D3PD::CollectionGetterRegistryTool::m_collection_map
map_t m_collection_map
Definition
CollectionGetterRegistryTool.h:96
D3PD::CollectionGetterRegistryTool::initialize
virtual StatusCode initialize()
Standard Gaudi initialize method.
Definition
CollectionGetterRegistryTool.cxx:48
D3PD::CollectionGetterRegistryTool::CollectionGetterRegistryTool
CollectionGetterRegistryTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
Definition
CollectionGetterRegistryTool.cxx:30
D3PD::CollectionGetterRegistryTool::get
virtual StatusCode get(const std::string &label, const INamedInterface *parent, ICollectionGetterTool *&tool)
Get a copy of a registered collection getter tool.
Definition
CollectionGetterRegistryTool.cxx:88
D3PD::CollectionGetterRegistryTool::m_toolsvc
ServiceHandle< IToolSvc > m_toolsvc
Property: The tool service.
Definition
CollectionGetterRegistryTool.h:92
D3PD::ICollectionGetterTool
Abstract interface to get a collection of objects and iterate over it.
Definition
ICollectionGetterTool.h:39
ServiceHandle
Definition
ClusterMakerTool.h:36
label
std::string label(const std::string &format, int i)
Definition
label.h:19
D3PD
Block filler tool for noisy FEB information.
Definition
CaloCellDetailsFillerTool.cxx:29
type
Generated on
for ATLAS Offline Software by
1.17.0