ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Columnar
ColumnarTestFixtures
ColumnarTestFixtures
ColumnarPhysliteTest.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__COLUMNAR_PHYS_LITE_TEST_H
9
#define COLUMNAR_TEST_FIXTURES__COLUMNAR_PHYS_LITE_TEST_H
10
11
#include <
AsgTools/AsgTool.h
>
12
#include <
ColumnarInterfaces/ColumnInfo.h
>
13
#include <
ColumnarInterfaces/IColumnarTool.h
>
14
#include <
ColumnarTestFixtures/Configuration.h
>
15
#include <
ColumnarTestFixtures/IXAODToolCaller.h
>
16
#include <ROOT/RNTupleDescriptor.hxx>
17
#include <ROOT/RNTupleInspector.hxx>
18
#include <ROOT/RNTupleReader.hxx>
19
#include <ROOT/RPageStorageFile.hxx>
20
#include <gtest/gtest.h>
21
22
#include <functional>
23
#include <span>
24
#include <string>
25
#include <vector>
26
27
class
TFile;
28
class
TTree;
29
30
namespace
columnar
31
{
32
class
ColumnVectorHeader
;
33
class
ToolColumnVectorMap
;
34
35
namespace
TestUtils
36
{
37
class
IColumnData
;
38
struct
RNTupleBackend
;
39
}
40
41
42
struct
ColumnarPhysLiteTest
: testing::Test
43
{
44
std::unique_ptr<TFile>
file
;
45
TTree *
tree
=
nullptr
;
46
std::unique_ptr<ROOT::RNTupleReader>
rntreader
;
47
std::unique_ptr<ROOT::Experimental::RNTupleInspector>
inspector
;
48
columnar::TestUtils::RNTupleBackend
*
rntbackend
=
nullptr
;
49
std::vector<std::shared_ptr<TestUtils::IColumnData>>
knownColumns
;
50
std::vector<std::shared_ptr<TestUtils::IColumnData>>
usedColumns
;
51
std::unordered_map<std::string,const std::vector<ColumnarOffsetType>*>
offsetColumns
;
52
53
ColumnarPhysLiteTest
();
54
~ColumnarPhysLiteTest
();
55
57
std::string
makeUniqueName
();
58
60
static
bool
checkMode
();
61
62
void
setupKnownColumns
(std::span<const TestUtils::TestDefinition> testDefinitions);
63
64
void
setupColumns
(
const
ColumnVectorHeader
& columnHeader);
65
66
void
doCall
(
const
TestUtils::TestDefinition
& testDefinition);
67
68
void
doCallMulti
(
const
std::vector<TestUtils::TestDefinition>& testDefinitions);
69
};
70
}
71
72
#endif
AsgTool.h
ColumnInfo.h
IColumnarTool.h
IXAODToolCaller.h
Configuration.h
columnar::ColumnVectorHeader
the header information for the entire columnar data vector
Definition
ColumnVectorWrapper.h:125
columnar::TestUtils::IColumnData
Definition
ColumnarPhysliteTest.cxx:657
columnar::ToolColumnVectorMap
a class that interfaces an IColumnarTool to a ColumnVectorHeader
Definition
ToolColumnVectorMap.h:30
columnar::TestUtils
Definition
Benchmark.h:20
columnar
Definition
ClusterDef.h:16
columnar::ColumnarPhysLiteTest::rntbackend
columnar::TestUtils::RNTupleBackend * rntbackend
Definition
ColumnarPhysliteTest.h:48
columnar::ColumnarPhysLiteTest::knownColumns
std::vector< std::shared_ptr< TestUtils::IColumnData > > knownColumns
Definition
ColumnarPhysliteTest.h:49
columnar::ColumnarPhysLiteTest::usedColumns
std::vector< std::shared_ptr< TestUtils::IColumnData > > usedColumns
Definition
ColumnarPhysliteTest.h:50
columnar::ColumnarPhysLiteTest::inspector
std::unique_ptr< ROOT::Experimental::RNTupleInspector > inspector
Definition
ColumnarPhysliteTest.h:47
columnar::ColumnarPhysLiteTest::makeUniqueName
std::string makeUniqueName()
make a unique tool name to be used in unit tests
Definition
ColumnarPhysliteTest.cxx:2189
columnar::ColumnarPhysLiteTest::offsetColumns
std::unordered_map< std::string, const std::vector< ColumnarOffsetType > * > offsetColumns
Definition
ColumnarPhysliteTest.h:51
columnar::ColumnarPhysLiteTest::tree
TTree * tree
Definition
ColumnarPhysliteTest.h:45
columnar::ColumnarPhysLiteTest::ColumnarPhysLiteTest
ColumnarPhysLiteTest()
Definition
ColumnarPhysliteTest.cxx:2146
columnar::ColumnarPhysLiteTest::setupKnownColumns
void setupKnownColumns(std::span< const TestUtils::TestDefinition > testDefinitions)
Definition
ColumnarPhysliteTest.cxx:2201
columnar::ColumnarPhysLiteTest::~ColumnarPhysLiteTest
~ColumnarPhysLiteTest()
Definition
ColumnarPhysliteTest.cxx:2183
columnar::ColumnarPhysLiteTest::doCall
void doCall(const TestUtils::TestDefinition &testDefinition)
Definition
ColumnarPhysliteTest.cxx:2629
columnar::ColumnarPhysLiteTest::setupColumns
void setupColumns(const ColumnVectorHeader &columnHeader)
Definition
ColumnarPhysliteTest.cxx:2521
columnar::ColumnarPhysLiteTest::file
std::unique_ptr< TFile > file
Definition
ColumnarPhysliteTest.h:44
columnar::ColumnarPhysLiteTest::rntreader
std::unique_ptr< ROOT::RNTupleReader > rntreader
Definition
ColumnarPhysliteTest.h:46
columnar::ColumnarPhysLiteTest::doCallMulti
void doCallMulti(const std::vector< TestUtils::TestDefinition > &testDefinitions)
Definition
ColumnarPhysliteTest.cxx:2635
columnar::ColumnarPhysLiteTest::checkMode
static bool checkMode()
check whether we have the right mode
Definition
ColumnarPhysliteTest.cxx:2196
columnar::TestUtils::RNTupleBackend
Definition
ColumnarPhysliteTest.cxx:79
columnar::TestUtils::TestDefinition
the general configuration for a single test
Definition
PhysicsAnalysis/Columnar/ColumnarTestFixtures/ColumnarTestFixtures/Configuration.h:72
Generated on
for ATLAS Offline Software by
1.17.0