Changeset 348 for cpp/frams/genetics/geno.cpp
- Timestamp:
- 04/09/15 23:51:28 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified cpp/frams/genetics/geno.cpp ¶
r346 r348 7 7 #include <frams/model/model.h> 8 8 9 GenoConvManager *Geno::converters = NULL; 10 11 THREAD_LOCAL_DEF(Geno::Validators, geno_validators); 12 13 Geno::Validators& Geno::getValidators() {return tlsGetRef(geno_validators);} 9 THREAD_LOCAL_DEF_PTR(Geno::Validators, geno_validators); 10 THREAD_LOCAL_DEF_PTR(GenoConvManager, geno_converters); 11 12 Geno::Validators* Geno::getValidators() {return tlsGetPtr(geno_validators);} 13 GenoConvManager* Geno::getConverters() {return tlsGetPtr(geno_converters);} 14 15 Geno::Validators* Geno::useValidators(Validators* val) 16 {return tlsSetPtr(geno_validators,val);} 17 GenoConvManager* Geno::useConverters(GenoConvManager* gcm) 18 {return tlsSetPtr(geno_converters,gcm);} 14 19 15 20 void Geno::init(const SString& genstring, char genformat, const SString& genname, const SString& comment) … … 78 83 if (!name.len()) name = genname; 79 84 if (!txt.len()) txt = comment; 80 multiline = (strchr( (const char*)gen, '\n') != 0);85 multiline = (strchr(gen.c_str(), '\n') != 0); 81 86 // mapoutshift...? 82 87 } … … 237 242 if (isvalid >= 0) return; 238 243 if (gen.len() == 0) { isvalid = 0; return; } 239 Validators& vals=getValidators(); 240 FOREACH(GenoValidator*, v, vals) 244 Validators* vals=getValidators(); 245 if (vals!=NULL) 246 { 247 FOREACH(GenoValidator*, v, (*vals)) 241 248 if ((isvalid = v->testGenoValidity(*this)) >= 0) 242 249 return; 250 } 243 251 isvalid = 0; 244 252 FMprintf("Geno", "validate", FMLV_WARN, "Wrong configuration? No genotype validators defined for genetic format f%c.", format); … … 255 263 if (otherformat == getFormat()) { if (converter_missing) *converter_missing = false; return *this; } 256 264 #ifndef NO_GENOCONVMANAGER 265 GenoConvManager *converters=getConverters(); 257 266 if (converters) 258 267 {
Note: See TracChangeset
for help on using the changeset viewer.