aboutsummaryrefslogtreecommitdiff
path: root/externals/grill
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2008-01-03 16:21:04 +0000
committerThomas Grill <xovo@users.sourceforge.net>2008-01-03 16:21:04 +0000
commit12d8576f4bab14b6da85957f156ee0360ab3446f (patch)
treed679f046ac66c9ac83964f5bb92c6d5ff83d799e /externals/grill
parent5e78a38d9cecc1eafced1fedcac889023c6cfa6b (diff)
cross-platform fixes
enable compiled-only scripts (without .py) use PyGILState_\*() functionality (enabled with PY_USE_GIL) fixes for non-GIL usage improved symbol comparison buffer protocol adapted for Python 2.5 enable module packages (module/__init__.py[co]), now also for Max svn path=/trunk/; revision=9120
Diffstat (limited to 'externals/grill')
-rw-r--r--externals/grill/py/license.txt4
-rw-r--r--externals/grill/py/py.vcproj9
-rw-r--r--externals/grill/py/readme.txt2
-rw-r--r--externals/grill/py/source/bound.cpp6
-rw-r--r--externals/grill/py/source/clmeth.cpp8
-rw-r--r--externals/grill/py/source/main.cpp6
-rw-r--r--externals/grill/py/source/main.h8
-rw-r--r--externals/grill/py/source/modmeth.cpp12
-rw-r--r--externals/grill/py/source/py.cpp8
-rw-r--r--externals/grill/py/source/pyargs.cpp6
-rw-r--r--externals/grill/py/source/pyatom.cpp6
-rw-r--r--externals/grill/py/source/pyatom.h6
-rw-r--r--externals/grill/py/source/pybase.cpp10
-rw-r--r--externals/grill/py/source/pybase.h134
-rw-r--r--externals/grill/py/source/pybuffer.cpp6
-rw-r--r--externals/grill/py/source/pybuffer.h6
-rw-r--r--externals/grill/py/source/pybundle.cpp6
-rw-r--r--externals/grill/py/source/pybundle.h6
-rw-r--r--externals/grill/py/source/pydsp.cpp6
-rw-r--r--externals/grill/py/source/pyext.cpp8
-rw-r--r--externals/grill/py/source/pyext.h6
-rw-r--r--externals/grill/py/source/pymeth.cpp8
-rw-r--r--externals/grill/py/source/pyprefix.h6
-rw-r--r--externals/grill/py/source/pysymbol.cpp6
-rw-r--r--externals/grill/py/source/pysymbol.h6
-rw-r--r--externals/grill/py/source/register.cpp6
26 files changed, 175 insertions, 126 deletions
diff --git a/externals/grill/py/license.txt b/externals/grill/py/license.txt
index 66c01ee4..c4162b50 100644
--- a/externals/grill/py/license.txt
+++ b/externals/grill/py/license.txt
@@ -1,5 +1,5 @@
py/pyext - python script objects for PD and MaxMSP
-Copyright (C) 2002-2006 Thomas Grill
+Copyright (C) 2002-2008 Thomas Grill
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -28,7 +28,7 @@ This package uses the flext C++ layer - See its license text below:
--- flext ----------------------------------------------
flext - C++ layer for Max/MSP and pd (pure data) externals
-Copyright (C) 2001-2006 Thomas Grill
+Copyright (C) 2001-2008 Thomas Grill
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/externals/grill/py/py.vcproj b/externals/grill/py/py.vcproj
index 86f45387..76ee84a5 100644
--- a/externals/grill/py/py.vcproj
+++ b/externals/grill/py/py.vcproj
@@ -85,10 +85,13 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories="$(prereq)\pthreads\include;$(pdmax)\pd\src;..\flext\source;C:\Python24\include;&quot;C:\Python24\Lib\site-packages\numpy\core\include&quot;"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;PY_EXPORTS;FLEXT_SYS=2;FLEXT_THREADS;PY_NUMPY;FLEXT_USECMEM;xPY_USE_GIL;PY_USE_INOFFICIAL"
+ InlineFunctionExpansion="0"
+ EnableIntrinsicFunctions="TRUE"
+ AdditionalIncludeDirectories="$(prereq)\pthreads\include;$(pdmax)\pd\src;..\flext\source;C:\Python24\include;&quot;C:\Python24\Lib\site-packages\numpy\core\include&quot;;;C:\data\nova\libs\lockfree"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;PY_EXPORTS;FLEXT_SYS=2;FLEXT_THREADS;PY_NUMPY;FLEXT_USECMEM;PY_USE_GIL;PY_USE_INOFFICIAL"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
+ EnableEnhancedInstructionSet="1"
RuntimeTypeInfo="TRUE"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="pyprefix.h"
@@ -151,7 +154,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories="c:\programme\audio\pd\src;c:\data\pdmax\flext\source;C:\Programme\prog\Python24\include"
+ AdditionalIncludeDirectories="c:\programme\audio\pd\src;c:\data\pdmax\flext\source;C:\Programme\prog\Python24\include;;C:\data\nova\libs\lockfree"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;FLEXT_SYS=2;FLEXT_THREADS;PY_EXPORTS;PY_NUMARRAY;PY_USE_GIL"
StringPooling="TRUE"
RuntimeLibrary="0"
diff --git a/externals/grill/py/readme.txt b/externals/grill/py/readme.txt
index cd0b66cb..be168835 100644
--- a/externals/grill/py/readme.txt
+++ b/externals/grill/py/readme.txt
@@ -1,6 +1,6 @@
py/pyext - python script objects for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
diff --git a/externals/grill/py/source/bound.cpp b/externals/grill/py/source/bound.cpp
index de81bf1c..266bb9c5 100644
--- a/externals/grill/py/source/bound.cpp
+++ b/externals/grill/py/source/bound.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyext.h"
diff --git a/externals/grill/py/source/clmeth.cpp b/externals/grill/py/source/clmeth.cpp
index e1e01977..62da451b 100644
--- a/externals/grill/py/source/clmeth.cpp
+++ b/externals/grill/py/source/clmeth.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyext.h"
@@ -43,7 +45,7 @@ PyMethodDef pyext::attr_tbl[] =
const char *pyext::pyext_doc =
- "py/pyext - python external object for PD and Max/MSP, (C)2002-2007 Thomas Grill\n"
+ "py/pyext - python external object for PD and Max/MSP, (C)2002-2008 Thomas Grill\n"
"\n"
"This is the pyext base class. Available methods:\n"
"_outlet(self,ix,args...): Send a message to an indexed outlet\n"
diff --git a/externals/grill/py/source/main.cpp b/externals/grill/py/source/main.cpp
index 399f35c1..fc93084e 100644
--- a/externals/grill/py/source/main.cpp
+++ b/externals/grill/py/source/main.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
diff --git a/externals/grill/py/source/main.h b/externals/grill/py/source/main.h
index 86098b4c..0d5c001c 100644
--- a/externals/grill/py/source/main.h
+++ b/externals/grill/py/source/main.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __MAIN_H
@@ -28,7 +30,7 @@ WARRANTIES, see the file, "license.txt," in this distribution.
class pybase;
class FifoEl
- : public Fifo::Cell
+ : public FifoCell
{
public:
void Set(pybase *t,PyObject *f,PyObject *a) { th = t,fun = f,args = a; }
diff --git a/externals/grill/py/source/modmeth.cpp b/externals/grill/py/source/modmeth.cpp
index 039eb6cc..b388f240 100644
--- a/externals/grill/py/source/modmeth.cpp
+++ b/externals/grill/py/source/modmeth.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
@@ -38,7 +40,7 @@ PyMethodDef pybase::func_tbl[] =
};
const char *pybase::py_doc =
- "py/pyext - python external object for PD and Max/MSP, (C)2002-2007 Thomas Grill\n"
+ "py/pyext - python external object for PD and Max/MSP, (C)2002-2008 Thomas Grill\n"
"\n"
"This is the pyext module. Available function:\n"
"_send(args...): Send a message to a send symbol\n"
@@ -115,7 +117,7 @@ PyObject *pybase::py_blocksize(PyObject *self,PyObject *args)
PyObject *pybase::py_searchpaths(PyObject *self,PyObject *args)
{
-#if FLEXT_SYS == FLEXT_SYS_PD && defined(PY_USE_INOFFICIAL)
+#if FLEXT_SYS == FLEXT_SYS_PD && defined(PD_DEVEL_VERSION) && defined(PY_USE_INOFFICIAL)
PyObject *ret = PyList_New(0);
char *dir;
for(int i = 0; (dir = namelist_get(sys_searchpath,i)) != NULL; ++i)
@@ -129,7 +131,7 @@ PyObject *pybase::py_searchpaths(PyObject *self,PyObject *args)
PyObject *pybase::py_helppaths(PyObject *self,PyObject *args)
{
-#if FLEXT_SYS == FLEXT_SYS_PD && defined(PY_USE_INOFFICIAL)
+#if FLEXT_SYS == FLEXT_SYS_PD && defined(PD_DEVEL_VERSION) && defined(PY_USE_INOFFICIAL)
PyObject *ret = PyList_New(0);
char *dir;
for(int i = 0; (dir = namelist_get(sys_helppath,i)) != NULL; ++i)
diff --git a/externals/grill/py/source/py.cpp b/externals/grill/py/source/py.cpp
index c7b526a0..1745ad74 100644
--- a/externals/grill/py/source/py.cpp
+++ b/externals/grill/py/source/py.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
@@ -241,7 +243,7 @@ void pyobj::m_set(int argc,const t_atom *argv)
void pyobj::m_help()
{
post("");
- post("%s %s - python script object, (C)2002-2007 Thomas Grill",thisName(),PY__VERSION);
+ post("%s %s - python script object, (C)2002-2008 Thomas Grill",thisName(),PY__VERSION);
#ifdef FLEXT_DEBUG
post("DEBUG VERSION, compiled on " __DATE__ " " __TIME__);
#endif
diff --git a/externals/grill/py/source/pyargs.cpp b/externals/grill/py/source/pyargs.cpp
index 38cfbc54..73d8f027 100644
--- a/externals/grill/py/source/pyargs.cpp
+++ b/externals/grill/py/source/pyargs.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
diff --git a/externals/grill/py/source/pyatom.cpp b/externals/grill/py/source/pyatom.cpp
index 0af1b5e0..7b45028e 100644
--- a/externals/grill/py/source/pyatom.cpp
+++ b/externals/grill/py/source/pyatom.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyatom.h"
diff --git a/externals/grill/py/source/pyatom.h b/externals/grill/py/source/pyatom.h
index 3c20c66b..beff390a 100644
--- a/externals/grill/py/source/pyatom.h
+++ b/externals/grill/py/source/pyatom.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "main.h"
diff --git a/externals/grill/py/source/pybase.cpp b/externals/grill/py/source/pybase.cpp
index 16d9301e..c22a1143 100644
--- a/externals/grill/py/source/pybase.cpp
+++ b/externals/grill/py/source/pybase.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
@@ -105,7 +107,7 @@ void pybase::lib_setup()
post("");
post("------------------------------------------------");
post("py/pyext %s - python script objects",PY__VERSION);
- post("(C)2002-2007 Thomas Grill - http://grrrr.org/ext");
+ post("(C)2002-2008 Thomas Grill - http://grrrr.org/ext");
post("");
post("using Python %s",Py_GetVersion());
@@ -199,7 +201,7 @@ void pybase::lib_setup()
PyModule_AddObject(module_obj,"Bundle",(PyObject *)&pyBundle_Type);
// -------------------------------------------------------------
-#ifdef PY_USE_INOFFICIAL
+#if FLEXT_SYS == FLEXT_SYS_PD && defined(PD_DEVEL_VERSION) && defined(PY_USE_INOFFICIAL)
// add PD paths
char *dir;
diff --git a/externals/grill/py/source/pybase.h b/externals/grill/py/source/pybase.h
index 437fa85f..48e2f772 100644
--- a/externals/grill/py/source/pybase.h
+++ b/externals/grill/py/source/pybase.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and MaxMSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYBASE_H
@@ -17,24 +19,24 @@ WARRANTIES, see the file, "license.txt," in this distribution.
#include "pybundle.h"
#ifdef PY_USE_GIL
- typedef PyGILState_STATE ThrState;
+ typedef PyGILState_STATE ThrState;
#else
- typedef PyThreadState *ThrState;
+ typedef PyThreadState *ThrState;
#endif
class pybase
: public flext
{
public:
- pybase();
- virtual ~pybase();
+ pybase();
+ virtual ~pybase();
void Exit();
- static PyObject *MakePyArgs(const t_symbol *s,int argc,const t_atom *argv,int inlet = -1);
- static PyObject *MakePyArg(const t_symbol *s,int argc,const t_atom *argv);
- static const t_symbol *GetPyArgs(AtomList &lst,PyObject *pValue,int offs = 0);
- static const t_symbol *GetPyAtom(AtomList &lst,PyObject *pValue);
+ static PyObject *MakePyArgs(const t_symbol *s,int argc,const t_atom *argv,int inlet = -1);
+ static PyObject *MakePyArg(const t_symbol *s,int argc,const t_atom *argv);
+ static const t_symbol *GetPyArgs(AtomList &lst,PyObject *pValue,int offs = 0);
+ static const t_symbol *GetPyAtom(AtomList &lst,PyObject *pValue);
static void lib_setup();
@@ -43,48 +45,48 @@ protected:
virtual void DumpOut(const t_symbol *sym,int argc,const t_atom *argv) = 0;
void m__dir(PyObject *obj);
- void m__doc(PyObject *obj);
+ void m__doc(PyObject *obj);
void m_dir() { m__dir(module); }
void mg_dir(AtomList &lst) { m__dir(module); }
void m_doc() { m__doc(dict); }
std::string modname; // module name
- PyObject *module,*dict; // object module and associated dictionary
+ PyObject *module,*dict; // object module and associated dictionary
- static const char *py_doc;
+ static const char *py_doc;
void GetDir(PyObject *obj,AtomList &lst);
- AtomList args;
+ AtomList args;
void AddCurrentPath(flext_base *o);
- void SetArgs();
+ void SetArgs();
bool OutObject(flext_base *ext,int o,PyObject *obj);
// reload module and all connected objects
void Reload();
- bool ImportModule(const char *name);
- void UnimportModule();
- bool ReloadModule();
+ bool ImportModule(const char *name);
+ void UnimportModule();
+ bool ReloadModule();
// Get module registry
- PyObject *GetRegistry(const char *regname);
+ PyObject *GetRegistry(const char *regname);
// Set module registry
- void SetRegistry(const char *regname,PyObject *reg);
+ void SetRegistry(const char *regname,PyObject *reg);
// Register object
- void Register(PyObject *reg);
+ void Register(PyObject *reg);
// Unregister object
- void Unregister(PyObject *reg);
+ void Unregister(PyObject *reg);
- virtual void LoadModule() = 0;
- virtual void UnloadModule() = 0;
+ virtual void LoadModule() = 0;
+ virtual void UnloadModule() = 0;
- virtual void Load() = 0;
- virtual void Unload() = 0;
+ virtual void Load() = 0;
+ virtual void Unload() = 0;
void OpenEditor();
@@ -99,50 +101,50 @@ protected:
void Report() { while(PyErr_Occurred()) PyErr_Print(); }
- static bool IsAnything(const t_symbol *s) { return s && s != sym_float && s != sym_int && s != sym_symbol && s != sym_list && s != sym_pointer; }
- static bool IsAtom(const t_symbol *s) { return s == sym_float || s == sym_int || s == sym_symbol || s == sym_pointer; }
+ static bool IsAnything(const t_symbol *s) { return s && s != sym_float && s != sym_int && s != sym_symbol && s != sym_list && s != sym_pointer; }
+ static bool IsAtom(const t_symbol *s) { return s == sym_float || s == sym_int || s == sym_symbol || s == sym_pointer; }
-// enum retval { nothing,atom,sequ };
+// enum retval { nothing,atom,sequ };
- // --- module stuff -----
+ // --- module stuff -----
- static PyObject *module_obj,*module_dict;
- static PyObject *builtins_obj,*builtins_dict;
- static PyMethodDef func_tbl[],attr_tbl[];
+ static PyObject *module_obj,*module_dict;
+ static PyObject *builtins_obj,*builtins_dict;
+ static PyMethodDef func_tbl[],attr_tbl[];
- static PyObject *py__doc__(PyObject *,PyObject *args);
- static PyObject *py_send(PyObject *,PyObject *args);
+ static PyObject *py__doc__(PyObject *,PyObject *args);
+ static PyObject *py_send(PyObject *,PyObject *args);
#ifdef FLEXT_THREADS
- static PyObject *py_priority(PyObject *,PyObject *args);
+ static PyObject *py_priority(PyObject *,PyObject *args);
#endif
- static PyObject *py_arraysupport(PyObject *,PyObject *args);
- static PyObject *py_samplerate(PyObject *,PyObject *args);
- static PyObject *py_blocksize(PyObject *,PyObject *args);
+ static PyObject *py_arraysupport(PyObject *,PyObject *args);
+ static PyObject *py_samplerate(PyObject *,PyObject *args);
+ static PyObject *py_blocksize(PyObject *,PyObject *args);
- static PyObject *py_searchpaths(PyObject *,PyObject *args);
- static PyObject *py_helppaths(PyObject *,PyObject *args);
+ static PyObject *py_searchpaths(PyObject *,PyObject *args);
+ static PyObject *py_helppaths(PyObject *,PyObject *args);
#if FLEXT_SYS == FLEXT_SYS_PD
- static PyObject *py_getvalue(PyObject *,PyObject *args);
- static PyObject *py_setvalue(PyObject *,PyObject *args);
+ static PyObject *py_getvalue(PyObject *,PyObject *args);
+ static PyObject *py_setvalue(PyObject *,PyObject *args);
#endif
static PyObject *py_list(PyObject *,PyObject *args);
static PyObject *py_tuple(PyObject *,PyObject *args);
- // ----thread stuff ------------
+ // ----thread stuff ------------
- virtual void m_stop(int argc,const t_atom *argv);
+ virtual void m_stop(int argc,const t_atom *argv);
- bool respond;
+ bool respond;
#ifdef FLEXT_THREADS
- int thrcount;
+ int thrcount;
bool shouldexit;
- int stoptick;
+ int stoptick;
Timer stoptmr;
- void tick(void *);
+ void tick(void *);
#endif
int detach;
@@ -187,7 +189,7 @@ protected:
static PyFifo qufifo;
static ThrCond qucond;
-
+
#ifndef PY_USE_GIL
static ThrState pythrsys;
#endif
@@ -201,7 +203,7 @@ protected:
public:
- static void AddToPath(const char *dir);
+ static void AddToPath(const char *dir);
#ifdef FLEXT_THREADS
// this is especially needed when one py/pyext object calls another one
@@ -212,43 +214,43 @@ public:
#ifdef PY_USE_GIL
static inline ThrState FindThreadState() { return ThrState(); }
- static inline ThrState PyLock(ThrState = ThrState()) { return PyGILState_Ensure(); }
- static inline ThrState PyLockSys() { return PyLock(); }
- static inline void PyUnlock(ThrState st) { PyGILState_Release(st); }
+ static inline ThrState PyLock(ThrState = ThrState()) { return PyGILState_Ensure(); }
+ static inline ThrState PyLockSys() { return PyLock(); }
+ static inline void PyUnlock(ThrState st) { PyGILState_Release(st); }
#else // PY_USE_GIL
static ThrState FindThreadState();
static void FreeThreadState();
- static ThrState PyLock(ThrState st = FindThreadState())
+ static ThrState PyLock(ThrState st = FindThreadState())
{
- if(!IsSystemThread() || !lockcount++) PyEval_AcquireLock();
- return PyThreadState_Swap(st);
+ if(st != pythrsys || !lockcount++) PyEval_AcquireLock();
+ return PyThreadState_Swap(st);
}
#if 1
- static inline ThrState PyLockSys() { return PyLock(); }
+ static inline ThrState PyLockSys() { return PyLock(); }
#else
- static ThrState PyLockSys()
+ static ThrState PyLockSys()
{
if(!lockcount++) PyEval_AcquireLock();
- return PyThreadState_Swap(pythrsys);
+ return PyThreadState_Swap(pythrsys);
}
#endif
- static void PyUnlock(ThrState st)
+ static void PyUnlock(ThrState st)
{
ThrState old = PyThreadState_Swap(st);
if(old != pythrsys || !--lockcount) PyEval_ReleaseLock();
}
#endif // PY_USE_GIL
-
+
#else // FLEXT_THREADS
- static inline ThrState PyLock(ThrState = NULL) { return NULL; }
- static inline ThrState PyLockSys() { return NULL; }
- static inline void PyUnlock(ThrState st) {}
+ static inline ThrState PyLock(ThrState = NULL) { return NULL; }
+ static inline ThrState PyLockSys() { return NULL; }
+ static inline void PyUnlock(ThrState st) {}
#endif
- static PyObject* StdOut_Write(PyObject* Self, PyObject* Args);
+ static PyObject* StdOut_Write(PyObject* Self, PyObject* Args);
};
#endif
diff --git a/externals/grill/py/source/pybuffer.cpp b/externals/grill/py/source/pybuffer.cpp
index 4f7155ea..c4c8585b 100644
--- a/externals/grill/py/source/pybuffer.cpp
+++ b/externals/grill/py/source/pybuffer.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
diff --git a/externals/grill/py/source/pybuffer.h b/externals/grill/py/source/pybuffer.h
index 3889e563..fe6bbe63 100644
--- a/externals/grill/py/source/pybuffer.h
+++ b/externals/grill/py/source/pybuffer.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYBUFFER_H
diff --git a/externals/grill/py/source/pybundle.cpp b/externals/grill/py/source/pybundle.cpp
index ee2e16c0..cb7e927a 100644
--- a/externals/grill/py/source/pybundle.cpp
+++ b/externals/grill/py/source/pybundle.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyprefix.h"
diff --git a/externals/grill/py/source/pybundle.h b/externals/grill/py/source/pybundle.h
index 1e840eb5..f525f219 100644
--- a/externals/grill/py/source/pybundle.h
+++ b/externals/grill/py/source/pybundle.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYBUNDLE_H
diff --git a/externals/grill/py/source/pydsp.cpp b/externals/grill/py/source/pydsp.cpp
index 07fa75af..38edb6cd 100644
--- a/externals/grill/py/source/pydsp.cpp
+++ b/externals/grill/py/source/pydsp.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef PY_NODSP
diff --git a/externals/grill/py/source/pyext.cpp b/externals/grill/py/source/pyext.cpp
index 2eabf12e..b2b7baca 100644
--- a/externals/grill/py/source/pyext.cpp
+++ b/externals/grill/py/source/pyext.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyext.h"
@@ -510,7 +512,7 @@ bool pyext::CbMethodResort(int n,const t_symbol *s,int argc,const t_atom *argv)
void pyext::m_help()
{
post("");
- post("%s %s - python class object, (C)2002-2005 Thomas Grill",thisName(),PY__VERSION);
+ post("%s %s - python class object, (C)2002-2008 Thomas Grill",thisName(),PY__VERSION);
#ifdef FLEXT_DEBUG
post("DEBUG VERSION, compiled on " __DATE__ " " __TIME__);
#endif
diff --git a/externals/grill/py/source/pyext.h b/externals/grill/py/source/pyext.h
index 14adace7..acfef40d 100644
--- a/externals/grill/py/source/pyext.h
+++ b/externals/grill/py/source/pyext.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYEXT_H
diff --git a/externals/grill/py/source/pymeth.cpp b/externals/grill/py/source/pymeth.cpp
index ff0d6b83..e696e89b 100644
--- a/externals/grill/py/source/pymeth.cpp
+++ b/externals/grill/py/source/pymeth.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"
@@ -282,7 +284,7 @@ void pymeth::m_set(int argc,const t_atom *argv)
void pymeth::m_help()
{
post("");
- post("%s %s - python method object, (C)2002-2005 Thomas Grill",thisName(),PY__VERSION);
+ post("%s %s - python method object, (C)2002-2008 Thomas Grill",thisName(),PY__VERSION);
#ifdef FLEXT_DEBUG
post("DEBUG VERSION, compiled on " __DATE__ " " __TIME__);
#endif
diff --git a/externals/grill/py/source/pyprefix.h b/externals/grill/py/source/pyprefix.h
index 42befa60..50deefb9 100644
--- a/externals/grill/py/source/pyprefix.h
+++ b/externals/grill/py/source/pyprefix.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and MaxMSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYPREFIX_H
diff --git a/externals/grill/py/source/pysymbol.cpp b/externals/grill/py/source/pysymbol.cpp
index a78c39ce..2e0a7264 100644
--- a/externals/grill/py/source/pysymbol.cpp
+++ b/externals/grill/py/source/pysymbol.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2007 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pyprefix.h"
diff --git a/externals/grill/py/source/pysymbol.h b/externals/grill/py/source/pysymbol.h
index 3de4cb00..6ab0aac9 100644
--- a/externals/grill/py/source/pysymbol.h
+++ b/externals/grill/py/source/pysymbol.h
@@ -1,11 +1,13 @@
/*
-
py/pyext - python script object for PD and Max/MSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#ifndef __PYSYMBOL_H
diff --git a/externals/grill/py/source/register.cpp b/externals/grill/py/source/register.cpp
index b34fa209..0f8684b6 100644
--- a/externals/grill/py/source/register.cpp
+++ b/externals/grill/py/source/register.cpp
@@ -1,11 +1,13 @@
/*
-
py/pyext - python external object for PD and MaxMSP
-Copyright (c)2002-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c)2002-2008 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
+$LastChangedRevision: 26 $
+$LastChangedDate: 2008-01-03 17:20:03 +0100 (Thu, 03 Jan 2008) $
+$LastChangedBy: thomas $
*/
#include "pybase.h"