/** Find tags from given list. * * Copies values of argument tag list into the reference tags in the tag * list @a lst. * * @sa tl_gets() */ int tl_tgets(tagi_t lst[], tag_type_t tag, tag_value_t value, ...) { int n = 0; tagi_t *t; ta_list ta; ta_start(ta, tag, value); for (t = lst; t; t = (tagi_t *)t_next(t)) { tag_type_t tt = t->t_tag; if (!tt) continue; if (tt->tt_class == ref_tag_class) { assert(((tag_type_t)tt->tt_magic)->tt_class->tc_ref_set); n += tl_get(tt, (void *)t->t_value, ta_args(ta)); } #if !defined(NDEBUG) else if (tt->tt_class->tc_ref_set) { fprintf(stderr, "WARNING: tag %s::%s used in tl_tgets(lst)\n", tt->tt_ns, tt->tt_name); assert(tt->tt_class == ref_tag_class); } #endif } ta_end(ta); return n; }
void process_run (PPROCESS p) { unsigned int a,b,c,d,ip; PTHREAD t = tl_get (p->threads, &p->rthread); int interrupt_signal; p->rthread = p->rthread++ % tl_length (p->threads); }