00001
00002
00003
00004 #ifndef PYROOT_TPYBUFFERFACTORY_H
00005 #define PYROOT_TPYBUFFERFACTORY_H
00006
00007
00008 namespace PyROOT {
00009
00010
00011
00012
00013
00014
00015
00016 class TPyBufferFactory {
00017 public:
00018 static TPyBufferFactory* Instance();
00019
00020 PyObject* PyBuffer_FromMemory( Short_t* buf, Py_ssize_t size = -1 );
00021 PyObject* PyBuffer_FromMemory( Short_t* buf, PyObject* sizeCallback );
00022 PyObject* PyBuffer_FromMemory( UShort_t* buf, Py_ssize_t size = -1 );
00023 PyObject* PyBuffer_FromMemory( UShort_t* buf, PyObject* sizeCallback );
00024 PyObject* PyBuffer_FromMemory( Int_t* buf, Py_ssize_t size = -1 );
00025 PyObject* PyBuffer_FromMemory( Int_t* buf, PyObject* sizeCallback );
00026 PyObject* PyBuffer_FromMemory( UInt_t* buf, Py_ssize_t size = -1 );
00027 PyObject* PyBuffer_FromMemory( UInt_t* buf, PyObject* sizeCallback );
00028 PyObject* PyBuffer_FromMemory( Long_t* buf, Py_ssize_t size = -1 );
00029 PyObject* PyBuffer_FromMemory( Long_t* buf, PyObject* sizeCallback );
00030 PyObject* PyBuffer_FromMemory( ULong_t* buf, Py_ssize_t size = -1 );
00031 PyObject* PyBuffer_FromMemory( ULong_t* buf, PyObject* sizeCallback );
00032 PyObject* PyBuffer_FromMemory( Float_t* buf, Py_ssize_t size = -1 );
00033 PyObject* PyBuffer_FromMemory( Float_t* buf, PyObject* sizeCallback );
00034 PyObject* PyBuffer_FromMemory( Double_t* buf, Py_ssize_t size = -1 );
00035 PyObject* PyBuffer_FromMemory( Double_t* buf, PyObject* sizeCallback );
00036
00037 protected:
00038 TPyBufferFactory();
00039 ~TPyBufferFactory();
00040 };
00041
00042 typedef TPyBufferFactory BufFac_t;
00043
00044 }
00045
00046
00047 #endif // !PYROOT_TPYBUFFERFACTORY_H