libpd does have a ringbuffer. My initial thought is to add a libpd layer where you do, in fact, pass in the instance and it either uses a lock or uses the ringbuffer for you. One reason why libpd does not lock by default, is that many of the language wrappers (C++, Java, etc) implement the locking t a higher level in a way that works best for that environment.
Dan Wilcox @danomatika https://twitter.com/danomatika danomatika.com http://danomatika.com/ robotcowboy.com http://robotcowboy.com/
On Apr 8, 2016, at 3:56 PM, Alex x37v.alex@gmail.com wrote:
Yeah, the Camomile stuff is interesting, it would be nice if that sort of 'lock' do action 'unlock' thing was dealt with internally in the library, or better yet, weren't required because you just pass an instance along and operate on the instance because every method would have the instance passed along with it :)
Either way, looking forward to what comes of that!
On Fri, Apr 8, 2016 at 2:44 PM, Dan Wilcox <danomatika@gmail.com mailto:danomatika@gmail.com> wrote: See Pierre’s details on how he built Camomille: https://lists.puredata.info/pipermail/pd-dev/2016-04/020637.html https://lists.puredata.info/pipermail/pd-dev/2016-04/020637.html
Miller has included *preliminary* multi instance support and now we have some good feedback on what still needs to be done.
Dan Wilcox @danomatika https://twitter.com/danomatika danomatika.com http://danomatika.com/ robotcowboy.com http://robotcowboy.com/
On Apr 8, 2016, at 3:13 PM, Alex <x37v.alex@gmail.com mailto:x37v.alex@gmail.com> wrote:
All quite cool..
what I'd _really_ love is thread safe muliti instance support in libpd with 'user data' entries in the callbacks for all the callback methods and an 'instance' pointer included in every appropriate library call. I figure it would be dead simple, once that is provided, to also support the existing libpd interface with 1 global instance..
On Fri, Apr 8, 2016 at 1:02 PM, Dan Wilcox <danomatika@gmail.com mailto:danomatika@gmail.com> wrote: Here’s the diffs as shown by GitHub: https://github.com/libpd/libpd/pull/97/files https://github.com/libpd/libpd/pull/97/files
I’d do it, but I think the commits should be yours and not mine :)
Dan Wilcox @danomatika https://twitter.com/danomatika danomatika.com http://danomatika.com/ robotcowboy.com http://robotcowboy.com/
On Apr 8, 2016, at 2:00 PM, Miller Puckette <msp@ucsd.edu mailto:msp@ucsd.edu> wrote:
That would be cool - otherwise just point me at the diffs and I'll rework them. I think they're rather self-contained, should be easy to hack in.
cheers M
On Fri, Apr 08, 2016 at 01:57:16PM -0600, Dan Wilcox wrote:
Although the branch is gone, the diffs are still there. If needed, I can manually re-add those changes & put them in a new branch.
Dan Wilcox @danomatika <https://twitter.com/danomatika https://twitter.com/danomatika> danomatika.com http://danomatika.com/ <http://danomatika.com/ http://danomatika.com/> robotcowboy.com http://robotcowboy.com/ <http://robotcowboy.com/ http://robotcowboy.com/>
On Apr 8, 2016, at 1:55 PM, Miller Puckette <msp@ucsd.edu mailto:msp@ucsd.edu> wrote:
No worries - that just means it's time for me to get back on it :)
M On Fri, Apr 08, 2016 at 01:46:32PM -0600, Dan Wilcox wrote:
It’s not. We started looking into it but realized the was a mismatch between the vanilla mirror we were using as a submodule in libpd. I then switched libpd to use the main pure-data git upstream so it would be easier torack your changes directly. The PR went out of scope by then though and we forgot to revisit it. Sorry!
Dan Wilcox @danomatika <https://twitter.com/danomatika https://twitter.com/danomatika> danomatika.com http://danomatika.com/ <http://danomatika.com/ http://danomatika.com/> robotcowboy.com http://robotcowboy.com/ <http://robotcowboy.com/ http://robotcowboy.com/> > On Apr 8, 2016, at 1:36 PM, Miller Puckette <msp@ucsd.edu mailto:msp@ucsd.edu> wrote: > > I thought the GUI stuff (which I adapted from Kjetil's first cut at it) was > already in libpd - if not I need to make a PR for it... > > cheers > M > > On Fri, Apr 08, 2016 at 01:12:30PM -0600, Dan Wilcox wrote: >> Miller was also looking into adding the ability to launch the gui to libpd. There was a discussion somewhere, I can’t find it right now... >> >> -------- >> Dan Wilcox >> @danomatika <https://twitter.com/danomatika https://twitter.com/danomatika> >> danomatika.com http://danomatika.com/ <http://danomatika.com/ http://danomatika.com/> >> robotcowboy.com http://robotcowboy.com/ <http://robotcowboy.com/ http://robotcowboy.com/> >>> On Apr 8, 2016, at 12:07 PM, pd-list-request@lists.iem.at mailto:pd-list-request@lists.iem.at wrote: >>> >>> From: Kjetil Matheussen <k.s.matheussen@gmail.com mailto:k.s.matheussen@gmail.com <mailto:k.s.matheussen@gmail.com mailto:k.s.matheussen@gmail.com>> >>> Subject: Re: [PD] pdlv2: generate lv2 plugins from pd patches >>> Date: April 8, 2016 at 11:08:29 AM MDT >>> To: Alex <x37v.alex@gmail.com mailto:x37v.alex@gmail.com <mailto:x37v.alex@gmail.com mailto:x37v.alex@gmail.com>> >>> Cc: "pd-list@lists.iem.at mailto:pd-list@lists.iem.at <mailto:pd-list@lists.iem.at mailto:pd-list@lists.iem.at>" <pd-list@lists.iem.at mailto:pd-list@lists.iem.at <mailto:pd-list@lists.iem.at mailto:pd-list@lists.iem.at>> >>> Reply-To: k.s.matheussen@notam02.no mailto:k.s.matheussen@notam02.no <mailto:k.s.matheussen@notam02.no mailto:k.s.matheussen@notam02.no> >>> >>> >>> You might have to merge inn libd from upstream though. Don't know how >>> much work that is. >>> >>> On Fri, Apr 8, 2016 at 7:06 PM, Alex <x37v.alex@gmail.com mailto:x37v.alex@gmail.com <mailto:x37v.alex@gmail.com mailto:x37v.alex@gmail.com>> wrote: >>> Great, I'll look into that when I get some more time! >>> >>> On Fri, Apr 8, 2016 at 9:55 AM, Kjetil Matheussen <k.s.matheussen@gmail.com mailto:k.s.matheussen@gmail.com <mailto:k.s.matheussen@gmail.com mailto:k.s.matheussen@gmail.com>> wrote: >>> >>> >>> On Fri, Apr 8, 2016 at 6:51 PM, Alex <x37v.alex@gmail.com mailto:x37v.alex@gmail.com <mailto:x37v.alex@gmail.com mailto:x37v.alex@gmail.com>> wrote: >>> hmm, that is interesting, is libpds simply part of the radium project or is it something you distribute separately? I should look into that. >>> >>> It's my branch of libpd on github. You can ignore the libpds part, and >>> just use libpd as you do already, only that this version of libpd also >>> provide pd gui. >>> >>> >> > >> _______________________________________________ >> Pd-list@lists.iem.at mailto:Pd-list@lists.iem.at mailing list >> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list https://lists.puredata.info/listinfo/pd-list >