Fix tgta_explicit not to inherit from ta_explicit to please clang++.

* src/ta/tgtaexplicit.cc, src/ta/tgtaexplicit.hh: Use a ta_explicit
attribute instead of inheriting from it.
(get_ta): New method.
* src/taalgos/minimize.cc, src/taalgos/minimize.hh,
src/taalgos/tgba2ta.cc, src/tgbatest/ltl2tgba.cc: Adjust usage.
* wrap/python/spot.i (as_ta): Remove, now that we have get_ta.
* wrap/python/ajax/spot.in: Use get_ta instead of as_ta.
This commit is contained in:
Alexandre Duret-Lutz 2012-06-28 16:55:36 +02:00
parent d4130f15bf
commit 941cb0b57b
8 changed files with 59 additions and 69 deletions

View file

@ -33,66 +33,67 @@ namespace spot
tgta_explicit::tgta_explicit(const tgba* tgba, bdd all_acceptance_conditions,
state_ta_explicit* artificial_initial_state,
bool own_tgba) :
ta_explicit(tgba, all_acceptance_conditions, artificial_initial_state, own_tgba)
ta_(tgba, all_acceptance_conditions, artificial_initial_state, own_tgba)
{
}
state*
tgta_explicit::get_init_state() const
{
return ta_explicit::get_artificial_initial_state();
return ta_.get_artificial_initial_state();
}
tgba_succ_iterator*
tgta_explicit::succ_iter(const spot::state* state, const spot::state*,
const tgba*) const
const tgba*) const
{
return ta_explicit::succ_iter(state);
return ta_.succ_iter(state);
}
bdd
tgta_explicit::compute_support_conditions(const spot::state* in) const
{
return get_tgba()->support_conditions(
((const state_ta_explicit*) in)->get_tgba_state());
const state_ta_explicit* s = down_cast<const state_ta_explicit*>(in);
assert(s);
return ta_.get_tgba()->support_conditions(s->get_tgba_state());
}
bdd
tgta_explicit::compute_support_variables(const spot::state* in) const
{
return get_tgba()->support_variables(
((const state_ta_explicit*) in)->get_tgba_state());
const state_ta_explicit* s = down_cast<const state_ta_explicit*>(in);
assert(s);
return ta_.get_tgba()->support_variables(s->get_tgba_state());
}
bdd_dict*
tgta_explicit::get_dict() const
{
return ta_explicit::get_dict();
return ta_.get_dict();
}
bdd
tgta_explicit::all_acceptance_conditions() const
{
return ta_explicit::all_acceptance_conditions();
return ta_.all_acceptance_conditions();
}
bdd
tgta_explicit::neg_acceptance_conditions() const
{
return get_tgba()->neg_acceptance_conditions();
return ta_.get_tgba()->neg_acceptance_conditions();
}
std::string
tgta_explicit::format_state(const spot::state* s) const
{
return ta_explicit::format_state(s);
return ta_.format_state(s);
}
spot::tgba_succ_iterator*
tgta_explicit::succ_iter_by_changeset(const spot::state* s, bdd chngset) const
{
return ta_explicit::succ_iter(s, chngset);
return ta_.succ_iter(s, chngset);
}
}