ATLAS Offline Software
Loading...
Searching...
No Matches
MultiAssociationToolImpl.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_MULTIASSOCIATIONTOOLIMPL_H
17#define D3PDMAKERUTILS_MULTIASSOCIATIONTOOLIMPL_H
18
19
24
25
26namespace D3PD {
27
28
44 : public extends<AthAlgTool, IMultiAssociationTool>,
45 public AddVariable
46{
47public:
54 MultiAssociationToolImpl (const std::string& type,
55 const std::string& name,
56 const IInterface* parent);
57
58
68 virtual StatusCode configureD3PD (IAddVariable* tree,
69 const std::type_info& ti);
70
71
78 virtual StatusCode book();
79
80
84 virtual const std::type_info& fromTypeinfo() const = 0;
85
86
87
88protected:
95 const void* doConversion (const void* p);
96
97
112 const std::type_info& ti,
113 const std::vector<const std::type_info*>& tis,
114 size_t& which);
115
116
117private:
119 std::string m_prefix;
120
122 std::string m_blockName;
123
126};
127
128
129} // namespace D3PD
130
131
132#endif // not D3PDMAKERUTILS_MULTIASSOCIATIONTOOLIMPL_H
Common implementation of IAddVariable.
Abstract interface to form a multi-way association.
Helper to convert pointers.
AddVariable(const std::string &prefix, const std::string &blockName=s_emptyString)
Constructor.
Common interface for adding a variable to a tuple.
const void * doConversion(const void *p)
Helper to convert pointers to source objects.
TypeConverter m_inputConverter
Helper to convert source object pointers.
virtual StatusCode configureD3PD(IAddVariable *tree, const std::type_info &ti)
Configure during initialization: type-check.
virtual StatusCode book()
Create any needed tuple variables.
StatusCode configureMulti(D3PD::IAddVariable *tree, const std::type_info &ti, const std::vector< const std::type_info * > &tis, size_t &which)
Configure during initialization: type-check.
std::string m_prefix
Parameter: source object prefix.
std::string m_blockName
Property: the name of this block.
virtual const std::type_info & fromTypeinfo() const =0
Return the std::type_info for the source of the association.
MultiAssociationToolImpl(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.
TChain * tree