static int detector_add_scan(MSFilter *f, void *arg) { DetectorState *s=(DetectorState *)f->data; MSToneDetectorDef *def=(MSToneDetectorDef*)arg; s->tone_def=def; goertzel_state_init(&s->tone_gs,def->frequency,s->rate); return 0; }
static int detector_add_scan(MSFilter *f, void *arg){ DetectorState *s=(DetectorState *)f->data; MSToneDetectorDef *def=(MSToneDetectorDef*)arg; int i=find_free_slot(s); if (i!=-1){ s->tone_def[i]=*def; s->nscans++; goertzel_state_init(&s->tone_gs[i],def->frequency,s->rate); return 0; } return -1; }