Details coming soon.

This commit is contained in:
Paulchen-Panther
2018-12-27 23:11:32 +01:00
parent e3be03ea73
commit d762aa2f3e
186 changed files with 6156 additions and 5444 deletions

View File

@@ -0,0 +1,21 @@
find_package(PythonLibs 3.4 REQUIRED)
# Include the python directory. Also include the parent (which is for example /usr/include)
# which may be required when it is not includes by the (cross-) compiler by default.
include_directories(${PYTHON_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS}/..)
# Define the current source locations
SET(CURRENT_HEADER_DIR ${CMAKE_SOURCE_DIR}/include/python)
SET(CURRENT_SOURCE_DIR ${CMAKE_SOURCE_DIR}/libsrc/python)
FILE ( GLOB PYTHON_SOURCES "${CURRENT_HEADER_DIR}/*.h" "${CURRENT_SOURCE_DIR}/*.h" "${CURRENT_SOURCE_DIR}/*.cpp" )
add_library(python
${PYTHON_SOURCES}
)
target_link_libraries(python
effectengine
hyperion-utils
${PYTHON_LIBRARIES}
)

View File

@@ -0,0 +1,31 @@
#undef slots
#include <Python.h>
#define slots
// utils
#include <utils/Logger.h>
#include <python/PythonInit.h>
#include <python/PythonUtils.h>
// modules to init
#include <effectengine/EffectModule.h>
PythonInit::PythonInit()
{
// register modules
EffectModule::registerHyperionExtensionModule();
// init Python
Debug(Logger::getInstance("DAEMON"), "Initializing Python interpreter");
Py_InitializeEx(0);
PyEval_InitThreads(); // Create the GIL
mainThreadState = PyEval_SaveThread();
}
PythonInit::~PythonInit()
{
Debug(Logger::getInstance("DAEMON"), "Cleaning up Python interpreter");
PyEval_RestoreThread(mainThreadState);
Py_Finalize();
}