1 #ifndef _BLOCK_PARAMVALIDATOR_HEADER_
2 #define _BLOCK_PARAMVALIDATOR_HEADER_
6 #pragma warning(disable:4996 4251 4275 4800 4503)
8 #include <boost/filesystem.hpp>
9 #include <boost/exception/exception.hpp>
16 #include "ParamValue.h"
17 #include "Internationalizator.h"
38 void setParamOrigin(
const ParamValue* p){ paramToValid_ = p; };
39 virtual void validate(
const ParamValue& value)=0;
48 if (value.isDefaultValue())
50 if (paramToValid_ == NULL)
53 throw (
ErrorValidator((my_format(_STR(
"ERROR_PARAM_NEEDED")) % _STR(paramToValid_->getName())).str()));
64 if (value.isDefaultValue())
66 if (!boost::filesystem::exists(value.toString()))
68 if (paramToValid_ == NULL)
71 throw (
ErrorValidator((my_format(_STR(
"BLOCK__INPUT_IN_FILE_NOT_FOUND")) % value.toString()).str()));
82 if (value.isDefaultValue())
84 if (!boost::filesystem::exists(value.toString()))
86 if (paramToValid_ == NULL)
89 throw (
ErrorValidator((my_format(_STR(
"BLOCK__INPUT_IN_FILE_NOT_FOUND")) % value.toString()).str()));
91 if (!boost::filesystem::is_directory(value.toString()))
93 if (paramToValid_ == NULL)
96 throw (
ErrorValidator((my_format(_STR(
"BLOCK__INPUT_IN_FILE_NOT_FOLDER")) % value.toString()).str()));
106 isStrict_ = strictOnly;
108 virtual void validate(
const ParamValue& value)
110 if (value.isDefaultValue())
119 if (paramToValid_ == NULL)
123 std::string errorTmp =
"";
124 if (isStrict_) errorTmp =
"ERROR_PARAM_ONLY_POSITIF_STRICT";
125 else errorTmp =
"ERROR_PARAM_ONLY_POSITIF";
126 throw (
ErrorValidator((my_format(_STR(errorTmp)) % _STR(paramToValid_->getName())).str()));
137 isStrict_ = strictOnly;
139 virtual void validate(
const ParamValue& value)
141 if (value.isDefaultValue())
150 if (paramToValid_ == NULL)
154 std::string errorTmp =
"";
155 if (isStrict_) errorTmp =
"ERROR_PARAM_ONLY_NEGATIF_STRICT";
156 else errorTmp =
"ERROR_PARAM_ONLY_NEGATIF";
157 throw (
ErrorValidator((my_format(_STR(errorTmp)) % _STR(paramToValid_->getName())).str()));
169 virtual void validate(
const ParamValue& value)
171 if (value.isDefaultValue())
173 if (paramToValid_ == NULL)
177 if (otherVal_ == value)
178 throw (
ErrorValidator((my_format(_STR(
"ERROR_PARAM_EXCLUSIF")) % _STR(paramToValid_->getName()) % _STR(otherVal_.getName())).str()));
188 ValRange(
double minima,
double maxima) :
189 inf_(minima), sup_(maxima){}
190 virtual void validate(
const ParamValue& value)
192 if (value < inf_ || value > sup_)
194 if (paramToValid_ == NULL)
197 throw (
ErrorValidator((my_format(_STR(
"ERROR_PARAM__valueBETWEEN")) %
198 _STR(paramToValid_->getName()) % value.get<
double>() % inf_ % sup_).str()));
Definition: ParamValidator.h:76
Definition: ParamValidator.h:101
Definition: ParamValidator.h:163
Definition: ParamValidator.h:58
Definition: ParamValidator.h:132
Definition: ParamValidator.h:32
Definition: ParamValidator.h:23
Definition: ParamValidator.h:42
Definition: ParamValue.h:52
Definition: ParamValidator.h:183