Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  master (d98a2936)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
HistogramPersistencySvc.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 // ===========================================================================
12 //
13 // HistogramPersistencySvc.h
14 // ------------------------------------------------------------
15 //
16 // Package : PersistencySvc
17 //
18 // Author : Markus Frank
19 //
20 // ===========================================================
21 #pragma once
22 // ============================================================================
23 // Incldue files
24 // ============================================================================
25 // STD & STL
26 // ============================================================================
27 #include <set>
28 #include <string>
29 #include <vector>
30 // ============================================================================
31 // local
32 // ============================================================================
33 #include "../PersistencySvc/PersistencySvc.h"
34 // ============================================================================
56 class HistogramPersistencySvc : virtual public PersistencySvc {
57 public:
60  StatusCode initialize() override;
63  StatusCode reinitialize() override;
65  StatusCode finalize() override;
67  StatusCode createRep( DataObject* pObject, IOpaqueAddress*& refpAddress ) override;
69 
72  HistogramPersistencySvc( const std::string& name, ISvcLocator* svc );
74 
76 public:
77  // ==========================================================================
79  typedef std::set<std::string> Set; // unconverted histograms
80  // ==========================================================================
81 protected:
82  Gaudi::Property<std::string> m_histPersName{ this, "HistogramPersistency", "", "name of the Hist Pers type" };
83  Gaudi::Property<std::string> m_outputFile{ this, "OutputFile", "", "name of the output file" };
85  this, "ConvertHistos", {}, "The list of patterns to be accepted for conversion" };
87  this, "ExcludeHistos", {}, "The list of patterns to be excluded from conversion" };
88  Gaudi::Property<bool> m_warnings{ this, "Warnings", true, "Set this property to false to suppress warning messages" };
89 
94  // ==========================================================================
95 };
96 // ============================================================================
97 // The END
98 // ============================================================================
PersistencySvc
PersistencySvc class implementation definition.
Definition: PersistencySvc.h:57
HistogramPersistencySvc::HistogramPersistencySvc
HistogramPersistencySvc(const std::string &name, ISvcLocator *svc)
Standard Constructor.
Definition: HistogramPersistencySvc.cpp:212
HistogramPersistencySvc::m_convert
Gaudi::Property< std::vector< std::string > > m_convert
Definition: HistogramPersistencySvc.h:84
HistogramPersistencySvc::createRep
StatusCode createRep(DataObject *pObject, IOpaqueAddress *&refpAddress) override
Implementation of IConverter: Convert the transient object to the requested representation.
Definition: HistogramPersistencySvc.cpp:180
IOpaqueAddress
Definition: IOpaqueAddress.h:28
ISvcLocator
Definition: ISvcLocator.h:42
HistogramPersistencySvc::initialize
StatusCode initialize() override
Initialize the service.
Definition: HistogramPersistencySvc.cpp:92
HistogramPersistencySvc::Set
std::set< std::string > Set
for report: unconverted histograms
Definition: HistogramPersistencySvc.h:79
HistogramPersistencySvc::m_excluded
Set m_excluded
for the final report: the list of excluded histograms
Definition: HistogramPersistencySvc.h:93
Service::name
const std::string & name() const override
Retrieve name of the service
Definition: Service.cpp:333
StatusCode
Definition: StatusCode.h:64
HistogramPersistencySvc::m_converted
Set m_converted
for the final report: the list of converted histograms
Definition: HistogramPersistencySvc.h:91
HistogramPersistencySvc::m_histPersName
Gaudi::Property< std::string > m_histPersName
Definition: HistogramPersistencySvc.h:82
HistogramPersistencySvc::finalize
StatusCode finalize() override
Finalize the service.
Definition: HistogramPersistencySvc.cpp:67
HistogramPersistencySvc::m_warnings
Gaudi::Property< bool > m_warnings
Definition: HistogramPersistencySvc.h:88
HistogramPersistencySvc::reinitialize
StatusCode reinitialize() override
Reinitialize the service.
Definition: HistogramPersistencySvc.cpp:99
HistogramPersistencySvc::m_outputFile
Gaudi::Property< std::string > m_outputFile
Definition: HistogramPersistencySvc.h:83
HistogramPersistencySvc
HistogramPersistencySvc class implementation definition.
Definition: HistogramPersistencySvc.h:56
DataObject
Definition: DataObject.h:37
Gaudi::Property< std::string >
HistogramPersistencySvc::m_exclude
Gaudi::Property< std::vector< std::string > > m_exclude
Definition: HistogramPersistencySvc.h:86