34 AddIterator(AddIterator<DdType::CUDD, ValueType> const& other) = delete;
35 AddIterator& operator=(AddIterator<DdType::CUDD, ValueType> const& other) = delete;
38 AddIterator(AddIterator<DdType::CUDD, ValueType>&& other);
39 AddIterator& operator=(AddIterator<DdType::CUDD, ValueType>&& other);
57 std::pair<storm::expressions::SimpleValuation, ValueType> operator*() const;
66 bool operator==(AddIterator<DdType::CUDD, ValueType> const& other) const;
75 bool operator!=(AddIterator<DdType::CUDD, ValueType> const& other) const;
91 AddIterator(DdManager<DdType::CUDD> const& ddManager, DdGen* generator, int* cube, ValueType const& value, bool isAtEnd,
92 std::set<storm::expressions::Variable> const* metaVariables = nullptr, bool enumerateDontCareMetaVariables = true);
102 void treatNextInCube();
105 DdManager<DdType::CUDD> const* ddManager;
114 double valueAsDouble;
121 std::set<storm::expressions::Variable> const* metaVariables;
125 bool enumerateDontCareMetaVariables;
129 uint_fast64_t cubeCounter;
132 std::vector<std::tuple<storm::expressions::Variable, uint_fast64_t>> relevantDontCareDdVariables;