12template<
typename ValueType>
17template<
typename ValueType>
19template<
typename ValueType>
62 std::list<size_t>::const_iterator
const& iterDependency, std::list<size_t>::const_iterator nonConflictEnd,
63 std::list<size_t>::const_iterator conflictBegin);
130 template<
typename ValueType>
141 template<
typename ValueType>
151 std::list<size_t>::const_iterator itDep;
155 std::list<size_t>::const_iterator nonConflictEnd;
156 std::list<size_t>::const_iterator conflictBegin;
172 void addBE(
size_t id);
251 std::list<size_t> failableConflictingDependencies;
252 std::list<size_t> failableNonconflictingDependencies;
Represents a Dynamic Fault Tree.
Iterator for failable elements.
std::input_iterator_tag iterator_category
uint_fast64_t operator*() const
Returns the id of the current failable element.
std::shared_ptr< storm::dft::storage::elements::DFTBE< ValueType > const > asBE(storm::dft::storage::DFT< ValueType > const &dft) const
Return the current iterator as a BE which fails next.
const_iterator & operator++()
Increment the iterator.
const_iterator(const_iterator const &other)=default
Constructs an iterator by copying the given iterator.
bool operator==(const_iterator const &other) const
Compares the iterator with another iterator for equality.
const_iterator & operator=(const_iterator const &other)=default
Assigns the contents of the given iterator to the current one via copying the former's contents.
bool isConflictingDependency() const
Return whether the current dependency failure is conflicting.
bool isFailureDueToDependency() const
Return whether the current failure is due to a dependency (or the BE itself).
std::shared_ptr< storm::dft::storage::elements::DFTDependency< ValueType > const > asDependency(storm::dft::storage::DFT< ValueType > const &dft) const
Return the current iterator as a dependency which triggers next.
std::ptrdiff_t difference_type
bool operator!=(const_iterator const &other) const
Compares the iterator with another iterator for inequality.
Handling of currently failable elements (BEs) either due to their own failure or because of dependenc...
void removeBE(size_t id)
Remove BE from list of failable elements.
void removeDependency(size_t id)
Remove dependency from list of failable elements.
bool hasDependencies() const
Whether failable dependencies are present.
FailableElements::const_iterator end(bool forceBE=false) const
Iterator after last failable element.
std::string getCurrentlyFailableString(bool forceBE=false) const
Get a string representation of the currently failable elements.
void addBE(size_t id)
Add failable BE.
void addDependency(size_t id, bool isConflicting)
Add failable dependency.
void clear()
Clear list of currently failable elements.
FailableElements::const_iterator begin(bool forceBE=false) const
Iterator to first failable element.
FailableElements(size_t maxBEId)
Creator.
bool hasBEs() const
Whether failable BEs are present.
A class that enables iterating over the indices of the bit vector whose corresponding bits are set to...
A bit vector that is internally represented as a vector of 64-bit values.