src/tgba/succiterconcrete.hh, src/tgba/tgbabddconcrete.hh, src/tgba/tgbabddcoredata.hh, src/tgba/tgbabdddict.hh: Add Doxygen comments.
43 lines
1.3 KiB
C++
43 lines
1.3 KiB
C++
#ifndef SPOT_TGBA_SUCCITERCONCRETE_HH
|
|
# define SPOT_TGBA_SUCCITERCONCRETE_HH
|
|
|
|
#include "statebdd.hh"
|
|
#include "succiter.hh"
|
|
#include "tgbabddcoredata.hh"
|
|
|
|
namespace spot
|
|
{
|
|
/// A concrete iterator over successors of a TGBA state.
|
|
class tgba_succ_iterator_concrete: public tgba_succ_iterator
|
|
{
|
|
public:
|
|
/// \brief Build a spot::tgba_succ_iterator_concrete.
|
|
///
|
|
/// \param successors The set of successors with ingoing conditions
|
|
/// and promises, represented as a BDD. The job of this iterator
|
|
/// will be to enumerate the satisfactions of that BDD and split
|
|
/// them into destination state, conditions, and promises.
|
|
/// \param d The core data of the automata. These contains
|
|
/// sets of variables useful to split a BDD.
|
|
tgba_succ_iterator_concrete(const tgba_bdd_core_data& d, bdd successors);
|
|
virtual ~tgba_succ_iterator_concrete();
|
|
|
|
// iteration
|
|
void first();
|
|
void next();
|
|
bool done();
|
|
|
|
// inspection
|
|
state_bdd* current_state();
|
|
bdd current_condition();
|
|
bdd current_promise();
|
|
|
|
private:
|
|
const tgba_bdd_core_data& data_; ///< Core data of the automata.
|
|
bdd succ_set_; ///< The set of successors.
|
|
bdd next_succ_set_; ///< Unexplored successors (including current_).
|
|
bdd current_; ///< Current successor.
|
|
};
|
|
}
|
|
|
|
#endif // SPOT_TGBA_SUCCITERCONCRETE_HH
|