ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
RootUtils
src
pyroot
Utility.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-2026 CERN for the benefit of the ATLAS collaboration
4
*/
11
12
13
#ifndef ROOTUTILS_UTILITY_H
14
#define ROOTUTILS_UTILITY_H
15
16
17
#include "Python.h"
18
#include "TPython.h"
19
#include "TClass.h"
20
21
22
#if defined(ATLAS_HAVE_CPYCPPYY)
23
#include "CPyCppyy/PyException.h"
24
namespace
RootUtils
{
25
using
PyException
= CPyCppyy::PyException;
26
}
27
#elif defined(ATLAS_HAVE_CPYRT)
28
#include "cpyrt/PyException.h"
29
namespace
RootUtils
{
30
using
PyException
= cppjit::cpyrt::PyException;
31
}
32
#else
33
#include <exception>
34
namespace
RootUtils
{
35
struct
PyException
:
public
std::exception {
36
const
char
*
what
()
const
noexcept
override
{
return
"Python exception"
; }
37
};
38
}
39
#endif
// ATLAS_HAVE_CPYCPPYY
40
41
42
namespace
RootUtils
{
43
44
45
int
GetBuffer
(
PyObject
* pyobject,
char
tc
,
int
size
,
void
*& buf, Bool_t check = kTRUE );
46
TClass*
objectIsA
(
PyObject
* obj);
47
bool
setOwnership
(
PyObject
* obj,
bool
flag);
48
49
50
}
51
52
53
#endif
// not ROOTUTILS_UTILITY_H
PyObject
_object PyObject
Definition
IPyComponent.h:27
tc
static Double_t tc
Definition
LArPhysWaveHECTool.cxx:38
size
size_t size() const
Number of registered mappings.
const
RootUtils
Definition
ILogger.h:20
RootUtils::setOwnership
bool setOwnership(PyObject *obj, bool flag)
Definition
Utility.cxx:141
RootUtils::GetBuffer
int GetBuffer(PyObject *pyobject, char tc, int size, void *&buf, Bool_t check)
Definition
Utility.cxx:26
RootUtils::objectIsA
TClass * objectIsA(PyObject *obj)
Definition
Utility.cxx:103
RootUtils::PyException
Definition
Utility.h:35
RootUtils::PyException::what
const char * what() const noexcept override
Definition
Utility.h:36
Generated on
for ATLAS Offline Software by
1.17.0