ATLAS Offline Software
Loading...
Searching...
No Matches
ObjGetterTool.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_OBJGETTERTOOL_H
17#define D3PDMAKERUTILS_OBJGETTERTOOL_H
18
19
21
22
23namespace D3PD {
24
25
33template <class T>
35 : public ObjGetterToolImpl
36{
37public:
44 ObjGetterTool (const std::string& type,
45 const std::string& name,
46 const IInterface* parent);
47
48
57 virtual const void* getUntyped (bool allowMissing = false);
58
59
63 virtual const std::type_info& typeinfo() const;
64
65
73 virtual const T* get (bool allowMissing = false) = 0;
74
75
85 virtual void releaseObject (const T* p);
86
87
97 virtual void releaseObjectUntyped (const void* p);
98};
99
100
101} // namespace D3PD
102
103
105
106
107#endif // not D3PDMAKERUTILS_OBJGETTERTOOL_H
Non-template parts of ObjGetterTool.
ObjGetterToolImpl(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
ObjGetterTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
virtual void releaseObject(const T *p)
Release an object retrieved from the getter.
virtual const std::type_info & typeinfo() const
Return the type of object retrieved by this tool.
virtual const void * getUntyped(bool allowMissing=false)
Return the target object.
virtual void releaseObjectUntyped(const void *p)
Release an object retrieved from the getter.
virtual const T * get(bool allowMissing=false)=0
Return the target object.
Block filler tool for noisy FEB information.