ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LumiBlock
LumiBlockComps
Root
LumiBlockMetaDataTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LUMIBLOCKCOMPS_LUMIBLOCKMETATOOL_H
6
#define LUMIBLOCKCOMPS_LUMIBLOCKMETATOOL_H
7
15
16
#include "GaudiKernel/ServiceHandle.h"
17
#include "
AthenaBaseComps/AthAlgTool.h
"
18
#include "
AthenaKernel/IMetaDataTool.h
"
19
20
#include "
xAODLuminosity/LumiBlockRangeContainer.h
"
21
#include "
xAODLuminosity/LumiBlockRangeAuxContainer.h
"
22
23
#include <vector>
24
#include <string>
25
26
class
StoreGateSvc
;
27
28
class
LumiBlockMetaDataTool
:
public
extends<AthAlgTool, IMetaDataTool> {
29
30
public
:
31
LumiBlockMetaDataTool
(
const
std::string&
type
32
,
const
std::string& name
33
,
const
IInterface* parent);
34
35
virtual
~LumiBlockMetaDataTool
();
36
37
public
:
38
virtual
StatusCode
initialize
()
override
;
39
41
virtual
StatusCode
beginInputFile
(
const
SG::SourceID
&)
override
;
42
44
virtual
StatusCode
endInputFile
(
const
SG::SourceID
&)
override
;
45
47
virtual
StatusCode
metaDataStop
()
override
;
48
49
private
:
51
StatusCode
finishUp
();
52
53
Gaudi::Property<std::string>
m_LBColl_name
{
this
,
"LBCollName"
,
"LumiBlocks"
};
54
Gaudi::Property<std::string>
m_unfinishedLBColl_name
{
this
,
"unfinishedLBCollName"
,
"IncompleteLumiBlocks"
};
55
Gaudi::Property<std::string>
m_suspectLBColl_name
{
this
,
"suspectLBCollName"
,
"SuspectLumiBlocks"
};
56
57
bool
m_fileCurrentlyOpened
{
false
};
58
std::string
m_CurrentFileName
{
"none"
};
59
60
ServiceHandle<StoreGateSvc>
m_pMetaDataStore
;
61
ServiceHandle<StoreGateSvc>
m_pInputStore
;
62
63
// The m_cacheInputRangeContainer stores the LumiBlockRange info for files that are open
64
// We need to keep suspect lumiblocks separated from complete and incomplete ones
65
// since something that comes in as suspect always stays suspect
66
xAOD::LumiBlockRangeContainer
m_cacheInputRangeContainer
;
67
xAOD::LumiBlockRangeAuxContainer
m_cacheInputRangeAuxContainer
;
68
xAOD::LumiBlockRangeContainer
m_cacheSuspectInputRangeContainer
;
69
xAOD::LumiBlockRangeAuxContainer
m_cacheSuspectInputRangeAuxContainer
;
70
71
// The m_cacheOutputRangeContainer stores the LumiBlockRange info for files that have been read and closed
72
xAOD::LumiBlockRangeContainer
m_cacheOutputRangeContainer
;
73
xAOD::LumiBlockRangeAuxContainer
m_cacheOutputRangeAuxContainer
;
74
xAOD::LumiBlockRangeContainer
m_cacheSuspectOutputRangeContainer
;
75
xAOD::LumiBlockRangeAuxContainer
m_cacheSuspectOutputRangeAuxContainer
;
76
77
};
78
79
80
#endif
AthAlgTool.h
IMetaDataTool.h
This file contains the class definition for the IMetaDataTool class.
LumiBlockRangeAuxContainer.h
LumiBlockRangeContainer.h
LumiBlockMetaDataTool::m_unfinishedLBColl_name
Gaudi::Property< std::string > m_unfinishedLBColl_name
Definition
LumiBlockMetaDataTool.h:54
LumiBlockMetaDataTool::m_CurrentFileName
std::string m_CurrentFileName
Definition
LumiBlockMetaDataTool.h:58
LumiBlockMetaDataTool::m_LBColl_name
Gaudi::Property< std::string > m_LBColl_name
Definition
LumiBlockMetaDataTool.h:53
LumiBlockMetaDataTool::metaDataStop
virtual StatusCode metaDataStop() override
Function writing the collected metadata to the output.
Definition
LumiBlockMetaDataTool.cxx:132
LumiBlockMetaDataTool::beginInputFile
virtual StatusCode beginInputFile(const SG::SourceID &) override
Function collecting the metadata from a new input file.
Definition
LumiBlockMetaDataTool.cxx:56
LumiBlockMetaDataTool::m_cacheOutputRangeAuxContainer
xAOD::LumiBlockRangeAuxContainer m_cacheOutputRangeAuxContainer
Definition
LumiBlockMetaDataTool.h:73
LumiBlockMetaDataTool::m_cacheSuspectInputRangeAuxContainer
xAOD::LumiBlockRangeAuxContainer m_cacheSuspectInputRangeAuxContainer
Definition
LumiBlockMetaDataTool.h:69
LumiBlockMetaDataTool::m_cacheSuspectOutputRangeContainer
xAOD::LumiBlockRangeContainer m_cacheSuspectOutputRangeContainer
Definition
LumiBlockMetaDataTool.h:74
LumiBlockMetaDataTool::finishUp
StatusCode finishUp()
Fill metaDataStore and ntuples.
Definition
LumiBlockMetaDataTool.cxx:153
LumiBlockMetaDataTool::endInputFile
virtual StatusCode endInputFile(const SG::SourceID &) override
Function collecting the metadata from a new input file.
Definition
LumiBlockMetaDataTool.cxx:115
LumiBlockMetaDataTool::m_pInputStore
ServiceHandle< StoreGateSvc > m_pInputStore
Definition
LumiBlockMetaDataTool.h:61
LumiBlockMetaDataTool::m_cacheOutputRangeContainer
xAOD::LumiBlockRangeContainer m_cacheOutputRangeContainer
Definition
LumiBlockMetaDataTool.h:72
LumiBlockMetaDataTool::m_cacheInputRangeContainer
xAOD::LumiBlockRangeContainer m_cacheInputRangeContainer
Definition
LumiBlockMetaDataTool.h:66
LumiBlockMetaDataTool::m_fileCurrentlyOpened
bool m_fileCurrentlyOpened
Definition
LumiBlockMetaDataTool.h:57
LumiBlockMetaDataTool::m_cacheInputRangeAuxContainer
xAOD::LumiBlockRangeAuxContainer m_cacheInputRangeAuxContainer
Definition
LumiBlockMetaDataTool.h:67
LumiBlockMetaDataTool::m_cacheSuspectOutputRangeAuxContainer
xAOD::LumiBlockRangeAuxContainer m_cacheSuspectOutputRangeAuxContainer
Definition
LumiBlockMetaDataTool.h:75
LumiBlockMetaDataTool::initialize
virtual StatusCode initialize() override
Definition
LumiBlockMetaDataTool.cxx:46
LumiBlockMetaDataTool::m_pMetaDataStore
ServiceHandle< StoreGateSvc > m_pMetaDataStore
Definition
LumiBlockMetaDataTool.h:60
LumiBlockMetaDataTool::~LumiBlockMetaDataTool
virtual ~LumiBlockMetaDataTool()
Definition
LumiBlockMetaDataTool.cxx:42
LumiBlockMetaDataTool::m_cacheSuspectInputRangeContainer
xAOD::LumiBlockRangeContainer m_cacheSuspectInputRangeContainer
Definition
LumiBlockMetaDataTool.h:68
LumiBlockMetaDataTool::LumiBlockMetaDataTool
LumiBlockMetaDataTool(const std::string &type, const std::string &name, const IInterface *parent)
The LumiBlockMetaDataTool reads luminosity metadata from input files and transfers it to output files...
Definition
LumiBlockMetaDataTool.cxx:18
LumiBlockMetaDataTool::m_suspectLBColl_name
Gaudi::Property< std::string > m_suspectLBColl_name
Definition
LumiBlockMetaDataTool.h:55
ServiceHandle
Definition
ClusterMakerTool.h:36
StoreGateSvc
The Athena Transient Store API.
Definition
StoreGateSvc.h:120
SG::SourceID
std::string SourceID
Definition
AthenaKernel/AthenaKernel/SourceID.h:25
xAOD::LumiBlockRangeContainer
LumiBlockRangeContainer_v1 LumiBlockRangeContainer
Declare the latest version of the container.
Definition
LumiBlockRangeContainer.h:17
xAOD::LumiBlockRangeAuxContainer
LumiBlockRangeAuxContainer_v1 LumiBlockRangeAuxContainer
Declare the latest version of the auxiliary container.
Definition
LumiBlockRangeAuxContainer.h:16
type
Generated on
for ATLAS Offline Software by
1.17.0