[Csnd-dev] passign and pset
| Date | 2021-10-20 21:57 |
| From | Eduardo Moguillansky |
| Subject | [Csnd-dev] passign and pset |
|
Hi, passign does not take pset defaults into consideration. I would like to fix this but the code is somewhat confusing to me. I think that the problem is that passign reads from init_event instead of using GetPFields. Is there any reason against using GetPFields?
int32_t pinit(CSOUND *csound, PINIT *p)
{
int32_t n;
int32_t nargs = p->OUTOCOUNT;
int32_t pargs = csound->init_event->pcnt;
int32_t start = (int32_t)(*p->start);
/* Should check that inits exist> */
int32_t k = (int32_t)(*p->end);
MYFLT *p0 =
if (*p->end!=FL(0.0)) {
if (k<pargs) pargs = k;
}
if (UNLIKELY(nargs>pargs))
csound->Warning(csound, Str("More arguments than p fields"));
pargs -= (int)*p->end;
for (n=0; (n<nargs) && (n<=pargs-start); n++) {
if (csound->ISSTRCOD(csound->init_event->p[n+start])) {
((STRINGDAT *)p->inits[n])->data =
cs_strdup(csound, get_arg_string(csound, csound->init_event->p[n+start]));
((STRINGDAT *)p->inits[n])->size =
strlen(((STRINGDAT *)p->inits[n])->data)+1;
}
else *p->inits[n] = csound->init_event->p[n+start];
}
return OK;
}
|
| Date | 2021-10-20 23:30 |
| From | Victor Lazzarini |
| Subject | Re: [Csnd-dev] [EXTERNAL] [Csnd-dev] passign and pset |
|
I don't think there is, maybe this was written before GetPfields was introduced.
Prof. Victor Lazzarini
Maynooth University
Ireland
On 20 Oct 2021, at 21:57, Eduardo Moguillansky <eduardo.moguillansky@gmail.com> wrote:
|
| Date | 2021-10-20 23:39 |
| From | John ff |
| Subject | Re: [Csnd-dev] [EXTERNAL] [Csnd-dev] passign and pset |
It was
On 20 Oct 2021, at 23:31, Victor Lazzarini <victor.lazzarini@mu.ie> wrote: I don't think there is, maybe this was written before GetPfields was introduced. |