Exemplo n.º 1
0
// -------------------------------------------------------------
SharedPythonOStream::SharedPythonOStream(size_t maxSize)
{
  // Use Python to allocate the memory.
  Py_ssize_t bufferSize = NextPythonSize(maxSize);

  PyObject * pys = PyString_FromStringAndSize(0, bufferSize);

  // Access the pointers.
  char *buffer=0;
  Py_ssize_t n=0;
  PyString_AsStringAndSize(pys, &buffer, &n);
  
  // Hang on to everything
  p_ = boost::shared_ptr<SharedPythonOStreamInternals>(
    new SharedPythonOStreamInternals(pys, buffer, maxSize));                                       
}
Exemplo n.º 2
0
// -------------------------------------------------------------
SharedPythonOStream::SharedPythonOStream(size_t maxSize) :
	target_size_(NextPythonSize(maxSize)),
	ss_(std::ios_base::out)
{
}