ATLAS Offline Software
Loading...
Searching...
No Matches
ThinningCacheTool.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 * Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration.
4 */
11
12
13#ifndef ATHENASERVICES_THINNINGCACHETOOL_H
14#define ATHENASERVICES_THINNINGCACHETOOL_H
15
16
21#include "GaudiKernel/ServiceHandle.h"
22
23
24namespace Athena {
25
26
36class ThinningCacheTool : public extends<AthAlgTool, IAthenaOutputTool>
37{
38public:
39 using base_class::base_class;
40
41
45 virtual StatusCode initialize() override;
46
47
51 virtual StatusCode postInitialize() override;
52
53
57 virtual StatusCode preExecute() override;
58
59
65 virtual StatusCode preStream() override;
66
67
72 virtual StatusCode postExecute() override;
73
74
78 virtual StatusCode preFinalize() override;
79
80
81private:
89 std::string wantedKey (const std::string& key) const;
90
91
93 StringProperty m_streamName
94 { this, "StreamName", "", "Name of the stream being written." };
95
96
99 { this, "TrigNavigationThinningSvc", "", "Service to use for TrigNavigation thinning (optional)." };
100
101
104};
105
106
107} // namespace Athena
108
109
110#endif // not ATHENASERVICES_THINNINGCACHETOOL_H
This file contains the class definition for the IAthenaOutputTool class.
Define interface for doing TrigNavigation thinning.
Create ThinningCache for a given stream.
StringProperty m_streamName
Name of the stream for this tool.
ServiceHandle< ITrigNavigationThinningSvc > m_trigNavigationThinningSvc
Optional TrigNavigation thinning service to use.
SG::ThinningCache m_cache
Thinning cache instance for this stream.
virtual StatusCode initialize() override
Gaudi initialize method.
virtual StatusCode preStream() override
Called before actually streaming objects.
virtual StatusCode preExecute() override
Called at the beginning of execute.
virtual StatusCode preFinalize() override
Called at the beginning of finalize.
std::string wantedKey(const std::string &key) const
Test if a thinning decision object is for our stream.
virtual StatusCode postExecute() override
Called at the end of execute.
virtual StatusCode postInitialize() override
Called at the end of initialize.
Cache thinning decisions for converters.
Some weak symbol referencing magic... These are declared in AthenaKernel/getMessageSvc....