Martin,
Thanks for all your help. I have a final question about the sprintf solution.
I have managed to get the
out going(I think) but I am not quite undestanding the atol()inlet part. I
have this.
void window_getframe(t_window *x, t_symbol *sym)
{
char* decode;
char symstr;
x->sym->s_name = decode;
symstr = atol(decode);
frame = symstr;
}
But I get invalid conversion from 'char' to "IplImage*'. I have to read some
more. If I used sprintf to write
to an array a string/image formatted as a pointer and then turned that pointer
to a symbol, how do i
now convert the symbol back to a pointer of the original image, which I assume
should still be in
buffer?
Alain
> You can only work with atoms in pd's message system, and each atom usually
> contains a bang, a
float or a symbol. You could convert the pointer to a float but it probably
won't work because the
pointer is a large integer that won't be accurately represented as a float. You
could convert the pointer
to a symbol using something like:
> char symstr[10];
> t_symbol sym;
> sprintf(symstr, "%p", frame);
> sym = gensym(symstr);
> ...then send sym through the outlet and convert it back to a pointer at the
> receiving end by extracting
the string from the s_name field of the symbol and passing it to atol().
>
> Martin
>
_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list