Hi all,
I just want to announce a new object for pd. It's called maphash, with additional mapread and mapwrite objects and implements hashtables to store and retrieve arbitrary lists referenced by arbitrary floats or symbols as keyvalues. I use it for quite a while now and it seems to be pretty stable. Below is a somewhat clearer description. For those who are interested it's located at:
icem-www.folkwang-hochschule.de/~finnendahl/pd.html
In the moment the makefile is for Linux only. It should compile right away on windows, as it doesn't use any linux specific stuff. Maybe someone can provide the necessary changes as I don't know anything of windows at all?
-- orm
Description
The maphash/mapwrite/mapread externals implement hashtables for the association of arbitrary lists to symbols or numbers. In other words it provides a namespace in which values can be assigned to symbols or numbers for later retrieval, comparable to value assignment in a programming language like pascal or c. The associated values can be retrieved and set locally at different locations within a patch by using multiple instances of the mapread or mapwrite object. In this sense, the object is similar to the table mechanism of pd (with the respective tabread and tabwrite objects to store and retrieve values), with the difference of being able to store symbols and lists. Another source of inspiration was Max/MSP's coll object. The code is based on Travis Newhouse's mapper object found at http://www-cse.ucsd.edu/~newhouse/externs and is released under the Gnu Public License.
Cool, I've been wanting one of these for a bit - never got 'round to it. If no one else gets round to it I'll knock you up a windows makefile later in the week
cheers
mark
-----Original Message----- From: Orm Finnendahl [mailto:finnendahl@folkwang-hochschule.de] Sent: 01 April 2002 19:43 To: pd-list@iem.kug.ac.at Subject: [PD] announce: maphash object for pd
Hi all,
I just want to announce a new object for pd. It's called maphash, with additional mapread and mapwrite objects and implements hashtables to store and retrieve arbitrary lists referenced by arbitrary floats or symbols as keyvalues. I use it for quite a while now and it seems to be pretty stable. Below is a somewhat clearer description. For those who are interested it's located at:
icem-www.folkwang-hochschule.de/~finnendahl/pd.html
In the moment the makefile is for Linux only. It should compile right away on windows, as it doesn't use any linux specific stuff. Maybe someone can provide the necessary changes as I don't know anything of windows at all?
-- orm
Description
The maphash/mapwrite/mapread externals implement hashtables for the association of arbitrary lists to symbols or numbers. In other words it provides a namespace in which values can be assigned to symbols or numbers for later retrieval, comparable to value assignment in a programming language like pascal or c. The associated values can be retrieved and set locally at different locations within a patch by using multiple instances of the mapread or mapwrite object. In this sense, the object is similar to the table mechanism of pd (with the respective tabread and tabwrite objects to store and retrieve values), with the difference of being able to store symbols and lists. Another source of inspiration was Max/MSP's coll object. The code is based on Travis Newhouse's mapper object found at http://www-cse.ucsd.edu/~newhouse/externs and is released under the Gnu Public License.
I compiled mapper on W2000 and VC6 and works fine. The NT makefile I used is down-below.
"C:\Archivos de Programa..." should be changed to "C:\Program Files" although.
Ricardo
Mensaje citado por: mark mark@junklight.com:
Cool, I've been wanting one of these for a bit - never got 'round to it. If no one else gets round to it I'll knock you up a windows makefile
later in the week
cheers
mark
-----Original Message----- From: Orm Finnendahl [mailto:finnendahl@folkwang-hochschule.de] Sent: 01 April 2002 19:43 To: pd-list@iem.kug.ac.at Subject: [PD] announce: maphash object for pd
Hi all,
I just want to announce a new object for pd. It's called maphash, with additional mapread and mapwrite objects and implements hashtables to store and retrieve arbitrary lists referenced by arbitrary floats or symbols as keyvalues. I use it for quite a while now and it seems to be pretty stable. Below is a somewhat clearer description. For those who are interested it's located at:
icem-www.folkwang-hochschule.de/~finnendahl/pd.html
In the moment the makefile is for Linux only. It should compile right away on windows, as it doesn't use any linux specific stuff. Maybe someone can provide the necessary changes as I don't know anything of windows at all?
-- orm
Description
The maphash/mapwrite/mapread externals implement hashtables for the association of arbitrary lists to symbols or numbers. In other words it provides a namespace in which values can be assigned to symbols or numbers for later retrieval, comparable to value assignment in a programming language like pascal or c. The associated values can be retrieved and set locally at different locations within a patch by using multiple instances of the mapread or mapwrite object. In this sense, the object is similar to the table mechanism of pd (with the respective tabread and tabwrite objects to store and retrieve values), with the difference of being able to store symbols and lists. Another source of inspiration was Max/MSP's coll object. The code is based on Travis Newhouse's mapper object found at http://www-cse.ucsd.edu/~newhouse/externs and is released under the Gnu Public License.
current: echo make pd_nt
# ----------------------- NT ----------------------------
pd_nt: mapper.dll
.SUFFIXES: .dll
PD_DIR = "C:\pd\bin\pd"
PDNTINCLUDE = /I. /I$(PD_DIR)\src
/I"C:\Archivos de Programa\Microsoft Visual Studio\VC98\include"
PDNTLDIR = "C:\Archivos de Programa\Microsoft Visual Studio\VC98\lib"
PDNTLIB = $(PDNTLDIR)\libc.lib
$(PDNTLDIR)\oldnames.lib
$(PDNTLDIR)\kernel32.lib
C:\pd\bin\pd.lib
PDNTCFLAGS = /W3 /WX /DNT /DPD /nologo
#TARGET = ..\mapper.dll OBJS = mapper.obj hashtable.obj keyval.obj tdebug.obj
mapper.dll: $(OBJS) link /dll /export:$*_setup $(PDNTLIB) $(OBJS)
.c.obj: cl $(PDNTCFLAGS) $(PDNTINCLUDE) /c $*.c
clean: del *.obj *.exp *.lib *.dll
Ricardo Climent schrieb:
I compiled mapper on W2000 and VC6 and works fine. The NT makefile I used is down-below.
Ooops, I don't know how you succeeded without changing the code. For me it did not work (the compiler complained about the code...) but I managed to get maphash, mapread and mapwrite compiled for Win. Find it at http://www.akustische-kunst.de/puredata/ Makefile and compiled DLL included.
Olaf
I still have the dos shell open, just pasting.
C:\pd\mapper>cd src
I compiled here: C:\pd\mapper\src>nmake pd_nt
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
cl /W3 /WX /DNT /DPD /nologo /I. /I"C:\pd\bin\pd"\src /I"C:\Archivos de
Programa\Microsoft Visual Studio\VC98\include" /c mapper.c
mapper.c
cl /W3 /WX /DNT /DPD /nologo /I. /I"C:\pd\bin\pd"\src /I"C:\Archivos de
Programa\Microsoft Visual Studio\VC98\include" /c hashtable.c
hashtable.c
cl /W3 /WX /DNT /DPD /nologo /I. /I"C:\pd\bin\pd"\src /I"C:\Archivos de
Programa\Microsoft Visual Studio\VC98\include" /c keyval.c
keyval.c
cl /W3 /WX /DNT /DPD /nologo /I. /I"C:\pd\bin\pd"\src /I"C:\Archivos de
Programa\Microsoft Visual Studio\VC98\include" /c tdebug.c
tdebug.c
link /dll /export:mapper_setup "C:\Archivos de Programa\Microsoft Visual
Studio\VC98\lib"\libc.lib "C:\Archivos de Programa\Microsoft Visual Studio\VC9
8\lib"\oldnames.lib "C:\Archivos de Programa\Microsoft Visual Studio\VC98\lib"
kernel32.lib C:\pd\bin\pd.lib mapper.obj hashtable.obj keyval.obj tdebug.obj
Microsoft (R) Incremental Linker Version 6.00.8168
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
Creating library mapper.lib and object mapper.exp
I called pd plus the lib here:
C:\pd\mapper\src>C:/pd/bin/d -lib C:/pd/mapper/src/mapper "C:/pd/bin/d" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.
C:\pd\mapper\src>C:/pd/bin/pd -lib C:/pd/mapper/src/mapper midiInOpen: No hay ning·n controlador instalado en su sistema. C:/pd
And finally this is the pd example test.
MAPPER_OUT: symbol color
R
Mensaje citado por: Olaf Matthes olaf.matthes@gmx.de:
Ricardo Climent schrieb:
I compiled mapper on W2000 and VC6 and works fine. The NT makefile I
used is
down-below.
Ooops, I don't know how you succeeded without changing the code. For me it did not work (the compiler complained about the code...) but I managed to get maphash, mapread and mapwrite compiled for Win. Find it at http://www.akustische-kunst.de/puredata/ Makefile and compiled DLL included.
Olaf
Ricardo Climent
http://acusmatica.com
ASP database for composers.
Hi Ricardo,
I'm not sure whether you are aware that the mapper and maphash/mapwrite/mapread externals are different. I used the mapper object as starting point but the maphash/mapwrite/mapread external is more generalized and has lots of additional features.
Orm
Am Montag, den 01. April 2002 um 23:21:30 Uhr (+0100) schrieb Ricardo Climent:
I compiled mapper on W2000 and VC6 and works fine. The NT makefile I used is down-below.
"C:\Archivos de Programa..." should be changed to "C:\Program Files" although.
Ricardo