Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TPyBufferFactory.h
Go to the documentation of this file.
1 // @(#)root/pyroot:$Id$
2 // Author: Wim Lavrijsen, Apr 2004
3 
4 #ifndef PYROOT_TPYBUFFERFACTORY_H
5 #define PYROOT_TPYBUFFERFACTORY_H
6 
7 
8 namespace PyROOT {
9 
10 /** Factory for python buffers of non-string type
11  @author WLAV
12  @date 10/28/2004
13  @version 1.5
14 */
15 
16 class TPyBufferFactory {
17 public:
18  static TPyBufferFactory* Instance();
19 
20  PyObject* PyBuffer_FromMemory( Bool_t* buf, Py_ssize_t size = -1 );
21  PyObject* PyBuffer_FromMemory( Bool_t* buf, PyObject* sizeCallback );
22  PyObject* PyBuffer_FromMemory( Char_t* buf, Py_ssize_t size = -1 );
23  PyObject* PyBuffer_FromMemory( Char_t* buf, PyObject* sizeCallback );
24  PyObject* PyBuffer_FromMemory( UChar_t* buf, Py_ssize_t size = -1 );
25  PyObject* PyBuffer_FromMemory( UChar_t* buf, PyObject* sizeCallback );
26  PyObject* PyBuffer_FromMemory( Short_t* buf, Py_ssize_t size = -1 );
27  PyObject* PyBuffer_FromMemory( Short_t* buf, PyObject* sizeCallback );
28  PyObject* PyBuffer_FromMemory( UShort_t* buf, Py_ssize_t size = -1 );
29  PyObject* PyBuffer_FromMemory( UShort_t* buf, PyObject* sizeCallback );
30  PyObject* PyBuffer_FromMemory( Int_t* buf, Py_ssize_t size = -1 );
31  PyObject* PyBuffer_FromMemory( Int_t* buf, PyObject* sizeCallback );
32  PyObject* PyBuffer_FromMemory( UInt_t* buf, Py_ssize_t size = -1 );
33  PyObject* PyBuffer_FromMemory( UInt_t* buf, PyObject* sizeCallback );
34  PyObject* PyBuffer_FromMemory( Long_t* buf, Py_ssize_t size = -1 );
35  PyObject* PyBuffer_FromMemory( Long_t* buf, PyObject* sizeCallback );
36  PyObject* PyBuffer_FromMemory( ULong_t* buf, Py_ssize_t size = -1 );
37  PyObject* PyBuffer_FromMemory( ULong_t* buf, PyObject* sizeCallback );
38  PyObject* PyBuffer_FromMemory( Float_t* buf, Py_ssize_t size = -1 );
39  PyObject* PyBuffer_FromMemory( Float_t* buf, PyObject* sizeCallback );
40  PyObject* PyBuffer_FromMemory( Double_t* buf, Py_ssize_t size = -1 );
41  PyObject* PyBuffer_FromMemory( Double_t* buf, PyObject* sizeCallback );
42 
43 protected:
44  TPyBufferFactory();
45  ~TPyBufferFactory();
46 };
47 
48 typedef TPyBufferFactory BufFac_t;
49 
50 } // namespace PyROOT
51 
52 
53 #endif // !PYROOT_TPYBUFFERFACTORY_H