Skip to content
Snippets Groups Projects
Station.h 2.57 KiB
Newer Older
  • Learn to ignore specific revisions
  • Radim Vavřík's avatar
    Radim Vavřík committed
    // Station.h
    
    #ifndef STATION_H
    #define STATION_H
    
    #include <memory>
    #include "Location.h"
    
    namespace math1d_cl
    {
    	class Channel;
    
    	enum WaterGaugingCategory
    	{
    		A, B, N
    	};
    
    	class Station
    	{
    	public:
    		Station(); ///< Constructor
    		const int& getId();
    		void setId(const int& id);
    		const std::string& getDescription();
    		void setDescription(const std::string& description);
    		const std::string& getName();
    		void setName(const std::string& name);
    		const Location& getLocation();
    		void setLocation(const Location& location);
    		const double& getClockStep();
    		void setClockStep(const double& clockStep);
    		const std::string& getCode();
    		void setCode(const std::string& code);
    		const bool& getPrecipitationFlag();
    		void setPrecipitationFlag(const bool& precipitationFlag);
    		const bool& getTemperatureFlag();
    		void setTemperatureFlag(const bool& temperatureFlag);
    		const bool& getSnowFlag();
    		void setSnowFlag(const bool& snowFlag);
    		const bool& getWindVelocityFlag();
    		void setWindVelocityFlag(const bool& windWelocityFlag);
    		const bool& getRadarFlag();
    		void setRadarFlag(const bool& radarFlag);
    		const bool& getIsVirtual();
    		void setIsVirtual(const bool& isVirtual);
    		const double& getSpa1();
    		void setSpa1(const double& spa1);
    		const double& getSpa2();
    		void setSpa2(const double& spa2);
    		const double& getSpa3();
    		void setSpa3(const double& spa3);
    		const double& getQ();
    		void setQ(const double& q);
    		const WaterGaugingCategory& getWaterGaugingCategory();
    		void setWaterGaugingCategory(const WaterGaugingCategory& waterGaugingCategory);
    		const double& getHSpa1();
    		void setHSpa1(const double& hSpa1);
    		const double& getHSpa2();
    		void setHSpa2(const double& hSpa2);
    		const double& getHSpa3();
    		void setHSpa3(const double& hSpa3);
    		const int& getH();
    		void setH(const int& h);
    		const int& getChmuProfileId();
    		void setChmuProfileId(const int& chmuProfileId);
    		const int& getChannelIndex();
    		void setChannelIndex(const int& channelIndex);
    
    	private:
    		int m_id;
    		std::string m_description;
    		std::string m_name;
    		Location m_location;
    		double m_clockStep;
    		std::string m_code;
    		bool m_precipitationFlag;
    		bool m_temperatureFlag;
    		bool m_snowFlag;
    		bool m_windVelocityFlag;
    		bool m_radarFlag;
    		bool m_isVirtual;
    		double m_spa1;
    		double m_spa2;
    		double m_spa3;
    		double m_q;
    		// TODO? Owner
    		// TODO? AlternateStation
    		WaterGaugingCategory m_waterGaugingCategory;
    		double m_hSpa1;
    		double m_hSpa2;
    		double m_hSpa3;
    		int m_h;
    		int m_chmuProfileId;
    		int m_channelIndex;
    	};
    }
    #endif