32 AddIterator(AddIterator<DdType::CUDD, ValueType> const& other) = delete;
33 AddIterator& operator=(AddIterator<DdType::CUDD, ValueType> const& other) = delete;
36 AddIterator(AddIterator<DdType::CUDD, ValueType>&& other);
37 AddIterator& operator=(AddIterator<DdType::CUDD, ValueType>&& other);
55 std::pair<storm::expressions::SimpleValuation, ValueType> operator*() const;
64 bool operator==(AddIterator<DdType::CUDD, ValueType> const& other) const;
73 bool operator!=(AddIterator<DdType::CUDD, ValueType> const& other) const;
90 AddIterator(DdManager<DdType::CUDD> const& ddManager, DdGen* generator, int* cube, ValueType const& value, bool isAtEnd,
91 std::set<storm::expressions::Variable> const* metaVariables = nullptr, bool enumerateDontCareMetaVariables = true);
101 void treatNextInCube();
104 DdManager<DdType::CUDD> const* ddManager;
113 double valueAsDouble;
120 std::set<storm::expressions::Variable> const* metaVariables;
124 bool enumerateDontCareMetaVariables;
128 uint_fast64_t cubeCounter;
131 std::vector<std::tuple<storm::expressions::Variable, uint_fast64_t>> relevantDontCareDdVariables;