Ignore:
Timestamp:
02/02/09 17:34:21 (16 years ago)
Author:
tbretz
Message:
*** empty log message ***
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mreport/MReportCamera.cc

    r9059 r9289  
    400400    str.Remove(0, len);
    401401    str=str.Strip(TString::kBoth);
    402     return kTRUE;
    403 
     402
     403    return kTRUE;
    404404}
    405405
     
    443443// Interprete the Central Pixel part
    444444//
    445 Bool_t MReportCamera::InterpreteCentralPix(TString &str)
     445Bool_t MReportCamera::InterpreteCentralPix(TString &str, Int_t ver)
    446446{
    447447    if (!CheckTag(str, "CPIX "))
     
    450450    Int_t len;
    451451    Short_t status;
    452     Int_t n=sscanf(str.Data(), " %hd %n",
    453                   &status, &len);
     452
     453    Int_t n=sscanf(str.Data(), " %hd %n", &status, &len);
    454454    if (n!=1)
    455455    {
    456456        *fLog << warn << "WARNING - Reading information of 'CPIX' section." << endl;
    457         return kFALSE;
     457            return kFALSE;
     458    }
     459
     460    if (ver>=200812140)
     461    {
     462        Int_t len2;
     463        Int_t dc;
     464        n=sscanf(str.Data()+len, " %d %n", &dc, &len2);
     465        if (n!=1)
     466        {
     467            *fLog << warn << "WARNING - Reading information of 'CPIX' section." << endl;
     468            return kFALSE;
     469        }
     470
     471        fCentralPix->fDC = dc;
     472
     473        len += len2;
    458474    }
    459475
     
    518534
    519535    str.Remove(0, pos);
     536    str=str.Strip(TString::kBoth);
     537
     538    return kTRUE;
     539}
     540
     541// --------------------------------------------------------------------------
     542//
     543// ps: Camera cabinet power supply
     544// v1: PS sensor v1
     545// v2: PS sensor v2
     546//
     547Bool_t MReportCamera::InterpretePSSEN(TString &str)
     548{
     549    if (!CheckTag(str, "PSSEN "))
     550        return kFALSE;
     551
     552    Int_t len;
     553    Int_t ps, v1, v2;
     554
     555    const Int_t n=sscanf(str.Data(), "%d %d %d %n", &ps, &v1, &v2, &len);
     556    if (n!=3)
     557    {
     558        *fLog << warn << "WARNING - Reading information of 'PSSEN' section." << endl;
     559        return kFALSE;
     560    }
     561
     562    str.Remove(0, len);
     563    str=str.Strip(TString::kBoth);
     564
     565    return kTRUE;
     566}
     567
     568// --------------------------------------------------------------------------
     569//
     570// liq: Liquid inside camera
     571//
     572Bool_t MReportCamera::InterpreteLIQ(TString &str)
     573{
     574    if (!CheckTag(str, "LIQ "))
     575        return kFALSE;
     576
     577    Int_t len;
     578    Int_t liq;
     579
     580    const Int_t n=sscanf(str.Data(), "%d %n", &liq, &len);
     581    if (n!=1)
     582    {
     583        *fLog << warn << "WARNING - Reading information of 'LIQ' section." << endl;
     584        return kFALSE;
     585    }
     586
     587    str.Remove(0, len);
    520588    str=str.Strip(TString::kBoth);
    521589
     
    621689         if (!InterpreteActiveLoad(str))
    622690            return kCONTINUE;
    623          if (!InterpreteCentralPix(str))
     691         if (!InterpreteCentralPix(str, ver))
    624692            return kCONTINUE;
    625693    }
     
    633701    }
    634702
     703    if (ver >= 200812140)
     704    {
     705        if (!InterpretePSSEN(str))
     706            return kCONTINUE;
     707        if (!InterpreteLIQ(str))
     708            return kCONTINUE;
     709    }
     710
    635711    if (str!="OVER")
    636712    {
    637         *fLog << warn << "WARNING - 'OVER' tag not found." << endl;
    638         return kCONTINUE;
    639     }
    640 
    641     return kTRUE;
    642 }
     713        *fLog << warn << "WARNING - 'OVER' tag not found... remaining: " << str << endl;
     714        return kCONTINUE;
     715    }
     716
     717    return kTRUE;
     718}
Note: See TracChangeset for help on using the changeset viewer.