Skip to content
Snippets Groups Projects
Options.h 2.96 KiB
Newer Older
  • Learn to ignore specific revisions
  • Radim Vavřík's avatar
    Radim Vavřík committed
    // Options.h
    
    #ifndef OPTIONS_H
    #define OPTIONS_H
    
    #include <ctime>
    
    namespace math1d_cl
    {
    	///
    	/// RR Hydro Dynamic method types
    	///
    	enum RRHDType
    	{
    		SV1D, KWA_Comsol, KWA_FV, Vel, FDM
    	};
    
    	///
    	/// Rainfall Runoff method types
    	///
    	enum RRType
    	{
    		SCS_CN
    	};
    
    	class Options
    	{
    	public:
    		const std::string& getUri();
    		void setUri(const std::string& uri);
    		const time_t&	getStartDate();
    		void setStartDate(const time_t& startDate);
    		const time_t&	getEndDate();
    		void setEndDate(const time_t& endDate);
    		const int& getMinuteStep();
    		void setMinuteStep(const int& minuteStep);
    		const int& getMeteoModelId();
    		void setMeteoModelId(const int& meteoModelId);
    		const std::string& getMeteoModelName();
    		void setMeteoModelName(const std::string& meteoModelName);
    		const bool& getRr();
    		void setRr(const bool& rr);
    		const bool& getHd();
    		void setHd(const bool& hd);
    		const int& getRrSchemeId();
    		void setRrSchemeId(const int& rrSchemeId);
    		const std::string& getRrSchemeName();
    		void setRrSchemeName(const std::string& rrSchemeName);
    		const int& getRrModelId();
    		void setRrModelId(const int& rrModelId);
    		const std::string& getRrModelName();
    		void setRrModelName(const std::string& rrModelName);
    		const RRType& getRrType();
    		void setRrType(const RRType& rrType);
    		const RRHDType& getRrHdType();
    		void setRrHdType(const RRHDType& rrHdType);
    		const std::string& getRrProfileShape();
    		void setRrProfileShape(const std::string& rrProfileShape);
    		const int& getHdModelId();
    		void setHdModelId(const int& hdModelId);
    		const std::string& getHdType();
    		void setHdType(const std::string& hdType);
    		const std::string& getHdProfileShape();
    		void setHdProfileShape(const std::string& hdProfileShape);
    		const bool& getLog();
    		void setLog(const bool& log);
    		const int& getSimulationId();
    		void setSimulationId(const int& simulationId);
    		const bool& getFitting();
    		void setFitting(const bool& fitting);
    		const bool& getCalibtemp();
    		void setCalibtemp(const bool& calibtemp);
    		const time_t& getCreationDate();
    		void setCreationDate(const time_t& creationDate);
    		const std::string& getSimulationDataPath();
    		void setSimulationDataPath(const std::string& simulationDataPath);
    		const std::string& getMeasuredDataPath();
    		void setMeasuredDataPath(const std::string& measuredDataPath);
    		
    	private:
    		std::string	m_uri; 
    		time_t m_startDate;
    		time_t m_endDate;
    		int	m_minuteStep;
    		int	m_meteoModelId;
    		std::string	m_meteoModelName;
    		bool m_rr;
    		bool m_hd;
    		int	m_rrSchemeId;
    		std::string	m_rrSchemeName;
    		int	m_rrModelId;
    		std::string	m_rrModelName;
    		RRType m_rrType;
    		RRHDType m_rrHdType;
    		std::string	m_rrProfileShape;
    		int	m_hdModelId;
    		std::string	m_hdType;
    		std::string	m_hdProfileShape;
    		bool m_log;
    		int	m_simulationId;
    		bool m_fitting;
    		bool m_calibtemp;
    		time_t m_creationDate;
    		std::string	m_simulationDataPath;
    		std::string	m_measuredDataPath;
    	};
    }
    #endif