ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDMaker
D3PDMakerUtils
D3PDMakerUtils
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
20
#include "
D3PDMakerUtils/AddVariable.h
"
21
#include "
D3PDMakerInterfaces/IMultiAssociationTool.h
"
22
#include "
D3PDMakerUtils/TypeConverter.h
"
23
#include "
AthenaBaseComps/AthAlgTool.h
"
24
25
26
namespace
D3PD
{
27
28
43
class
MultiAssociationToolImpl
44
:
public
extends<AthAlgTool, IMultiAssociationTool>,
45
public
AddVariable
46
{
47
public
:
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
88
protected
:
95
const
void
*
doConversion
(
const
void
* p);
96
97
111
StatusCode
configureMulti
(
D3PD::IAddVariable
*
tree
,
112
const
std::type_info& ti,
113
const
std::vector<const std::type_info*>& tis,
114
size_t
& which);
115
116
117
private
:
119
std::string
m_prefix
;
120
122
std::string
m_blockName
;
123
125
TypeConverter
m_inputConverter
;
126
};
127
128
129
}
// namespace D3PD
130
131
132
#endif
// not D3PDMAKERUTILS_MULTIASSOCIATIONTOOLIMPL_H
AddVariable.h
Common implementation of IAddVariable.
AthAlgTool.h
IMultiAssociationTool.h
Abstract interface to form a multi-way association.
TypeConverter.h
Helper to convert pointers.
D3PD::AddVariable::AddVariable
AddVariable(const std::string &prefix, const std::string &blockName=s_emptyString)
Constructor.
Definition
AddVariable.cxx:29
D3PD::IAddVariable
Common interface for adding a variable to a tuple.
Definition
IAddVariable.h:70
D3PD::MultiAssociationToolImpl::doConversion
const void * doConversion(const void *p)
Helper to convert pointers to source objects.
Definition
MultiAssociationToolImpl.cxx:104
D3PD::MultiAssociationToolImpl::m_inputConverter
TypeConverter m_inputConverter
Helper to convert source object pointers.
Definition
MultiAssociationToolImpl.h:125
D3PD::MultiAssociationToolImpl::configureD3PD
virtual StatusCode configureD3PD(IAddVariable *tree, const std::type_info &ti)
Configure during initialization: type-check.
Definition
MultiAssociationToolImpl.cxx:51
D3PD::MultiAssociationToolImpl::book
virtual StatusCode book()
Create any needed tuple variables.
Definition
MultiAssociationToolImpl.cxx:92
D3PD::MultiAssociationToolImpl::configureMulti
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.
Definition
MultiAssociationToolImpl.cxx:74
D3PD::MultiAssociationToolImpl::m_prefix
std::string m_prefix
Parameter: source object prefix.
Definition
MultiAssociationToolImpl.h:119
D3PD::MultiAssociationToolImpl::m_blockName
std::string m_blockName
Property: the name of this block.
Definition
MultiAssociationToolImpl.h:122
D3PD::MultiAssociationToolImpl::fromTypeinfo
virtual const std::type_info & fromTypeinfo() const =0
Return the std::type_info for the source of the association.
D3PD::MultiAssociationToolImpl::MultiAssociationToolImpl
MultiAssociationToolImpl(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
Definition
MultiAssociationToolImpl.cxx:28
D3PD::TypeConverter
This is helper for converting between pointers of different types, given dynamically by std::type_inf...
Definition
TypeConverter.h:45
D3PD
Block filler tool for noisy FEB information.
Definition
CaloCellDetailsFillerTool.cxx:29
type
tree
TChain * tree
Definition
tile_monitor.h:30
Generated on
for ATLAS Offline Software by
1.17.0