58 static bool ReadParamsFile(
68 static bool SetParam(
const char *name,
const char* value,
80 for (i = 0; i < global_vec.
size(); ++i) {
81 if (strcmp(global_vec[i]->name_str(), name) == 0)
return global_vec[i];
83 for (i = 0; i < member_vec.
size(); ++i) {
84 if (strcmp(member_vec[i]->name_str(), name) == 0)
return member_vec[i];
91 for (
int i = 0; i < vec->
size(); ++i) {
92 if ((*vec)[i] == param_ptr) {
100 static bool GetParamAsString(
const char *name,
105 static void PrintParams(FILE *fp,
const ParamsVectors *member_params);
125 !this->is_debug()) ||
131 Param(
const char *name,
const char *comment,
bool init) :
132 name_(name), info_(comment), init_(init) {
133 debug_ = (strstr(name,
"debug") != NULL) || (strstr(name,
"display"));
151 ~IntParam() { ParamUtils::RemoveParam<IntParam>(
this, params_vec_); }
152 operator inT32()
const {
return value_; }
168 BoolParam(
bool value,
const char *name,
const char *comment,
bool init,
175 ~BoolParam() { ParamUtils::RemoveParam<BoolParam>(
this, params_vec_); }
176 operator BOOL8()
const {
return value_; }
193 const char *comment,
bool init,
200 ~StringParam() { ParamUtils::RemoveParam<StringParam>(
this, params_vec_); }
202 const char *
string()
const {
return value_.string(); }
203 const char *
c_str()
const {
return value_.string(); }
204 bool empty() {
return value_.length() <= 0; }
228 ~DoubleParam() { ParamUtils::RemoveParam<DoubleParam>(
this, params_vec_); }
229 operator double()
const {
return value_; }
264 #define INT_VAR_H(name,val,comment)\ 265 tesseract::IntParam name 267 #define BOOL_VAR_H(name,val,comment)\ 268 tesseract::BoolParam name 270 #define STRING_VAR_H(name,val,comment)\ 271 tesseract::StringParam name 273 #define double_VAR_H(name,val,comment)\ 274 tesseract::DoubleParam name 276 #define INT_VAR(name,val,comment)\ 277 tesseract::IntParam name(val,#name,comment,false,GlobalParams()) 279 #define BOOL_VAR(name,val,comment)\ 280 tesseract::BoolParam name(val,#name,comment,false,GlobalParams()) 282 #define STRING_VAR(name,val,comment)\ 283 tesseract::StringParam name(val,#name,comment,false,GlobalParams()) 285 #define double_VAR(name,val,comment)\ 286 tesseract::DoubleParam name(val,#name,comment,false,GlobalParams()) 288 #define INT_INIT_VAR(name,val,comment)\ 289 tesseract::IntParam name(val,#name,comment,true,GlobalParams()) 291 #define BOOL_INIT_VAR(name,val,comment)\ 292 tesseract::BoolParam name(val,#name,comment,true,GlobalParams()) 294 #define STRING_INIT_VAR(name,val,comment)\ 295 tesseract::StringParam name(val,#name,comment,true,GlobalParams()) 297 #define double_INIT_VAR(name,val,comment)\ 298 tesseract::DoubleParam name(val,#name,comment,true,GlobalParams()) 300 #define INT_MEMBER(name, val, comment, vec)\ 301 name(val, #name, comment, false, vec) 303 #define BOOL_MEMBER(name, val, comment, vec)\ 304 name(val, #name, comment, false, vec) 306 #define STRING_MEMBER(name, val, comment, vec)\ 307 name(val, #name, comment, false, vec) 309 #define double_MEMBER(name, val, comment, vec)\ 310 name(val, #name, comment, false, vec) 312 #define INT_INIT_MEMBER(name, val, comment, vec)\ 313 name(val, #name, comment, true, vec) 315 #define BOOL_INIT_MEMBER(name, val, comment, vec)\ 316 name(val, #name, comment, true, vec) 318 #define STRING_INIT_MEMBER(name, val, comment, vec)\ 319 name(val, #name, comment, true, vec) 321 #define double_INIT_MEMBER(name, val, comment, vec)\ 322 name(val, #name, comment, true, vec) GenericVector< StringParam * > string_params
bool operator==(const STRING &other)
void set_value(const STRING &value)
bool constraint_ok(SetParamConstraint constraint) const
void operator=(inT32 value)
tesseract::ParamsVectors * GlobalParams()
const char * c_str() const
IntParam(inT32 value, const char *name, const char *comment, bool init, ParamsVectors *vec)
Param(const char *name, const char *comment, bool init)
static void RemoveParam(T *param_ptr, GenericVector< T *> *vec)
void operator=(const STRING &value)
static T * FindParam(const char *name, const GenericVector< T *> &global_vec, const GenericVector< T *> &member_vec)
DoubleParam(double value, const char *name, const char *comment, bool init, ParamsVectors *vec)
StringParam(const char *value, const char *name, const char *comment, bool init, ParamsVectors *vec)
void set_value(BOOL8 value)
GenericVector< IntParam * > int_params
const char * name_str() const
void set_value(inT32 value)
void operator=(double value)
void operator=(BOOL8 value)
GenericVector< DoubleParam * > double_params
BoolParam(bool value, const char *name, const char *comment, bool init, ParamsVectors *vec)
const char * info_str() const
const char * string() const
void set_value(double value)
GenericVector< BoolParam * > bool_params