On Sun, Jan 28, 2018 at 11:47 AM, Ed Kelly via Pd-dev <pd-dev@lists.iem.at> wrote:
> Hi Devs, > > I'm attempting to port a library of MSP externals for LPC analysis and > resynthesis. > I've come across these elements from the Max API: > > t_ptr > <https://cycling74.com/sdk/max-sdk-7.3.3/html/group__misc.html#ga70766a030fcd392d4574fa59b296a68e> > sysmem_newptrclear > <https://cycling74.com/sdk/max-sdk-7.3.3/html/group__memory.html#ga1c178a079247f715c6e34c828d375324> > (long size) > and > void sysmem_freeptr > <https://cycling74.com/sdk/max-sdk-7.3.3/html/group__memory.html#ga200c82639e547869db1f3887d17102d3> > (void *ptr) > > My head has hit a block, and I need to learn about how Pd deals with these > aspects of memory / pointer allocation. > Do I need to just init a pointer in the code? > I guess you should use one or more of these functions from m_pd.h: /* --------------- memory management -------------------- */ EXTERN void *getbytes(size_t nbytes); EXTERN void *getzbytes(size_t nbytes); EXTERN void *copybytes(void *src, size_t nbytes); EXTERN void freebytes(void *x, size_t nbytes); EXTERN void *resizebytes(void *x, size_t oldsize, size_t newsize); getzbytes is probably the same as sysmem_newptrclear, and freebytes will do what sysmem_freeptr does. Martin
_______________________________________________ Pd-dev mailing list Pd-dev@lists.iem.at https://lists.puredata.info/listinfo/pd-dev