Apache Mesos
Classes | Namespaces | Functions | Variables
common.hpp File Reference
#include <Python.h>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <google/protobuf/io/zero_copy_stream_impl.h>
#include <google/protobuf/message.h>

Go to the source code of this file.

Classes

class  mesos::python::InterpreterLock
 RAII utility class for acquiring the Python global interpreter lock. More...
 

Namespaces

 mesos
 
 mesos::python
 

Functions

template<typename T >
bool mesos::python::readPythonProtobuf (PyObject *obj, T *t)
 Convert a Python protocol buffer object into a C++ one by serializing it to a string and deserializing the result back in C++. More...
 
template<typename T >
PyObject * mesos::python::createPythonProtobuf (const T &t, const char *typeName)
 Convert a C++ protocol buffer object into a Python one by serializing it to a string and deserializing the result back in Python. More...
 
template<typename T >
std::enable_if< std::is_base_of< google::protobuf::Message, T >::value, std::unique_ptr< T > >::type mesos::python::construct (PyObject *obj)
 
template<typename T >
std::enable_if< !std::is_base_of< google::protobuf::Message, T >::value, std::unique_ptr< T > >::type mesos::python::construct (PyObject *obj)
 
template<>
std::unique_ptr< std::string > mesos::python::construct< std::string > (PyObject *obj)
 
template<typename T >
std::unique_ptr< std::vector< T > > mesos::python::constructFromIterable (PyObject *iterable)
 

Variables

PyObject * mesos::python::mesos_pb2
 The Python module object for mesos_pb2 (which contains the protobuf classes generated for Python). More...