OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
PythonInterpreter.cpp File Reference
#include "PythonInterpreter.hpp"
#include "GeneratedConfig.hpp"
#include "libslic3r/Utils.hpp"
#include "PluginAuditManager.hpp"
#include "PythonPluginBridge.hpp"
#include <algorithm>
#include <atomic>
#include <chrono>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
#include <cstdlib>
#include <memory>
#include <exception>
#include <pytypedefs.h>
#include "PluginFsUtils.hpp"
#include <pybind11/pybind11.h>
#include <pybind11/embed.h>
#include <boost/log/trivial.hpp>
#include <boost/filesystem.hpp>
#include <boost/dll/runtime_symbol_info.hpp>
#include <boost/nowide/convert.hpp>
#include <cstring>
#include <ctime>
#include <iomanip>
#include <mutex>
#include <shared_mutex>
#include <sstream>
#include <utility>
#include <string>
#include <vector>
#include <pybind11/cast.h>
#include <pybind11/pytypes.h>
#include <Python.h>
Include dependency graph for PythonInterpreter.cpp:

Go to the source code of this file.

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::anonymous_namespace{PythonInterpreter.cpp}

Functions

void Slic3r::log_python_exception_keep (pybind11::error_already_set &err)
std::string Slic3r::anonymous_namespace{PythonInterpreter.cpp}::format_python_error (PyObject *ptype, PyObject *pvalue, PyObject *ptraceback)
std::string Slic3r::anonymous_namespace{PythonInterpreter.cpp}::executable_name (const char *base)
bool Slic3r::anonymous_namespace{PythonInterpreter.cpp}::add_sys_path_entry (const boost::filesystem::path &path, std::string &error, bool *inserted=nullptr)
void Slic3r::anonymous_namespace{PythonInterpreter.cpp}::log_python_stream (PyObject *sys, const char *name)
void Slic3r::anonymous_namespace{PythonInterpreter.cpp}::restore_python_stream (PyObject *sys, const char *name)
void Slic3r::anonymous_namespace{PythonInterpreter.cpp}::install_python_stderr_redirect ()
void Slic3r::anonymous_namespace{PythonInterpreter.cpp}::log_and_restore_python_stdio ()
bool Slic3r::anonymous_namespace{PythonInterpreter.cpp}::valid_python_home (const boost::filesystem::path &candidate)
boost::filesystem::path Slic3r::anonymous_namespace{PythonInterpreter.cpp}::find_bundled_python_home ()
boost::filesystem::path Slic3r::anonymous_namespace{PythonInterpreter.cpp}::find_python_executable (const boost::filesystem::path &python_home)

Variables

constexpr const char * Slic3r::anonymous_namespace{PythonInterpreter.cpp}::PYTHON_STDLIB_DIR = "python3.12"
constexpr const char * Slic3r::anonymous_namespace{PythonInterpreter.cpp}::PYTHON_EXECUTABLE = "python3.12"