void buddy_atom(t_buddy *x, t_atom *a) { t_member *m; long in = proxy_getinlet((t_object *)x); m = x->b_mem + in; m->m_on = true; m->m_argc = 1; m->m_argv[0] = *a; if (buddy_all(x)) { buddy_off(x); buddy_out(x); } }
void buddy_anything(t_buddy *x, t_symbol *s, short argc, t_atom *argv) { t_member *m; long in = proxy_getinlet((t_object *)x); m = x->b_mem + in; m->m_on = TRUE; atom_setsym(&m->m_argv[0], s); if (argc > 127) argc = 127; m->m_argc = argc + 1; sysmem_copyptr(argv,m->m_argv+1,argc * sizeof(t_atom)); if (buddy_all(x)) { buddy_off(x); buddy_out(x); } }