static void awake(plan *ego_, enum wakefulness wakefulness) { P *ego = (P *) ego_; X(plan_awake)(ego->cld0, wakefulness); X(plan_awake)(ego->cld, wakefulness); mktwiddle(ego, wakefulness); }
void X(twiddle_awake)(enum wakefulness wakefulness, twid **pp, const tw_instr *instr, INT n, INT r, INT m) { switch (wakefulness) { case SLEEPY: twiddle_destroy(pp); break; default: mktwiddle(wakefulness, pp, instr, n, r, m); break; } }
static void awake_dit(plan *ego_, int flg) { P_dit *ego = (P_dit *) ego_; AWAKE(ego->cld, flg); if (flg) ego->W = mktwiddle(ego->m, ego->super.n, ego->super.g); else { free_twiddle(ego->W); ego->W = 0; } awake(ego_, flg); }
static void awake(plan *ego_, enum wakefulness wakefulness) { P *ego = (P *) ego_; X(plan_awake)(ego->cldf, wakefulness); switch (wakefulness) { case SLEEPY: X(ifree0)(ego->w); ego->w = 0; X(ifree0)(ego->W); ego->W = 0; break; default: A(!ego->w); mktwiddle(wakefulness, ego); break; } }