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