The Gaudi Framework  v36r13 (995e4364)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
TemplatedAlg.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 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 #ifndef GAUDIEXAMPLE_TEMPLATEALG_H
12 #define GAUDIEXAMPLE_TEMPLATEALG_H 1
13 
14 // Include files
16 #include "GaudiKernel/MsgStream.h"
17 #include <Gaudi/Property.h>
18 
24 template <typename T, typename R>
25 class TemplatedAlg : public GaudiAlgorithm {
26 public:
29 
31  StatusCode initialize() override;
32  StatusCode execute() override;
33  StatusCode finalize() override;
34 
35 private:
36  Gaudi::Property<T> m_t{ this, "TProperty", {} };
37  Gaudi::Property<R> m_r{ this, "RProperty", {} };
38 };
39 
40 #endif // GAUDIEXAMPLE_TEMPLATEDALG_H
GaudiAlgorithm::GaudiAlgorithm
GaudiAlgorithm(std::string name, ISvcLocator *pSvcLocator)
Standard constructor.
Definition: GaudiAlgorithm.cpp:45
TemplatedAlg::finalize
StatusCode finalize() override
Definition: TemplatedAlg.cpp:47
TemplatedAlg
Definition: TemplatedAlg.py:1
StatusCode
Definition: StatusCode.h:65
GaudiAlgorithm
Definition: GaudiAlgorithm.h:104
TemplatedAlg::m_t
Gaudi::Property< T > m_t
Definition: TemplatedAlg.h:36
GaudiAlgorithm.h
TemplatedAlg::execute
StatusCode execute() override
standard execution method
Definition: TemplatedAlg.cpp:40
TemplatedAlg::m_r
Gaudi::Property< R > m_r
Definition: TemplatedAlg.h:37
Gaudi::Property< T >
TemplatedAlg::initialize
StatusCode initialize() override
Three mandatory member functions of any algorithm.
Definition: TemplatedAlg.cpp:31
Property.h
MsgStream.h