view PyRealTime.h @ 46:af9c4cee95a8

VC++ fixes. Much of this is changing "and" to "&&". I had never realised until today that "and" is in fact a keyword in C++, albeit not one that has been there since the start, so this should compile (I eventually looked this up having been puzzled by how this code could ever build with any other compiler). However, despite its keywordness, "and" still doesn't seem to be acceptable to VC++. Possibly there's an option to change this, or one could use a macro -- but why not just stick with the token that compilers are known to like?
author cannam
date Mon, 05 Oct 2009 16:14:25 +0000
parents 27bab3a16c9a
children 2a9fb03458d7 f5c028376bf9
line wrap: on
line source
/*

 * Vampy : This plugin is a wrapper around the Vamp plugin API.
 * It allows for writing Vamp plugins in Python.

 * Centre for Digital Music, Queen Mary University of London.
 * Copyright (C) 2008-2009 Gyorgy Fazekas, QMUL. (See Vamp sources 
 * for licence information.)

*/

#ifndef _PYREALTIME_H_
#define _PYREALTIME_H_

#include "vamp-sdk/Plugin.h"

typedef struct {
		PyObject_HEAD
		Vamp::RealTime *rt;
} RealTimeObject; 

PyAPI_DATA(PyTypeObject) RealTime_Type;

#define PyRealTime_CheckExact(v)	((v)->ob_type == &RealTime_Type)
#define PyRealTime_Check(v) PyObject_TypeCheck(v, &RealTime_Type)
///fast macro version as per API convention
#define PyRealTime_AS_REALTIME(v) ((const RealTimeObject* const) (v))->rt

/*		  		 	  PyRealTime C++ API  	  		  				*/


PyAPI_FUNC(PyObject *) 
PyRealTime_FromRealTime(Vamp::RealTime&);

PyAPI_FUNC(const Vamp::RealTime*) 
PyRealTime_AsRealTime (PyObject *self);


#endif