Ignore:
Timestamp:
06/23/16 00:15:59 (8 years ago)
Author:
Maciej Komosinski
Message:

Code formatting

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpp/frams/genetics/geno.cpp

    r521 r522  
    1212THREAD_LOCAL_DEF_PTR(GenoConvManager, geno_converters);
    1313
    14 Geno::Validators* Geno::getValidators() {return tlsGetPtr(geno_validators);}
    15 GenoConvManager* Geno::getConverters() {return tlsGetPtr(geno_converters);}
     14Geno::Validators* Geno::getValidators() { return tlsGetPtr(geno_validators); }
     15GenoConvManager* Geno::getConverters() { return tlsGetPtr(geno_converters); }
    1616
    1717Geno::Validators* Geno::useValidators(Validators* val)
    18 {return tlsSetPtr(geno_validators,val);}
     18{
     19        return tlsSetPtr(geno_validators, val);
     20}
    1921GenoConvManager* Geno::useConverters(GenoConvManager* gcm)
    20 {return tlsSetPtr(geno_converters,gcm);}
     22{
     23        return tlsSetPtr(geno_converters, gcm);
     24}
    2125
    2226void Geno::init(const SString& genstring, char genformat, const SString& genname, const SString& comment)
     
    3438                if (genstring.charAt(0) == '/')
    3539                {
    36                         int end, error_end=-1;
     40                        int end, error_end = -1;
    3741                        switch (genstring.charAt(1))
    3842                        {
    3943                        case '/':
    4044                                genformat = genstring.charAt(2);
    41                                 if ((genformat=='\0')||isspace(genformat))
    42                                         genformat=INVALID_FORMAT;
     45                                if ((genformat == '\0') || isspace(genformat))
     46                                        genformat = INVALID_FORMAT;
    4347                                if ((end = genstring.indexOf('\n')) >= 0)
    4448                                {
    45                                         error_end=end;
    46                                         if (end!=3) genformat=INVALID_FORMAT;
     49                                        error_end = end;
     50                                        if (end != 3) genformat = INVALID_FORMAT;
    4751                                        gencopy = genstring.substr(end + 1);
    4852                                        mapinshift = end + 1;
     
    5054                                else
    5155                                {
    52                                         if (genstring.len()!=3) genformat=INVALID_FORMAT;
     56                                        if (genstring.len() != 3) genformat = INVALID_FORMAT;
    5357                                        gencopy = 0;
    5458                                        mapinshift = genstring.len();
     
    5761                        case '*':
    5862                                genformat = genstring.charAt(2);
    59                                 if ((genformat=='\0')||isspace(genformat))
    60                                         genformat=INVALID_FORMAT;
     63                                if ((genformat == '\0') || isspace(genformat))
     64                                        genformat = INVALID_FORMAT;
    6165                                if ((end = genstring.indexOf("*/")) >= 0)
    6266                                {
    63                                         error_end=end+2;
    64                                         if (end!=3) genformat=INVALID_FORMAT;
     67                                        error_end = end + 2;
     68                                        if (end != 3) genformat = INVALID_FORMAT;
    6569                                        gencopy = genstring.substr(end + 2);
    6670                                        mapinshift = end + 2;
     
    6872                                else
    6973                                {
    70                                         if (genstring.len()!=5) genformat=INVALID_FORMAT;
     74                                        if (genstring.len() != 5) genformat = INVALID_FORMAT;
    7175                                        gencopy = 0;
    7276                                        mapinshift = genstring.len();
     
    7478                                break;
    7579                        }
    76                 if (genformat==INVALID_FORMAT)
     80                        if (genformat == INVALID_FORMAT)
    7781                        {
    78                         SString cut;
    79                         if (error_end<0) error_end=genstring.len();
    80                         static const int MAX_ERROR=20;
    81                         if (error_end>MAX_ERROR)
    82                                 cut=genstring.substr(0,MAX_ERROR)+"...";
    83                         else
    84                                 cut=genstring.substr(0,error_end);
    85                         int lf=cut.indexOf('\n');
    86                         if (lf>=0) cut=cut.substr(0,lf);
    87                         logPrintf("Geno","init",LOG_ERROR,"Invalid genotype format declaration: '%s'%s",cut.c_str(),genname.len()?SString::sprintf(" in '%s'",genname.c_str()).c_str():"");
     82                                SString cut;
     83                                if (error_end<0) error_end = genstring.len();
     84                                static const int MAX_ERROR = 20;
     85                                if (error_end>MAX_ERROR)
     86                                        cut = genstring.substr(0, MAX_ERROR) + "...";
     87                                else
     88                                        cut = genstring.substr(0, error_end);
     89                                int lf = cut.indexOf('\n');
     90                                if (lf >= 0) cut = cut.substr(0, lf);
     91                                logPrintf("Geno", "init", LOG_ERROR, "Invalid genotype format declaration: '%s'%s", cut.c_str(), genname.len() ? SString::sprintf(" in '%s'", genname.c_str()).c_str() : "");
    8892                        }
    8993
     
    115119
    116120Geno::Geno(const Geno& src)
    117 :gen(src.gen), name(src.name), format(src.format), txt(src.txt), isvalid(src.isvalid),
    118 f0gen(0), mapinshift(src.mapinshift), mapoutshift(src.mapinshift),
    119 multiline(src.multiline), owner(0)
     121        :gen(src.gen), name(src.name), format(src.format), txt(src.txt), isvalid(src.isvalid),
     122        f0gen(0), mapinshift(src.mapinshift), mapoutshift(src.mapinshift),
     123        multiline(src.multiline), owner(0)
    120124{
    121125        f0gen = src.f0gen ? new Geno(*src.f0gen) : 0; refcount = 1;
     
    216220{
    217221        if (genpos > gen.len()) return -2;
    218         if (genpos<0) return -1;
     222        if (genpos < 0) return -1;
    219223        return mapinshift + genpos;
    220224}
     
    223227{
    224228        stringpos -= mapinshift;
    225         if (stringpos>gen.len()) return -2;
     229        if (stringpos > gen.len()) return -2;
    226230        if (stringpos < 0) return -1;
    227231        return stringpos;
     
    255259        if (gen.len() == 0) { isvalid = 0; return; }
    256260        if (format == INVALID_FORMAT) { isvalid = 0; return; }
    257         Validators* vals=getValidators();
    258         if (vals!=NULL)
    259                 {
     261        Validators* vals = getValidators();
     262        if (vals != NULL)
     263        {
    260264#ifdef WARN_VALIDATION_INCONSISTENCY
    261265                vector<int> results;
    262266                int first_result=-1;
    263267                FOREACH(GenoValidator*, v, (*vals))
    264                         {
     268                {
    265269                        int r=v->testGenoValidity(*this);
    266270                        if (first_result<0) first_result=r;
    267271                        results.push_back(r);
    268                         }
     272                }
    269273                int N=vals->size();
    270274                for(int i=1;i<N;i++)
    271275                        if (results[i]!=results[0])
    272                                 {
    273                                 SString txt="Inconsistent validation results";
    274                                 for(int i=0;i<N;i++)
    275                                         txt+=SString::sprintf(" %d",results[i]);
    276                                 txt+=" for genotype '";
    277                                 txt+=getGene();
    278                                 txt+="'";
    279                                 logPrintf("Geno","validate",LOG_WARN,txt.c_str());
    280                                 break;
    281                                 }
     276                        {
     277                        SString txt="Inconsistent validation results";
     278                        for(int i=0;i<N;i++)
     279                                txt+=SString::sprintf(" %d",results[i]);
     280                        txt+=" for genotype '";
     281                        txt+=getGene();
     282                        txt+="'";
     283                        logPrintf("Geno","validate",LOG_WARN,txt.c_str());
     284                        break;
     285                        }
    282286                isvalid=first_result;
    283287                if (isvalid>=0)
    284288                        return;
    285289#else
    286         FOREACH(GenoValidator*, v, (*vals))
    287                 if ((isvalid = v->testGenoValidity(*this)) >= 0)
    288                         return;
     290                FOREACH(GenoValidator*, v, (*vals))
     291                        if ((isvalid = v->testGenoValidity(*this)) >= 0)
     292                                return;
    289293#endif
    290                 }
     294        }
    291295        isvalid = 0;
    292296        logPrintf("Geno", "validate", LOG_WARN, "Wrong configuration? No genotype validators defined for genetic format 'f%c'.", format);
     
    295299bool Geno::isValid(void)
    296300{
    297         if (isvalid<0)
    298                 {
    299                 LoggerToMemory err(LoggerBase::Enable | LoggerToMemory::StoreAllMessages,LOG_INFO);
     301        if (isvalid < 0)
     302        {
     303                LoggerToMemory err(LoggerBase::Enable | LoggerToMemory::StoreAllMessages, LOG_INFO);
    300304                validate();
    301305                err.disable();
    302                 string msg=err.getCountSummary();
    303                 if (msg.size()>0)
    304                         {
    305                         msg+=ssprintf(" while checking validity of '%s'",getName().c_str());
    306                         msg+="\n";
    307                         msg+=err.getMessages();
    308                         logMessage("Geno","isValid",err.getErrorLevel(),msg.c_str());
    309                         }
    310                 }
    311         return isvalid>0;
     306                string msg = err.getCountSummary();
     307                if (msg.size() > 0)
     308                {
     309                        msg += ssprintf(" while checking validity of '%s'", getName().c_str());
     310                        msg += "\n";
     311                        msg += err.getMessages();
     312                        logMessage("Geno", "isValid", err.getErrorLevel(), msg.c_str());
     313                }
     314        }
     315        return isvalid > 0;
    312316}
    313317
     
    316320        if (otherformat == getFormat()) { if (converter_missing) *converter_missing = false; return *this; }
    317321#ifndef NO_GENOCONVMANAGER
    318         GenoConvManager *converters=getConverters();
     322        GenoConvManager *converters = getConverters();
    319323        if (converters)
    320324        {
     
    324328                                f0gen = new Geno(converters->convert(*this, otherformat, NULL, converter_missing));
    325329                        else
    326                                 { if (converter_missing) *converter_missing = false; }
     330                        {
     331                                if (converter_missing) *converter_missing = false;
     332                        }
    327333                        return *f0gen;
    328334                }
Note: See TracChangeset for help on using the changeset viewer.