DynExp
Highly flexible laboratory automation for dynamically changing experiments.
Util::PyGilReleasedInterpreter Class Reference

Initialize Python interpreter and directly release the GIL after construction. More...

Public Member Functions

 PyGilReleasedInterpreter ()
 
void PrintDebugInfo ()
 Writes information on the Python interpreter configuration to DynExp's log. More...
 

Private Attributes

PyStdoutLoggerWrapper Logger
 Wrapper to forward DynExp's event log to Python. More...
 
py::scoped_interpreter Interpreter
 Python interpreter. More...
 
py::module_ Module_sys
 Handle to the Python sys module. More...
 
py::gil_scoped_release GILRelease
 Release which releases the GIL at construction. More...
 

Detailed Description

Initialize Python interpreter and directly release the GIL after construction.

Definition at line 42 of file PyUtil.h.

Constructor & Destructor Documentation

◆ PyGilReleasedInterpreter()

Util::PyGilReleasedInterpreter::PyGilReleasedInterpreter ( )

Definition at line 27 of file PyUtil.cpp.

Member Function Documentation

◆ PrintDebugInfo()

void Util::PyGilReleasedInterpreter::PrintDebugInfo ( )

Writes information on the Python interpreter configuration to DynExp's log.

Definition at line 51 of file PyUtil.cpp.

Member Data Documentation

◆ GILRelease

py::gil_scoped_release Util::PyGilReleasedInterpreter::GILRelease
private

Release which releases the GIL at construction.

Definition at line 54 of file PyUtil.h.

◆ Interpreter

py::scoped_interpreter Util::PyGilReleasedInterpreter::Interpreter
private

Python interpreter.

Definition at line 52 of file PyUtil.h.

◆ Logger

PyStdoutLoggerWrapper Util::PyGilReleasedInterpreter::Logger
private

Wrapper to forward DynExp's event log to Python.

Definition at line 51 of file PyUtil.h.

◆ Module_sys

py::module_ Util::PyGilReleasedInterpreter::Module_sys
private

Handle to the Python sys module.

Definition at line 53 of file PyUtil.h.


The documentation for this class was generated from the following files: