The Gaudi Framework  master (181af51f)
Loading...
Searching...
No Matches
HistoAlgorithm.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#pragma once
12
13// Include files
15
16#include <AIDA/IAxis.h>
17#include <AIDA/IHistogram1D.h>
18#include <AIDA/IHistogram2D.h>
19#include <AIDA/IHistogram3D.h>
20#include <AIDA/IHistogramFactory.h>
21#include <AIDA/IProfile1D.h>
22#include <AIDA/IProfile2D.h>
23
24using namespace AIDA;
25// Forward declarations
26class HistogramSvc;
27
28class HistoAlgorithm : public Algorithm {
29
30public:
31 // Constructor of this form must be provided
32 HistoAlgorithm( const std::string& name, ISvcLocator* pSvcLocator );
33
34 // Three mandatory member functions of any algorithm
35 StatusCode initialize() override;
36 StatusCode execute() override;
37 StatusCode finalize() override;
38
39private:
40 IHistogram1D* m_h1D;
41 IHistogram1D* m_h1DVar;
42 IHistogram2D* m_h2D;
43 IHistogram2D* m_h2DVar;
44 IHistogram3D* m_h3D;
45 IHistogram3D* m_h3DVar;
46 IProfile1D* m_p1D;
47 IProfile2D* m_p2D;
48};
Algorithm(std::string name, ISvcLocator *svcloc, std::string version=PACKAGE_VERSION)
Constructor.
Definition Algorithm.h:98
const std::string & name() const override
The identifying name of the algorithm object.
HistoAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
IProfile2D * m_p2D
StatusCode initialize() override
IHistogram2D * m_h2D
IHistogram1D * m_h1DVar
IHistogram1D * m_h1D
IHistogram3D * m_h3DVar
StatusCode execute() override
IProfile1D * m_p1D
StatusCode finalize() override
IHistogram3D * m_h3D
IHistogram2D * m_h2DVar
HistogramSvc class definition.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition ISvcLocator.h:42
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64