#include <Helpers.h>
List of all members.
Public Member Functions |
| | Helper () |
Static Public Member Functions |
| static IService * | service (ISvcLocator *svcloc, const std::string &name, bool createif=false) |
| static IAlgorithm * | algorithm (IAlgManager *algmgr, const std::string &name, const bool createIf=false) |
| static DataObject * | dataobject (IDataProviderSvc *dpsvc, const std::string &path) |
| static GAUDI_API DataObject * | findobject (IDataProviderSvc *dpsvc, const std::string &path) |
| | simple wrapper for IDataProviderSvc::findObject The methdod does NOT trigger the loading the object from tape or Data-On-Demand action
|
| static GAUDI_API DataObject * | getobject (IDataProviderSvc *dpsvc, const std::string &path, const bool retrieve=true, const bool disableDoD=false) |
| | the generic function to get object from TES
|
| static IAlgTool * | tool (IToolSvc *toolsvc, const std::string &type, const std::string &name, IInterface *p, bool cif) |
| static long | loadDynamicLib (const std::string &name) |
| static IHistogram1D * | histo1D (IHistogramSvc *hsvc, const std::string &path) |
| static IHistogram2D * | histo2D (IHistogramSvc *hsvc, const std::string &path) |
| static IHistogram3D * | histo3D (IHistogramSvc *hsvc, const std::string &path) |
| static IProfile1D * | profile1D (IHistogramSvc *hsvc, const std::string &path) |
| static IProfile2D * | profile2D (IHistogramSvc *hsvc, const std::string &path) |
| template<class T > |
| static PyObject * | toArray (T *ptr, Py_ssize_t size) |
| static PyObject * | toIntArray (void *ptr, Py_ssize_t size) |
| static PyObject * | toShortArray (void *ptr, Py_ssize_t size) |
| static PyObject * | toFloatArray (void *ptr, Py_ssize_t size) |
| static PyObject * | toDoubleArray (void *ptr, Py_ssize_t size) |
| template<class T > |
| static T * | toAddress (std::vector< T > &v) |
| template<class T > |
| static T * | toAddress (void *a) |
Static Private Member Functions |
| template<class T > |
| static Py_ssize_t | Array_length (PyObject *self) |
| template<class T > |
| static PyObject * | toPython (T *o) |
| static PyObject * | toPython (int *o) |
| static PyObject * | toPython (short *o) |
| static PyObject * | toPython (char *o) |
| static PyObject * | toPython (long *o) |
| static PyObject * | toPython (float *o) |
| static PyObject * | toPython (double *o) |
| template<class T > |
| static PyObject * | Array_item (PyObject *self, Py_ssize_t idx) |
Detailed Description
Definition at line 39 of file Helpers.h.
Constructor & Destructor Documentation
| GaudiPython::Helper::Helper |
( |
) |
[inline] |
Member Function Documentation
Definition at line 159 of file Helpers.h.
{
#if PY_VERSION_HEX < 0x02050000
const
#endif
char* buf = 0;
Py_ssize_t size = (*(self->ob_type->tp_as_buffer->bf_getcharbuffer))( self, 0, &buf );
if ( idx < 0 || idx >= size/int(sizeof(T)) ) {
PyErr_SetString( PyExc_IndexError, "buffer index out of range" );
return 0;
}
return toPython((T*)buf + idx);
}
template<class T >
| static Py_ssize_t GaudiPython::Helper::Array_length |
( |
PyObject * |
self ) |
[inline, static, private] |
Definition at line 141 of file Helpers.h.
{
#if PY_VERSION_HEX < 0x02050000
const
#endif
char* buf = 0;
Py_ssize_t size = (*(self->ob_type->tp_as_buffer->bf_getcharbuffer))( self, 0, &buf );
return size/sizeof(T);
}
the generic function to get object from TES
- See also:
- IDataProviderSvc
-
IDataProviderSvc::findObject
-
IDataProviderSvc::retriveObject
- Parameters:
-
| psvc | (INPUT) pointer to Data ProviderService |
| path | the full path in TES |
| rerieve | (INPUT) retrieve or find object ? |
| disableDoD | (INPUT) disable 'on-demand-actions' ? |
- Author:
- Vanya BELYAEV Ivan.Belyaev@nikhef.nl
- Date:
- 2009-10-09
Definition at line 133 of file Helpers.cpp.
{
if ( 0 == dpsvc ) { return 0 ; }
Disabler sentry ( dpsvc , disable ) ;
DataObject * result = 0 ;
StatusCode sc =
retrieve ?
dpsvc -> retrieveObject ( path , result ) :
dpsvc -> findObject ( path , result ) ;
if ( sc.isFailure() ) { return 0 ; }
return result ;
}
| static long GaudiPython::Helper::loadDynamicLib |
( |
const std::string & |
name ) |
[inline, static] |
template<class T >
| static T* GaudiPython::Helper::toAddress |
( |
std::vector< T > & |
v ) |
[inline, static] |
template<class T >
| template double * GaudiPython::Helper::toAddress< double > |
( |
void * |
a ) |
[inline, static] |
template<class T >
| static PyObject* GaudiPython::Helper::toArray |
( |
T * |
ptr, |
|
|
Py_ssize_t |
size |
|
) |
| [inline, static] |
Definition at line 174 of file Helpers.h.
{
static PyTypeObject type = PyBuffer_Type;
static PySequenceMethods meth = *(PyBuffer_Type.tp_as_sequence);
#if PY_VERSION_HEX < 0x02050000
meth.sq_item = (intargfunc) &Array_item<T>;
meth.sq_length = (inquiry) &Array_length<T>;
#else
meth.sq_item = (ssizeargfunc) &Array_item<T>;
meth.sq_length = (lenfunc) &Array_length<T>;
#endif
type.tp_as_sequence = &meth;
PyObject* buf = PyBuffer_FromReadWriteMemory( ptr, size*sizeof(T) );
buf->ob_type = &type;
Py_INCREF( buf->ob_type );
return buf;
}
| static PyObject* GaudiPython::Helper::toDoubleArray |
( |
void * |
ptr, |
|
|
Py_ssize_t |
size |
|
) |
| [inline, static] |
| static PyObject* GaudiPython::Helper::toFloatArray |
( |
void * |
ptr, |
|
|
Py_ssize_t |
size |
|
) |
| [inline, static] |
| static PyObject* GaudiPython::Helper::toIntArray |
( |
void * |
ptr, |
|
|
Py_ssize_t |
size |
|
) |
| [inline, static] |
| static PyObject* GaudiPython::Helper::toPython |
( |
long * |
o ) |
[inline, static, private] |
Definition at line 154 of file Helpers.h.
{ return PyInt_FromLong(*o); }
| static PyObject* GaudiPython::Helper::toPython |
( |
float * |
o ) |
[inline, static, private] |
Definition at line 155 of file Helpers.h.
{ return PyFloat_FromDouble((double)*o); }
| static PyObject* GaudiPython::Helper::toPython |
( |
int * |
o ) |
[inline, static, private] |
Definition at line 151 of file Helpers.h.
{ return PyInt_FromLong((long)*o); }
| static PyObject* GaudiPython::Helper::toPython |
( |
char * |
o ) |
[inline, static, private] |
Definition at line 153 of file Helpers.h.
{ return PyInt_FromLong((long)*o); }
template<class T >
| static PyObject* GaudiPython::Helper::toPython |
( |
T * |
o ) |
[inline, static, private] |
| static PyObject* GaudiPython::Helper::toPython |
( |
short * |
o ) |
[inline, static, private] |
Definition at line 152 of file Helpers.h.
{ return PyInt_FromLong((long)*o); }
| static PyObject* GaudiPython::Helper::toPython |
( |
double * |
o ) |
[inline, static, private] |
Definition at line 156 of file Helpers.h.
{ return PyFloat_FromDouble(*o); }
| static PyObject* GaudiPython::Helper::toShortArray |
( |
void * |
ptr, |
|
|
Py_ssize_t |
size |
|
) |
| [inline, static] |
The documentation for this struct was generated from the following files:
- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v22r4/GaudiPython/GaudiPython/Helpers.h
- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v22r4/GaudiPython/src/Lib/Helpers.cpp