Newer
Older
#include <spot/kripke/kripke.hh>
#include "LDDGraph.h"
#include "HybridKripkeState.h"
#include "HybridKripkeIterator.h"
HybridKripkeIterator::HybridKripkeIterator(HybridKripkeState &st, bdd cnd): kripke_succ_iterator(cnd)
return !m_current_state->getListSucc()->empty();
return m_current_edge<m_current_state->getListSucc()->size();
bool HybridKripkeIterator::done() const {
return m_current_edge==m_current_state->getListSucc()->size();
HybridKripkeState* HybridKripkeIterator::dst() const
succ_t succ_elt= (*(m_current_state->getListSucc()))[m_current_edge];
succ_t succ_elt=(*(m_current_state->getListSucc()))[m_current_edge];
string name=string(m_net->getTransitionName(succ_elt.transition));
spot::bdd_dict *p=m_dict_ptr->get();
spot::formula f=spot::formula::ap(name);
bdd result=bdd_ithvar((p->var_map.find(f))->second);
return result & spot::kripke_succ_iterator::cond();
}
/*spot::acc_cond::mark_t SogKripkeIterator::acc() const {
//cout<<"Iterator acc()\n";
return 0U;
}*/
HybridKripkeIterator::~HybridKripkeIterator()
void HybridKripkeIterator::recycle(HybridKripkeState &st, bdd cond)
spot::kripke_succ_iterator::recycle(cond);
}
NewNet * HybridKripkeIterator::m_net;
spot::bdd_dict_ptr* HybridKripkeIterator::m_dict_ptr;