[PD-dev] help coding an object, I need it cause I don't know better

Alexandre Torres Porres porres at gmail.com
Mon Oct 9 18:22:11 CEST 2023


Hi, I'm working on a new object that is kinda like [value], but much
simplified and you can set multiple variable names and output them all as a
list (only floats now). It's been fun and it was working, compiling with
some weird bugs. I then started revising it and when I thought I could be
fixing the last bug, code does not compile now.

What I'm doing is storing multiple variable values and variable names, just
like I'm doing with some float values for my new multichannel aware audio
objects (one value per channel).

So I have.

*typedef* *struct* _var{

    t_object    x_obj;

    t_int       x_n;    // number of given vars as arguments

    t_symbol  **x_sym;  // variable name

    *float*      *x_fval; // var value

}t_var;

Now, when initializing the variable, in "new", I am trying to get the value
of an existing variable name (which is created if it doesn't exist yet).
This is done in the same as in [value] by the way

In [value] you have     x->x_floatstar = value_get(s);

I got x->x_fval[i] = var_get(x->x_sym[i] = atom_getsymbol(av+i));

But this gives me the error

                       *

*var.c:80:22: **error: **assigning to 'float' from incompatible type
't_float *'*

*      (aka 'float *'); dereference with **

        x->x_fval[i] = var_get(x->x_sym[i] = atom_getsymbol(av+i));

*                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*



Funny enough, I had an older version that would compile and work very well
despite some crashes, that initialized x_fval as

*float*      **x_fval; // var value



Instead of just "*x_fval", which doesn't seem right.

Please help, and also, at this time, I could take suggestions of some nice
and free online C course that would make me intelligent to the point I
would have a minimum idea of what I am doing.

thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20231009/a716632f/attachment.htm>


More information about the Pd-dev mailing list