-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 2012-10-24 02:56, Miller Puckette wrote: > I think the most nearly correct thing to do would be to change the > signal structure to add an ?allocated-size" field, and put what is > now calcsize in the s_n field of the signal.
<m_pd.h> typedef struct _signal { int s_n; /* number of points in the array */ t_sample *s_vec; /* the array */ t_float s_sr; /* sample rate */ int s_refcount; /* number of times used */ int s_isborrowed; /* whether we're going to borrow our array */ struct _signal *s_borrowedfrom; /* signal to borrow it from */ struct _signal *s_nextfree; /* next in freelist */ struct _signal *s_nextused; /* next in used list */ int s_vecsize; /* allocated size of array in points */ } t_signal; </m_pd.h> now i haven't recently checked the mechanics how all these variables are used internally, but according to the comments i would have guessed that, "s_vecsize" is the "allocated-size" field, and "s_n" is the actual (to-be-computed) vectorsize. > > I'm not 100% sure I can change the size of the signal structure > without breaking binary compatibility with older objects. i think that "t_signal" is used by reference everywhere, which would grant binary compatibility, as long as you only add the end of the struct. > However, there's other stuff I want to add (to support objects > being able to detect when there's no signal connected to an > input). I think when I make that change I can more important for me would be fields to separate overlap/resampling/samplerate. PLLLLLEAASE! > try making the non-power-of-two thing work too. But I'm not sure > anyone will ever use it - there are other ways to process images > these days :) there have been other ways to process images before... i still would love to see non-2^n blocksizes, ideally allowing reblocking to sub-patches if one blocksize is an integer multiple of the other. mfgasdr IOhannes -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAlCHl58ACgkQkX2Xpv6ydvRsDwCg0PdpIpSJWG8BSV8BzjKhyIYQ hnMAnjOpUesgkuagN8gxTkVuil+HYvmu =iFUL -----END PGP SIGNATURE----- _______________________________________________ Pd-dev mailing list Pd-dev@iem.at http://lists.puredata.info/listinfo/pd-dev