/**
 * @author
*/

//#include <boost/python/detail/python_type.hpp>
#include <string>

//#include <boost/python/module.hpp>
#include <boost/python/def.hpp>
//#include <boost/python/class.hpp>
#include <boost/ref.hpp>
#include <boost/python/ptr.hpp>
#include <boost/python/return_value_policy.hpp>
#include <boost/python/reference_existing_object.hpp>
#include <boost/python/call.hpp>
#include <boost/python/object.hpp>
//#define BOOST_ENABLE_ASSERT_HANDLER
//#include <boost/assert.hpp>

using namespace boost::python;
BOOST_STATIC_ASSERT(converter::is_object_manager<handle<> >::value);


// class RTSPyLoggingBase
// {

// public:   
//     virtual ~RTSPyLoggingBase();

//     virtual void log(std::string msg) = 0;
// };



class RTSPyLogging // : RTSPyLoggingBase
{
private:
    /* data */
    //PyObject* const mplogging;

public:

//    RTSPyLogging(PyObject* pPyLogging);       
    RTSPyLogging();       
    ~RTSPyLogging();

    void log(std::string msg, PyObject* f);
    std::string format(const std::string fmt_str, ...);


};
