You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.4 KiB
64 lines
2.4 KiB
#pragma once
|
|
|
|
#include "storm-config.h"
|
|
#include "storm/settings/modules/ModuleSettings.h"
|
|
|
|
namespace storm {
|
|
namespace settings {
|
|
namespace modules {
|
|
|
|
/*!
|
|
* This class represents the resource settings.
|
|
*/
|
|
class ResourceSettings : public ModuleSettings {
|
|
public:
|
|
|
|
/*!
|
|
* Creates a new set of general settings.
|
|
*/
|
|
ResourceSettings();
|
|
|
|
/*!
|
|
* Retrieves whether time and memory consumption shall be printed at the end of a run.
|
|
*
|
|
* @return True iff the option was set.
|
|
*/
|
|
bool isPrintTimeAndMemorySet() const;
|
|
|
|
/*!
|
|
* Retrieves whether the timeout option was set.
|
|
*
|
|
* @return True if the timeout option was set.
|
|
*/
|
|
bool isTimeoutSet() const;
|
|
|
|
/*!
|
|
* Retrieves the time after which the computation has to be aborted in case the timeout option was set.
|
|
*
|
|
* @return The number of seconds after which to timeout.
|
|
*/
|
|
uint_fast64_t getTimeoutInSeconds() const;
|
|
|
|
/*!
|
|
* Retrieves the waiting time of the program after a signal.
|
|
* If a signal to abort is handled, the program should terminate.
|
|
* However, it waits the given number of seconds before it is killed to allow for printing preliminary results.
|
|
*
|
|
* @return The number of seconds after which to exit the program.
|
|
*/
|
|
uint_fast64_t getSignalWaitingTimeInSeconds() const;
|
|
|
|
// The name of the module.
|
|
static const std::string moduleName;
|
|
|
|
private:
|
|
// Define the string names of the options as constants.
|
|
static const std::string timeoutOptionName;
|
|
static const std::string timeoutOptionShortName;
|
|
static const std::string printTimeAndMemoryOptionName;
|
|
static const std::string printTimeAndMemoryOptionShortName;
|
|
static const std::string signalWaitingTimeOptionName;
|
|
};
|
|
}
|
|
}
|
|
}
|