@ -6,7 +6,7 @@
# include "storm/settings/SettingsManager.h"
# include "storm/api/storm.h"
# include "storm/cli /cli.h"
# include "storm-cli-utilities /cli.h"
# include "storm/models/ModelBase.h"
# include "storm/storage/SymbolicModelDescription.h"
# include "storm/utility/file.h"
@ -23,13 +23,13 @@
# include "storm/exceptions/InvalidSettingsException.h"
# include "storm/exceptions/NotSupportedException.h"
# include "storm/cli /cli.cpp"
# include "storm-cli-utilities /cli.cpp"
namespace storm {
namespace pars {
typedef typename storm : : cli : : SymbolicInput SymbolicInput ;
template < typename ValueType >
std : : shared_ptr < storm : : models : : ModelBase > buildModelSparse ( SymbolicInput const & input , storm : : settings : : modules : : IOSettings const & ioSettings ) {
return storm : : api : : buildSparseModel < ValueType > ( input . model . get ( ) , storm : : api : : extractFormulasFromProperties ( input . properties ) , ioSettings . isBuildChoiceLabelsSet ( ) ) ;
@ -50,7 +50,7 @@ namespace storm {
STORM_LOG_THROW ( engine = = storm : : settings : : modules : : CoreSettings : : Engine : : Sparse , storm : : exceptions : : InvalidSettingsException , " Can only use sparse engine with explicit input. " ) ;
result = storm : : cli : : buildModelExplicit < ValueType > ( ioSettings ) ;
}
modelBuildingWatch . stop ( ) ;
if ( result ) {
STORM_PRINT_AND_LOG ( " Time for model construction: " < < modelBuildingWatch < < " . " < < std : : endl < < std : : endl ) ;
@ -335,27 +335,7 @@ namespace storm {
processInputWithValueTypeAndDdlib < storm : : dd : : DdType : : Sylvan , storm : : RationalFunction > ( symbolicInput ) ;
}
int64_t process ( const int argc , const char * * argv ) {
storm : : utility : : setUp ( ) ;
storm : : cli : : printHeader ( " Storm-pars " , argc , argv ) ;
storm : : settings : : initializeParsSettings ( " Storm-pars " , " storm-pars " ) ;
storm : : utility : : Stopwatch totalTimer ( true ) ;
if ( ! storm : : cli : : parseOptions ( argc , argv ) ) {
return - 1 ;
}
processOptions ( ) ;
totalTimer . stop ( ) ;
if ( storm : : settings : : getModule < storm : : settings : : modules : : ResourceSettings > ( ) . isPrintTimeAndMemorySet ( ) ) {
storm : : cli : : printTimeAndMemoryStatistics ( totalTimer . getTimeInMilliseconds ( ) ) ;
}
storm : : utility : : cleanUp ( ) ;
return 0 ;
}
}
}
@ -366,7 +346,24 @@ namespace storm {
int main ( const int argc , const char * * argv ) {
try {
return storm : : pars : : process ( argc , argv ) ;
storm : : utility : : setUp ( ) ;
storm : : cli : : printHeader ( " Storm-pars " , argc , argv ) ;
storm : : settings : : initializeParsSettings ( " Storm-pars " , " storm-pars " ) ;
storm : : utility : : Stopwatch totalTimer ( true ) ;
if ( ! storm : : cli : : parseOptions ( argc , argv ) ) {
return - 1 ;
}
storm : : pars : : processOptions ( ) ;
totalTimer . stop ( ) ;
if ( storm : : settings : : getModule < storm : : settings : : modules : : ResourceSettings > ( ) . isPrintTimeAndMemorySet ( ) ) {
storm : : cli : : printTimeAndMemoryStatistics ( totalTimer . getTimeInMilliseconds ( ) ) ;
}
storm : : utility : : cleanUp ( ) ;
return 0 ;
} catch ( storm : : exceptions : : BaseException const & exception ) {
STORM_LOG_ERROR ( " An exception caused Storm-pars to terminate. The message of the exception is: " < < exception . what ( ) ) ;
return 1 ;