The Gaudi Framework
v41r0 (bdbe7744)
Toggle main menu visibility
Loading...
Searching...
No Matches
Algorithm.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
14
// ============================================================================
15
// Python
16
// ============================================================================
17
#include <Python.h>
18
// ============================================================================
19
// GaudiKernel
20
// ============================================================================
21
#include <
GaudiKernel/Algorithm.h
>
22
#include <
GaudiKernel/Bootstrap.h
>
23
// ============================================================================
24
// GaudiPython
25
// ============================================================================
26
#include <
GaudiPython/GaudiPython.h
>
27
// ============================================================================
28
29
namespace
GaudiPython
{
31
GAUDI_API
StatusCode
call_python_method
( PyObject*
self
,
const
char
* method );
32
}
// namespace GaudiPython
33
34
namespace
GaudiPython
{
35
39
class
GAUDI_API
PyAlgorithm
:
public
Algorithm
{
40
public
:
45
PyAlgorithm
( PyObject*
self
,
const
std::string&
name
);
46
47
public
:
48
StatusCode
initialize
()
override
;
49
StatusCode
start
()
override
;
50
StatusCode
execute
()
override
;
51
StatusCode
stop
()
override
;
52
StatusCode
finalize
()
override
;
53
IAlgorithm
*
myself
() {
return
this
; }
54
55
private
:
56
PyObject*
m_self
;
57
};
58
// ==========================================================================
59
}
// end of namespace GaudiPython
60
// ============================================================================
61
// The END
62
// ============================================================================
Bootstrap.h
Algorithm.h
GaudiPython.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
Gaudi::Algorithm::Algorithm
Algorithm(std::string name, ISvcLocator *svcloc, std::string version=PACKAGE_VERSION)
Constructor.
Definition
Algorithm.h:98
Gaudi::Algorithm::name
const std::string & name() const override
The identifying name of the algorithm object.
Definition
Algorithm.cpp:518
GaudiPython::PyAlgorithm::initialize
StatusCode initialize() override
Definition
Algorithm.cpp:106
GaudiPython::PyAlgorithm::execute
StatusCode execute() override
Definition
Algorithm.cpp:110
GaudiPython::PyAlgorithm::finalize
StatusCode finalize() override
Definition
Algorithm.cpp:114
GaudiPython::PyAlgorithm::myself
IAlgorithm * myself()
Definition
Algorithm.h:53
GaudiPython::PyAlgorithm::start
StatusCode start() override
Definition
Algorithm.cpp:108
GaudiPython::PyAlgorithm::m_self
PyObject * m_self
Definition
Algorithm.h:56
GaudiPython::PyAlgorithm::PyAlgorithm
PyAlgorithm(PyObject *self, const std::string &name)
constructor
Definition
Algorithm.cpp:96
GaudiPython::PyAlgorithm::stop
StatusCode stop() override
Definition
Algorithm.cpp:112
IAlgorithm
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition
IAlgorithm.h:37
StatusCode
This class is used for returning status codes from appropriate routines.
Definition
StatusCode.h:64
GaudiPython.Pythonizations.self
self
Definition
Pythonizations.py:554
GaudiPython
GaudiPython.h GaudiPython/GaudiPython.h.
Definition
Algorithm.h:29
GaudiPython::call_python_method
GAUDI_API StatusCode call_python_method(PyObject *self, const char *method)
call the python method
Definition
Algorithm.cpp:48
GaudiPython
include
GaudiPython
Algorithm.h
Generated on
for The Gaudi Framework by
1.17.0