fazekasgy@37: /* fazekasgy@37: fazekasgy@37: * Vampy : This plugin is a wrapper around the Vamp plugin API. fazekasgy@37: * It allows for writing Vamp plugins in Python. fazekasgy@37: fazekasgy@37: * Centre for Digital Music, Queen Mary University of London. fazekasgy@37: * Copyright (C) 2008-2009 Gyorgy Fazekas, QMUL. (See Vamp sources fazekasgy@37: * for licence information.) fazekasgy@37: fazekasgy@37: */ fazekasgy@37: fazekasgy@37: #ifndef _PYPARAMETERDESCRIPTOR_H_ fazekasgy@37: #define _PYPARAMETERDESCRIPTOR_H_ fazekasgy@37: fazekasgy@37: #include "vamp-sdk/Plugin.h" fazekasgy@37: fazekasgy@37: typedef struct { fazekasgy@37: PyObject_HEAD fazekasgy@37: PyObject *dict; fazekasgy@37: } ParameterDescriptorObject; fazekasgy@37: Chris@79: extern PyTypeObject ParameterDescriptor_Type; fazekasgy@37: fazekasgy@37: #define PyParameterDescriptor_CheckExact(v) ((v)->ob_type == &ParameterDescriptor_Type) fazekasgy@37: #define PyParameterDescriptor_Check(v) PyObject_TypeCheck(v, &ParameterDescriptor_Type) fazekasgy@37: fazekasgy@37: /* PyParameterDescriptor C++ API */ fazekasgy@37: fazekasgy@37: fazekasgy@37: ///fast macro version as per API convention fazekasgy@37: #define PyParameterDescriptor_AS_DICT(v) ((const ParameterDescriptorObject* const) (v))->dict fazekasgy@37: fazekasgy@37: #endif