ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDMaker
D3PDMakerCoreComps
src
IndexMultiAssociationFillerTool.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: IndexMultiAssociationFillerTool.h 618070 2014-09-22 19:05:34Z ssnyder $
14
15
16
#ifndef D3PDMAKERCORECOMPS_INDEXMULTIASSOCIATIONFILLERTOOL_H
17
#define D3PDMAKERCORECOMPS_INDEXMULTIASSOCIATIONFILLERTOOL_H
18
19
20
#include "
D3PDMakerInterfaces/IBlockFillerTool.h
"
21
#include "
D3PDMakerInterfaces/IMultiAssociationTool.h
"
22
#include "
D3PDMakerInterfaces/ICollectionGetterRegistryTool.h
"
23
#include "
D3PDMakerUtils/AddVariable.h
"
24
#include "
D3PDMakerUtils/TypeConverter.h
"
25
#include "
D3PDMakerUtils/IndexMap.h
"
26
#include "
AthenaBaseComps/AthAlgTool.h
"
27
#include "GaudiKernel/ToolHandle.h"
28
#include <vector>
29
30
31
namespace
D3PD
{
32
33
34
class
ICollectionRegistryTool;
35
36
63
class
IndexMultiAssociationFillerTool
64
:
public
extends<AthAlgTool, IBlockFillerTool>,
public
AddVariable
65
{
66
public
:
73
IndexMultiAssociationFillerTool
(
const
std::string& type,
74
const
std::string& name,
75
const
IInterface* parent);
76
77
79
virtual
StatusCode
initialize
()
override
;
80
81
90
virtual
StatusCode
configureD3PD
(IAddVariable*
tree
,
91
const
std::type_info& ti)
override
;
92
93
99
virtual
StatusCode
book
()
override
;
100
101
128
virtual
StatusCode
fillUntyped (
const
void
* p,
129
bool
again
=
false
)
override
;
130
131
132
private
:
134
ToolHandle<IMultiAssociationTool> m_associator;
135
138
std::string
m_targetLabel
;
139
141
std::string
m_prefix
;
142
144
std::string
m_blockName
;
145
147
ToolHandle<ICollectionGetterRegistryTool>
m_registry
;
148
151
bool
m_allowMissing
;
152
154
std::vector<int>*
m_index
;
155
158
TypeConverter
m_converter
;
159
161
IndexMap
m_map
;
162
};
163
164
165
}
// namespace D3PD
166
167
168
#endif
// not D3PDMAKERCORECOMPS_INDEXMULTIASSOCIATIONFILLERTOOL_H
169
AddVariable.h
Common implementation of IAddVariable.
AthAlgTool.h
IBlockFillerTool.h
Abstract interface for tool to fill a block in the D3PD.
ICollectionGetterRegistryTool.h
Abstract interface to keep a registry of collection getter tools.
IMultiAssociationTool.h
Abstract interface to form a multi-way association.
IndexMap.h
Cache pointer -> index mappings for a Getter used for index assocs.
TypeConverter.h
Helper to convert pointers.
D3PD::AddVariable
Common implementation of IAddVariable.
Definition
AddVariable.h:38
D3PD
Block filler tool for noisy FEB information.
Definition
CaloCellDetailsFillerTool.cxx:29
D3PD::configureD3PD
virtual StatusCode configureD3PD(IAddVariable *tree, const std::type_info &ti)
Configure during initialization: type-check.
D3PD::m_registry
ToolHandle< ICollectionGetterRegistryTool > m_registry
Property: The ICollectionGetterRegistryTool instance.
Definition
IndexAssociationFillerTool.h:145
D3PD::IndexMultiAssociationFillerTool
IndexMultiAssociationFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Represent a multiple association by index.
Definition
IndexMultiAssociationFillerTool.cxx:29
D3PD::m_allowMissing
bool m_allowMissing
Property: Don't give an error if the target getter fails to find the input objects.
Definition
IndexAssociationFillerTool.h:149
D3PD::m_map
IndexMap m_map
Map from objects to indices.
Definition
IndexAssociationFillerTool.h:159
D3PD::book
virtual StatusCode book()
Declare tuple variables.
D3PD::m_converter
TypeConverter m_converter
Helper to convert from pointer returned by the associator to pointer into the index container.
Definition
IndexAssociationFillerTool.h:156
D3PD::m_prefix
std::string m_prefix
Property: The variable name prefix.
Definition
IndexAssociationFillerTool.h:139
D3PD::m_blockName
std::string m_blockName
Property: the name of this block.
Definition
IndexAssociationFillerTool.h:142
D3PD::m_index
int * m_index
Index variable.
Definition
IndexAssociationFillerTool.h:152
D3PD::initialize
virtual StatusCode initialize()
Standard Gaudi initialize method.
D3PD::m_targetLabel
std::string m_targetLabel
Fill one block.
Definition
IndexAssociationFillerTool.h:136
D3PD::again
bool again
Definition
VoidBlockFillerTool.cxx:79
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
tree
TChain * tree
Definition
tile_monitor.h:30
Generated on
for ATLAS Offline Software by
1.17.0