bool TlppVerify::DependencyProcess()

in src/sim/sim_tlpp.cc [69:97]


bool TlppVerify::DependencyProcess(bool before_run,
    bool pop_prev, bool pop_next,
    bool push_prev, bool push_next,
    Dep_q_t *pop_prev_q, Dep_q_t *pop_next_q,
    Dep_q_t *push_prev_q, Dep_q_t *push_next_q,
    CORE_TYPE push_to_prev_q_indx, CORE_TYPE push_to_next_q_indx) {

  int val = 1;
  if (before_run) {
    if (pop_prev && pop_prev_q->size() == 0) {
      return false;
    }
    if (pop_next && pop_next_q->size() == 0) {
      return false;
    }
    if (pop_next) pop_next_q->pop();
    if (pop_prev) pop_prev_q->pop();
  } else {
    if (push_prev) {
      push_prev_q->push(val);
      dep_push_event_.push(push_to_prev_q_indx);
    }
    if (push_next) {
      push_next_q->push(val);
      dep_push_event_.push(push_to_next_q_indx);
    }
  }
  return true;
}