|  |  | @ -49,7 +49,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @return True iff all children are BEs. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             bool allChildrenBEs() const { | 
			
		
	
		
			
				
					|  |  |  |                 for (auto const& elem : mChildren) { | 
			
		
	
		
			
				
					|  |  |  |                 for (auto const& elem : this->children()) { | 
			
		
	
		
			
				
					|  |  |  |                     if (!elem->isBasicElement()) { | 
			
		
	
		
			
				
					|  |  |  |                         return false; | 
			
		
	
		
			
				
					|  |  |  |                     } | 
			
		
	
	
		
			
				
					|  |  | @ -57,25 +57,23 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |                 return true; | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             virtual void extendSpareModule(std::set<size_t>& elementsInSpareModule) const override { | 
			
		
	
		
			
				
					|  |  |  |             void extendSpareModule(std::set<size_t>& elementsInSpareModule) const override { | 
			
		
	
		
			
				
					|  |  |  |                 // Do nothing | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             virtual bool checkDontCareAnymore(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |             bool checkDontCareAnymore(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |                 return false; | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |         protected: | 
			
		
	
		
			
				
					|  |  |  |             void fail(DFTState <ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const { | 
			
		
	
		
			
				
					|  |  |  |             void fail(DFTState <ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |                 state.markAsInvalid(); | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             void failsafe(DFTState <ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const { | 
			
		
	
		
			
				
					|  |  |  |             void failsafe(DFTState <ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             DFTElementVector mChildren; | 
			
		
	
		
			
				
					|  |  |  |         }; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  | @ -98,18 +96,18 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |                 // Intentionally left empty. | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             virtual DFTElementType type() const override { | 
			
		
	
		
			
				
					|  |  |  |             DFTElementType type() const override { | 
			
		
	
		
			
				
					|  |  |  |                 return DFTElementType::SEQ; | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             virtual bool isSeqEnforcer() const override { | 
			
		
	
		
			
				
					|  |  |  |             bool isSeqEnforcer() const override { | 
			
		
	
		
			
				
					|  |  |  |                 return true; | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             void checkFails(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |                 STORM_LOG_ASSERT(queues.failurePropagationDone(), "Failure propagation not finished."); | 
			
		
	
		
			
				
					|  |  |  |                 bool childOperationalBefore = false; | 
			
		
	
		
			
				
					|  |  |  |                 for (auto const& child : this->mChildren) { | 
			
		
	
		
			
				
					|  |  |  |                 for (auto const& child : this->children()) { | 
			
		
	
		
			
				
					|  |  |  |                     if (!state.hasFailed(child->id())) { | 
			
		
	
		
			
				
					|  |  |  |                         childOperationalBefore = true; | 
			
		
	
		
			
				
					|  |  |  |                     } else if (childOperationalBefore && state.hasFailed(child->id())) { | 
			
		
	
	
		
			
				
					|  |  | @ -122,7 +120,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |             void checkFailsafe(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             virtual bool checkDontCareAnymore(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |             bool checkDontCareAnymore(storm::storage::DFTState<ValueType>& state, DFTStateSpaceGenerationQueues <ValueType>& queues) const override { | 
			
		
	
		
			
				
					|  |  |  |                 // Actually, it doesnt matter what we return here.. | 
			
		
	
		
			
				
					|  |  |  |                 return false; | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
	
		
			
				
					|  |  | 
 |