RAVE
pyodimsource.h File Reference

Python version of the OdimSource API. More...

#include "odim_source.h"

Go to the source code of this file.

Classes

struct  PyOdimSource
 A odim source. More...
 

Macros

#define PyOdimSource_Type_NUM   0
 index of type
 
#define PyOdimSource_GetNative_NUM   1
 index of GetNative
 
#define PyOdimSource_GetNative_RETURN   OdimSource_t*
 return type for GetNative
 
#define PyOdimSource_GetNative_PROTO   (PyOdimSource*)
 arguments for GetNative
 
#define PyOdimSource_New_NUM   2
 index of New
 
#define PyOdimSource_New_RETURN   PyOdimSource*
 return type for New
 
#define PyOdimSource_New_PROTO   (OdimSource_t*)
 arguments for New
 
#define PyOdimSource_API_pointers   3
 number of API pointers
 
#define PyOdimSource_CAPSULE_NAME   "_odimsource._C_API"
 
#define PyOdimSource_GetNative    (*(PyOdimSource_GetNative_RETURN (*)PyOdimSource_GetNative_PROTO) PyOdimSource_API[PyOdimSource_GetNative_NUM])
 Returns a pointer to the internal area, remember to release the reference when done with the object.
 
#define PyOdimSource_New    (*(PyOdimSource_New_RETURN (*)PyOdimSource_New_PROTO) PyOdimSource_API[PyOdimSource_New_NUM])
 Creates a new odim source instance.
 
#define PyOdimSource_Check(op)
 Checks if the object is a python area.
 
#define PyOdimSource_Type   (*(PyTypeObject*)PyOdimSource_API[PyOdimSource_Type_NUM])
 
#define import_odimsource()
 Imports the PyOdimSource module (like import _odimsource in python).
 

Detailed Description

Python version of the OdimSource API.

Author
Anders Henja (Swedish Meteorological and Hydrological Institute, SMHI)
Date
2025-01-16

Macro Definition Documentation

◆ import_odimsource

#define import_odimsource ( )
Value:
PyOdimSource_API = (void **)PyCapsule_Import(PyOdimSource_CAPSULE_NAME, 1);

Imports the PyOdimSource module (like import _odimsource in python).

◆ PyOdimSource_API_pointers

#define PyOdimSource_API_pointers   3

number of API pointers

◆ PyOdimSource_Check

#define PyOdimSource_Check ( op)
Value:
(Py_TYPE(op) == &PyOdimSource_Type)

Checks if the object is a python area.

◆ PyOdimSource_GetNative

#define PyOdimSource_GetNative    (*(PyOdimSource_GetNative_RETURN (*)PyOdimSource_GetNative_PROTO) PyOdimSource_API[PyOdimSource_GetNative_NUM])

Returns a pointer to the internal area, remember to release the reference when done with the object.

(RAVE_OBJECT_RELEASE).

◆ PyOdimSource_GetNative_NUM

#define PyOdimSource_GetNative_NUM   1

index of GetNative

◆ PyOdimSource_GetNative_PROTO

#define PyOdimSource_GetNative_PROTO   (PyOdimSource*)

arguments for GetNative

◆ PyOdimSource_GetNative_RETURN

#define PyOdimSource_GetNative_RETURN   OdimSource_t*

return type for GetNative

◆ PyOdimSource_New

#define PyOdimSource_New    (*(PyOdimSource_New_RETURN (*)PyOdimSource_New_PROTO) PyOdimSource_API[PyOdimSource_New_NUM])

Creates a new odim source instance.

Release this object with Py_DECREF. If a OdimSource_t source is provided and this source already is bound to a python instance, this instance will be increfed and returned.

Parameters
[in]source- the OdimSource_t intance.
Returns
the PyOdimSource instance.

◆ PyOdimSource_New_NUM

#define PyOdimSource_New_NUM   2

index of New

◆ PyOdimSource_New_PROTO

#define PyOdimSource_New_PROTO   (OdimSource_t*)

arguments for New

◆ PyOdimSource_New_RETURN

#define PyOdimSource_New_RETURN   PyOdimSource*

return type for New

◆ PyOdimSource_Type_NUM

#define PyOdimSource_Type_NUM   0

index of type