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 | 
				
			|||
 | 
				
			|||
#include <string> | 
				
			|||
 | 
				
			|||
#include "storm/storage/jani/ModelType.h" | 
				
			|||
 | 
				
			|||
 | 
				
			|||
namespace storm { | 
				
			|||
    namespace jani { | 
				
			|||
 | 
				
			|||
        class Model; | 
				
			|||
 | 
				
			|||
        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