ATLAS Offline Software
Loading...
Searching...
No Matches
AddVariable.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-2022 CERN for the benefit of the ATLAS collaboration
5*/
6
13
14#ifndef D3PDMAKERUTILS_ADDVARIABLE_H
15#define D3PDMAKERUTILS_ADDVARIABLE_H
16
17
19#include "ObjectMetadata.h"
20
21
22namespace D3PD {
23
24
37 : public IAddVariable
38{
39private:
41 static const std::string s_emptyString;
42
43
44public:
50 AddVariable (const std::string& prefix,
51 const std::string& blockName = s_emptyString);
52
53
60 AddVariable (const std::string& prefix,
61 const std::string& blockName,
62 const std::string& suffix);
63
64
69 StatusCode configureD3PD (IAddVariable* tree);
70
71
75
76
93 virtual StatusCode addVariable (const std::string& name,
94 const std::type_info& ti,
95 void* & ptr,
96 const std::string& docstring = "",
97 const void* defval = 0);
98
99
118 virtual StatusCode
119 addDimensionedVariable (const std::string& name,
120 const std::type_info& ti,
121 void* & ptr,
122 const std::string& dim,
123 const std::string& docstring = "",
124 const void* defval = 0);
125
126
127protected:
130
131
132private:
134 const std::string& m_prefix;
135
137 const std::string& m_suffix;
138
140 //const std::string& m_blockName;
141
144};
145
146
147} // namespace D3PD
148
149
150#endif // not D3PDMAKERUTILS_ADDVARIABLE_H
Common interface for adding a variable to a tuple.
static const std::string s_emptyString
Used to provide a default value for blockName.
Definition AddVariable.h:41
virtual StatusCode addVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &docstring="", const void *defval=0)
Add a variable to the tuple.
StatusCode configureD3PD(IAddVariable *tree)
Configure the parent tree.
AddVariable(const std::string &prefix, const std::string &blockName=s_emptyString)
Constructor.
ObjectMetadata m_metadata
Metadata about the variables created by this object.
const std::string & m_prefix
Reference to the variable prefix.
const std::string & m_suffix
Reference to the variable suffix.
IAddVariable * m_tree
Reference to the block name.
virtual StatusCode addDimensionedVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &dim, const std::string &docstring="", const void *defval=0)
Add a variable to the tuple.
Common interface for adding a variable to a tuple.
StatusCode addVariable(const std::string &name, T *&ptr, const std::string &docstring="")
Add a variable to the tuple.
StatusCode addDimensionedVariable(const std::string &name, T *&ptr, const std::string &dim, const std::string &docstring="")
Add a variable to the tuple.
D3PD variable metadata handling class.
Block filler tool for noisy FEB information.
TChain * tree