ATLAS Offline Software
Loading...
Searching...
No Matches
CollectionGetterToolImpl.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-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id$
14
15
16#ifndef D3PDMAKERUTILS_COLLECTIONGETTERTOOLIMPL_H
17#define D3PDMAKERUTILS_COLLECTIONGETTERTOOLIMPL_H
18
19
25#include "GaudiKernel/ToolHandle.h"
26
27
28namespace D3PD {
29
30
31
41 : public extends<ObjGetterToolImpl, ICollectionGetterTool>
42{
43public:
50 CollectionGetterToolImpl (const std::string& type,
51 const std::string& name,
52 const IInterface* parent);
53
54
56 StatusCode initialize();
57
58
67 const void* nextTypeinfo (const std::type_info& ti);
68
69
78 StatusCode configureElementTypeinfo (const std::type_info& ti);
79
80
91 void releaseElementTypeinfo (const void* p,
92 const std::type_info& ti);
93
94
95private:
97 std::string m_label;
98
100 ToolHandle<ICollectionGetterRegistryTool> m_registry;
101
104
107};
108
109
110} // namespace D3PD
111
112
113#endif // not D3PDMAKERUTILS_COLLECTIONGETTERTOOLIMPL_H
Abstract interface to keep a registry of collection getter tools.
Abstract interface to get a collection of objects and iterate over it.
Non-template parts of ObjGetterTool.
Helper to convert pointers.
const void * nextTypeinfo(const std::type_info &ti)
Return the next object cast to a different pointer type.
TypeConverter m_converter
Helper to convert pointers.
StatusCode initialize()
Standard Gaudi initialize method.
std::string m_label
Property: label to assign to this getter (or null).
void releaseElementTypeinfo(const void *p, const std::type_info &ti)
Release an element retrieved from the getter.
StatusCode configureElementTypeinfo(const std::type_info &ti)
Test type compatibility.
ToolHandle< ICollectionGetterRegistryTool > m_registry
The collection getter registry tool.
TypeConverter m_backConverter
Helper to convert pointers back, for releaseElement.
CollectionGetterToolImpl(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
This is helper for converting between pointers of different types, given dynamically by std::type_inf...
Block filler tool for noisy FEB information.