spot/src/tgba/tgbabddconcrete.cc
Alexandre Duret-Lutz 885143309a * src/tgba/tgba.hh: Rename as ...
* src/tgba/public.hh: .. this.
* src/tgba/tgba.hh: New file.
* src/tgba/Makefile.am (libtgba_la_SOURCES): Add public.hh.
* src/tgba/tgbabddconcrete.hh (tgba_bdd_concrete): Inherit from tgba.
(tgba_bdd_concrete::init_iter): Delete.
(tgba_bdd_concrete::succ_iter): Take a state_bdd as argument,
not a bdd.
* src/tgba/tgbabddconcrete.cc: Likewise.
2003-05-26 12:34:15 +00:00

52 lines
1,020 B
C++

#include "tgbabddconcrete.hh"
namespace spot
{
tgba_bdd_concrete::tgba_bdd_concrete(const tgba_bdd_factory& fact)
: data_(fact.get_core_data()), dict_(fact.get_dict())
{
}
tgba_bdd_concrete::tgba_bdd_concrete(const tgba_bdd_factory& fact, bdd init)
: data_(fact.get_core_data()), dict_(fact.get_dict()), init_(init)
{
}
tgba_bdd_concrete::~tgba_bdd_concrete()
{
}
void
tgba_bdd_concrete::set_init_state(bdd s)
{
init_ = s;
}
state_bdd
tgba_bdd_concrete::get_init_state() const
{
return init_;
}
tgba_succ_iterator_concrete*
tgba_bdd_concrete::succ_iter(state_bdd state) const
{
bdd succ_set = bdd_replace(bdd_exist(data_.relation & state.as_bdd(),
data_.now_set),
data_.next_to_now);
return new tgba_succ_iterator_concrete(data_, succ_set);
}
const tgba_bdd_dict&
tgba_bdd_concrete::get_dict() const
{
return dict_;
}
const tgba_bdd_core_data&
tgba_bdd_concrete::get_core_data() const
{
return data_;
}
}