1#ifndef PY_EXTENSION_BASE_HXX
2#define PY_EXTENSION_BASE_HXX
16#include <CXX/Objects.hxx>
17#include <CXX/Extensions.hxx>
32 Py::Object
logStack(
const Py::Tuple &args);
33 Py::Object
logDebug(
const Py::Tuple &args);
34 Py::Object
logInfo(
const Py::Tuple &args);
36 Py::Object
logErr(
const Py::Tuple &args);
37 Py::Object
logCrit(
const Py::Tuple &args);
44 virtual bool checkPyArgs(
const resip::Data& method,
const Py::Tuple &args,
unsigned int minArgs,
unsigned int maxArgs);
54 PyThreadState* mThreadState;
56 PyInterpreterState* mInterpreterState;
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
virtual bool onStartup()=0
virtual std::unique_ptr< Py::Module > loadModule(const resip::Data &moduleName)
virtual void importModule(PyObject *pyModule, const resip::Data &moduleImport)
virtual bool checkPyArgs(const resip::Data &method, const Py::Tuple &args, unsigned int minArgs, unsigned int maxArgs)
Py::Object logErr(const Py::Tuple &args)
Py::Object logStack(const Py::Tuple &args)
virtual ~PyExtensionBase()
Py::Object logWarning(const Py::Tuple &args)
virtual bool logPythonErrorIfAny()
Py::Object logDebug(const Py::Tuple &args)
virtual void initMethods()
std::unique_ptr< PyExternalUser > createPyExternalUser()
Py::Object logCrit(const Py::Tuple &args)
virtual void appendPath(const resip::Data &path)
virtual bool init(const resip::Data &pyPath)
Py::Object logInfo(const Py::Tuple &args)
dcm! – add UnusedChecking(_enum) below;