ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Columnar
ColumnarTestFixtures
ColumnarTestFixtures
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
8
#ifndef COLUMNAR_TEST_FIXTURES_CONFIGURATION_H
9
#define COLUMNAR_TEST_FIXTURES_CONFIGURATION_H
10
11
#include <chrono>
12
#include <string>
13
#include <vector>
14
#include <utility>
15
16
namespace
asg
17
{
18
class
AsgTool
;
19
}
20
21
namespace
columnar
22
{
23
namespace
TestUtils
24
{
31
32
struct
UserConfiguration
final
33
{
34
// the target time to run a given tool
35
std::chrono::seconds
targetTime
= std::chrono::seconds(5);
36
37
// the number of events per batch in columnar mode
38
unsigned
int
batchSize
= 1000;
39
40
// whether to run the tool a second time to get a "warm" cache measurement
41
bool
runToolTwice
=
false
;
42
43
// whether to skip all shallow copies in xAOD array mode
44
bool
skipShallowCopies
=
false
;
45
47
bool
measureNonAccessForEmpty
=
false
;
48
50
bool
isrntuple
=
false
;
51
56
void
loadFromFile
(
const
std::string& filename);
57
63
static
UserConfiguration
fromEnvironment
();
64
};
65
66
67
68
class
IXAODToolCaller
;
69
71
struct
TestDefinition
final
72
{
74
asg::AsgTool
*
tool
=
nullptr
;
75
77
std::string
name
= {};
78
80
IXAODToolCaller
*
xAODToolCaller
=
nullptr
;
81
83
std::vector<std::pair<std::string,std::string>>
containerRenames
= {};
84
86
std::string
sysName
= {};
87
89
std::vector<std::string>
metTermNames
= {};
90
92
bool
noRepeatCall
=
false
;
93
};
94
}
95
}
96
97
#endif
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
columnar::TestUtils::IXAODToolCaller
a wrapper around a CP tool in xAOD mdoe to call it in the PHYSLITE test
Definition
IXAODToolCaller.h:32
asg
Definition
DataHandleTestTool.h:28
columnar::TestUtils
Definition
Benchmark.h:20
columnar
Definition
ClusterDef.h:16
columnar::TestUtils::TestDefinition
the general configuration for a single test
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:72
columnar::TestUtils::TestDefinition::sysName
std::string sysName
the systematic variation to apply (empty for nominal)
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:86
columnar::TestUtils::TestDefinition::xAODToolCaller
IXAODToolCaller * xAODToolCaller
the callback for calling the tool in xAOD mode
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:80
columnar::TestUtils::TestDefinition::metTermNames
std::vector< std::string > metTermNames
the MET output term names (if empty, MET output columns are omitted)
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:89
columnar::TestUtils::TestDefinition::name
std::string name
the name identifier for the test
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:77
columnar::TestUtils::TestDefinition::noRepeatCall
bool noRepeatCall
skip the repeat call even when runToolTwice is enabled
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:92
columnar::TestUtils::TestDefinition::containerRenames
std::vector< std::pair< std::string, std::string > > containerRenames
the container name remappings to apply
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:83
columnar::TestUtils::TestDefinition::tool
asg::AsgTool * tool
the tool being tested
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:74
columnar::TestUtils::UserConfiguration
a struct holding user configuration for the PHYSLITE tests
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:33
columnar::TestUtils::UserConfiguration::loadFromFile
void loadFromFile(const std::string &filename)
load configuration overrides from a JSON file
Definition
Configuration.cxx:20
columnar::TestUtils::UserConfiguration::targetTime
std::chrono::seconds targetTime
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:35
columnar::TestUtils::UserConfiguration::batchSize
unsigned int batchSize
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:38
columnar::TestUtils::UserConfiguration::fromEnvironment
static UserConfiguration fromEnvironment()
create a UserConfiguration, loading from the file pointed to by the COLUMNAR_TEST_CONFIG environment ...
Definition
Configuration.cxx:42
columnar::TestUtils::UserConfiguration::skipShallowCopies
bool skipShallowCopies
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:44
columnar::TestUtils::UserConfiguration::runToolTwice
bool runToolTwice
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:41
columnar::TestUtils::UserConfiguration::measureNonAccessForEmpty
bool measureNonAccessForEmpty
whether to measure non-retrieval for empty containers
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:47
columnar::TestUtils::UserConfiguration::isrntuple
bool isrntuple
whether to use rntuple file as input
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:50
Generated on
for ATLAS Offline Software by
1.17.0