|  |  | @ -6,7 +6,7 @@ | 
			
		
	
		
			
				
					|  |  |  | #include <memory> | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | #include "src/storage/dd/Dd.h" | 
			
		
	
		
			
				
					|  |  |  | #include "utility\OsDetection.h" | 
			
		
	
		
			
				
					|  |  |  | #include "src/utility/OsDetection.h" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | // Include the C++-interface of CUDD. | 
			
		
	
		
			
				
					|  |  |  | #include "cuddObj.hh" | 
			
		
	
	
		
			
				
					|  |  | @ -26,10 +26,10 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |             Dd() = default; | 
			
		
	
		
			
				
					|  |  |  |             Dd(Dd<CUDD> const& other) = default; | 
			
		
	
		
			
				
					|  |  |  | 			Dd& operator=(Dd<CUDD> const& other) = default; | 
			
		
	
		
			
				
					|  |  |  | 			#ifndef WINDOWS | 
			
		
	
		
			
				
					|  |  |  | 				Dd(Dd<CUDD>&& other) = default; | 
			
		
	
		
			
				
					|  |  |  | 				Dd& operator=(Dd<CUDD>&& other) = default; | 
			
		
	
		
			
				
					|  |  |  | 			#endif | 
			
		
	
		
			
				
					|  |  |  | #ifndef WINDOWS | 
			
		
	
		
			
				
					|  |  |  |             Dd(Dd<CUDD>&& other) = default; | 
			
		
	
		
			
				
					|  |  |  |             Dd& operator=(Dd<CUDD>&& other) = default; | 
			
		
	
		
			
				
					|  |  |  | #endif | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Retrieves whether the two DDs represent the same function. | 
			
		
	
	
		
			
				
					|  |  | @ -45,7 +45,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @return The result of the addition. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             Dd<CUDD> operator+(Dd<CUDD> const& other) const; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Adds the given DD to the current one. | 
			
		
	
		
			
				
					|  |  |  |              * | 
			
		
	
	
		
			
				
					|  |  | @ -61,7 +61,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @return The result of the multiplication. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             Dd<CUDD> operator*(Dd<CUDD> const& other) const; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Multiplies the given DD with the current one and assigns the result to the current DD. | 
			
		
	
		
			
				
					|  |  |  |              * | 
			
		
	
	
		
			
				
					|  |  | @ -183,7 +183,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @param metaVariableNames The names of all meta variables from which to abstract. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             void existsAbstract(std::set<std::string> const& metaVariableNames); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Sum-abstracts from the given meta variables. | 
			
		
	
		
			
				
					|  |  |  |              * | 
			
		
	
	
		
			
				
					|  |  | @ -204,7 +204,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @param metaVariableNames The names of all meta variables from which to abstract. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             void maxAbstract(std::set<std::string> const& metaVariableNames); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Swaps the given pairs of meta variables in the DD. The pairs of meta variables must be guaranteed to have | 
			
		
	
		
			
				
					|  |  |  |              * the same number of underlying DD variables. | 
			
		
	
	
		
			
				
					|  |  | @ -269,7 +269,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @param targetValue The new function value of the modified encodings. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             void setValue(std::string const& metaVariableName, int_fast64_t variableValue, double targetValue); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Sets the function values of all encodings that have the given values of the two meta variables to the | 
			
		
	
		
			
				
					|  |  |  |              * given target value. | 
			
		
	
	
		
			
				
					|  |  | @ -382,7 +382,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              * @param metaVariableName The name of the meta variable to remove. | 
			
		
	
		
			
				
					|  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |             void removeContainedMetaVariable(std::string const& metaVariableName); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             /*! | 
			
		
	
		
			
				
					|  |  |  |              * Creates a DD that encapsulates the given CUDD ADD. | 
			
		
	
		
			
				
					|  |  |  |              * | 
			
		
	
	
		
			
				
					|  |  | @ -394,7 +394,7 @@ namespace storm { | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             // A pointer to the manager responsible for this DD. | 
			
		
	
		
			
				
					|  |  |  |             std::shared_ptr<DdManager<CUDD>> ddManager; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
		
			
				
					|  |  |  |             // The ADD created by CUDD. | 
			
		
	
		
			
				
					|  |  |  |             ADD cuddAdd; | 
			
		
	
		
			
				
					|  |  |  |              | 
			
		
	
	
		
			
				
					|  |  | 
 |