/* * StatisticProperties.hh * * Created on: Nov 04, 2014 * Author: AKKA */ #ifndef STATISTICPROPERTIES_HH_ #define STATISTICPROPERTIES_HH_ #include #include "StatisticParamProperties.hh" #include "TimeTable.hh" namespace AMDA { namespace ParamOutputImpl { namespace Statistic { enum OutputStructure { ONE_FILE, ONE_FILE_PER_PARAMETER }; typedef std::vector ParamPropertiesList; /** * @class StatisticProperties * @brief Properties of a statistic request. * @details */ class StatisticProperties { public: StatisticProperties(); virtual ~StatisticProperties(); TimeTableCatalog::TimeTable::TIME_FORMAT getTimeFormat() const; void setTimeFormat(TimeTableCatalog::TimeTable::TIME_FORMAT timeFormat); std::string getFileFormatKey() const; void setFileFormatKey(std::string fileFormatKey); const std::string& getFileName() const; void setFileName(const std::string& fileName); OutputStructure getOutputStructure() const; void setOutputStructure(OutputStructure outputStructure); ParamPropertiesList& getParamPropertiesList(); void addParamProperties(ParamProperties *paramProperties); private: /** * format of time */ TimeTableCatalog::TimeTable::TIME_FORMAT _timeFormat; /* * catalog writer key */ std::string _fileFormatKey; /** * File name */ std::string _fileName; /** * Output structure : * - One file * - One file per interval */ OutputStructure _outputStructure; /** * Parameter properties list */ ParamPropertiesList _paramPropertiesList; }; } // namespace Statistic } // namespace ParamOutputImpl } // namespace AMDA #endif /* STATISTICPROPERTIES_HH_ */