Browse Source
			
			
			Implemented retrieval of jani model information with a traverser. Also determine the size of the state domain.
			
			
				main
			
			
		
		Implemented retrieval of jani model information with a traverser. Also determine the size of the state domain.
	
		
	
			
			
				main
			
			
		
				 4 changed files with 109 additions and 14 deletions
			
			
		- 
					5src/storm/storage/jani/Model.cpp
 - 
					5src/storm/storage/jani/Model.h
 - 
					94src/storm/storage/jani/traverser/InformationCollector.cpp
 - 
					19src/storm/storage/jani/traverser/InformationCollector.h
 
@ -1,20 +1,27 @@ | 
			
		|||||
#pragma once | 
				#pragma once | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				#include <string> | 
			
		||||
 | 
				
 | 
			
		||||
#include "storm/storage/jani/ModelType.h" | 
				#include "storm/storage/jani/ModelType.h" | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				
 | 
			
		||||
namespace storm { | 
				namespace storm { | 
			
		||||
    namespace jani { | 
				    namespace jani { | 
			
		||||
 | 
				
 | 
			
		||||
        class Model; | 
				        class Model; | 
			
		||||
 | 
				
 | 
			
		||||
        struct InformationObject { | 
				        struct InformationObject { | 
			
		||||
            storm::jani::ModelType modelType; | 
				 | 
			
		||||
            uint64_t nrVariables; | 
				 | 
			
		||||
            uint64_t nrAutomata; | 
				 | 
			
		||||
            uint64_t nrEdges; | 
				 | 
			
		||||
            uint64_t nrLocations; | 
				 | 
			
		||||
 | 
				            InformationObject(); | 
			
		||||
 | 
				            storm::jani::ModelType modelType; /// The type of the model | 
			
		||||
 | 
				            uint64_t nrVariables; /// The number of non-transient variables in the model | 
			
		||||
 | 
				            uint64_t nrAutomata; /// The number of automata in the model | 
			
		||||
 | 
				            uint64_t nrEdges; /// The number of edges in the model | 
			
		||||
 | 
				            uint64_t nrLocations; /// The numer of all locations of all automata of the model | 
			
		||||
 | 
				            uint64_t stateDomainSize; /// The size of the domain of the states (i.e., the product of the range of all variables times the number of locations). | 
			
		||||
 | 
				                                    /// Here, 0 means that the state domain size is unknown. | 
			
		||||
        }; | 
				        }; | 
			
		||||
 | 
				
 | 
			
		||||
        InformationObject collect(Model const& model); | 
				 | 
			
		||||
 | 
				        InformationObject collectModelInformation(Model const& model); | 
			
		||||
    } | 
				    } | 
			
		||||
} | 
				} | 
			
		||||
 | 
				
 | 
			
		||||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue