Ignore:
Timestamp:
01/10/05 10:45:07 (20 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mjobs
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc

    r5732 r5760  
    180180}
    181181
    182 Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcamab, MPedestalCam &pedcam)
     182Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcamab, MPedestalCam &pedcam2/*, MPedestalCam &pedcam*/)
    183183{
    184184    if (!fSequence.IsValid())
     
    276276    plist.AddToList(this); // take care of fDisplay!
    277277    plist.AddToList(&badcam);
    278     plist.AddToList(&pedcam);
    279278    plist.AddToList(&calibcont);
    280279
     
    323322    MBadPixelsMerge        merge(&badpix);
    324323
    325     MPedCalcFromLoGain     pedlo1("MPedCalcMeanFromLoGain");
     324    // Make sure that pedcamab has the correct name
     325    pedcamab.SetName("MPedestalFundamental");
     326    //pedcam.SetName("MPedestalFromExtractorRndm");
     327    pedcam2.SetName("MPedestalFromExtractor");
     328    //plist.AddToList(&pedcam);
     329    plist.AddToList(&pedcam2);
     330    plist.AddToList(&pedcamab);
     331
     332    MPedCalcFromLoGain     pedlo1("MPedCalcFundamental");
    326333    pedlo1.SetPedestalUpdate(kTRUE);
    327     pedlo1.SetPedestalsOut(&pedcamab);
    328 
    329     MPedCalcFromLoGain     pedlo2("MPedCalcRmsFromLoGain");
    330     pedlo2.SetPedestalUpdate(kTRUE);
    331     pedlo2.SetPedestalsIn(&pedcamab);
     334    pedlo1.SetNamePedestalCamOut("MPedestalFundamental");
     335    /*
     336     MPedCalcFromLoGain     pedlo2("MPedCalcWithExtractorRndm");
     337     pedlo2.SetPedestalUpdate(kTRUE);
     338     pedlo2.SetRandomCalculation(kTRUE);
     339     pedlo2.SetNamePedestalCamIn("MPedestalFundamental");
     340     pedlo2.SetNamePedestalCamOut("MPedestalFromExtractorRndm");
     341     */
     342
     343    MPedCalcFromLoGain     pedlo3("MPedCalcWithExtractor");
     344    pedlo3.SetPedestalUpdate(kTRUE);
     345    pedlo3.SetRandomCalculation(kFALSE);
     346    pedlo3.SetNamePedestalCamIn("MPedestalFundamental");
     347    pedlo3.SetNamePedestalCamOut("MPedestalFromExtractor");
    332348
    333349    if (extractor1)
     
    336352        const Float_t win = extractor1->GetNumHiGainSamples();
    337353        pedlo1.SetExtractWindow(15, (UShort_t)TMath::Nint(win));
    338         pedlo2.SetExtractWindow(15, (UShort_t)TMath::Nint(win));
     354        //pedlo2.SetExtractWindow(15, (UShort_t)TMath::Nint(win));
     355        pedlo3.SetExtractWindow(15, (UShort_t)TMath::Nint(win));
    339356
    340357        if (extractor1->InheritsFrom("MExtractTimeAndCharge"))
    341358        {
    342             pedlo2.SetExtractor((MExtractTimeAndCharge*)extractor1);
     359            //pedlo2.SetExtractor((MExtractTimeAndCharge*)extractor1);
     360            pedlo3.SetExtractor((MExtractTimeAndCharge*)extractor1);
    343361            extractor1->SetPedestals(&pedcamab);
    344362        }
     
    355373        calib.SetCalibrationMode(MCalibrateData::kFfactor);
    356374        calib.SetPedestalFlag(MCalibrateData::kRun);
     375        // FIXME: What to do for MC files???
     376        calib.AddPedestal("MPedestalCam", "MPedPhotFundamental");
     377        calib.AddPedestal("MPedestalCam", "MPedPhotFromExtractor");
     378        //calib.AddPedestal("MPedestalCam", "MPedPhotFromExtractorRndm");
    357379    }
    358380    else
    359381    {
    360         calib.AddPedestal("MPedestalCam", "MPedPhotFromExtractorRndm");
    361382        calib.AddPedestal("Fundamental");
     383        calib.AddPedestal("FromExtractor");
     384        //calib.AddPedestal("FromExtractorRndm");
    362385        calib.SetPedestalFlag(MCalibrateData::kEvent);
    363386    }
     
    366389    MBadPixelsCalc         bpcal;
    367390    MBadPixelsTreat        treat;
     391
     392    bpcal.SetNamePedPhotCam("MPedPhotFromExtractor");
     393    treat.AddNamePedPhotCam("MPedPhotFundamental");
     394    treat.AddNamePedPhotCam("MPedPhotFromExtractor");
     395    //treat.AddNamePedPhotCam("MPedPhotFromExtractorRndm");
     396
    368397
    369398    MHCamEvent evt0(0, "PedFLG",      "Pedestal from Lo Gain;;P [fadc/sl]");
     
    383412    evt7.EnableVariance();
    384413
    385     MFillH fill0(&evt0, &pedcamab,             "FillPedFLG");
    386     MFillH fill1(&evt1, "MPedestalCam",        "FillPedRmsFLG");
    387     MFillH fill2(&evt2, "MExtractedSignalCam", "FillExtracted");
    388     MFillH fill3(&evt3, "MPedPhotCam",         "FillPedPhot");
    389     MFillH fill4(&evt4, "MPedPhotFromExtractorRndm", "FillPedRMS");
    390     MFillH fill5(&evt5, "MCerPhotEvt",         "FillInterpolated");
    391     MFillH fill6(&evt6, "MBadPixelsCam",       "FillUnsuitable");
    392     MFillH fill7(&evt7, "MArrivalTime",        "FillTimes");
     414    MFillH fill0(&evt0, "MPedestalFundamental",   "FillPedFLG");
     415    MFillH fill1(&evt1, "MPedestalFromExtractor", "FillPedRmsFLG");
     416    MFillH fill2(&evt2, "MExtractedSignalCam",    "FillExtracted");
     417    MFillH fill3(&evt3, "MPedPhotFundamental",    "FillPedPhot");
     418    MFillH fill4(&evt4, "MPedPhotFromExtractor", "FillPedRMS");
     419    MFillH fill5(&evt5, "MCerPhotEvt",            "FillInterpolated");
     420    MFillH fill6(&evt6, "MBadPixelsCam",          "FillUnsuitable");
     421    MFillH fill7(&evt7, "MArrivalTime",           "FillTimes");
    393422
    394423    // The second rule is for the case reading raw-files!
    395424    MWriteRootFile write(2, Form("%s{s/_D_/_Y_}{s/.raw$/.root}", fPathOut.Data()), fOverwrite);
    396425    // Run Header
    397     write.AddContainer("MRawRunHeader",       "RunHeaders");
    398     write.AddContainer("MBadPixelsCam",       "RunHeaders");
    399     write.AddContainer("MGeomCam",            "RunHeaders");
     426    write.AddContainer("MRawRunHeader",             "RunHeaders");
     427    write.AddContainer("MBadPixelsCam",             "RunHeaders");
     428    write.AddContainer("MGeomCam",                  "RunHeaders");
    400429    // Monte Carlo Headers
    401     write.AddContainer("MMcTrigHeader",       "RunHeaders", kFALSE);
    402     write.AddContainer("MMcConfigRunHeader",  "RunHeaders", kFALSE);
    403     write.AddContainer("MMcCorsikaRunHeader", "RunHeaders", kFALSE);
     430    write.AddContainer("MMcTrigHeader",             "RunHeaders", kFALSE);
     431    write.AddContainer("MMcConfigRunHeader",        "RunHeaders", kFALSE);
     432    write.AddContainer("MMcCorsikaRunHeader",       "RunHeaders", kFALSE);
    404433    // Monte Carlo
    405     write.AddContainer("MMcEvt",              "Events", kFALSE);
    406     write.AddContainer("MMcTrig",             "Events", kFALSE);
     434    write.AddContainer("MMcEvt",                    "Events",    kFALSE);
     435    write.AddContainer("MMcTrig",                   "Events",    kFALSE);
    407436    // Data
    408     write.AddContainer("MCerPhotEvt",         "Events");
    409     write.AddContainer("MPedPhotCam",         "Events");
    410     write.AddContainer("MPedPhotFromExtractorRndm", "Events");
    411     write.AddContainer("MTime",               "Events", kFALSE);
    412     write.AddContainer("MRawEvtHeader",       "Events");
    413     write.AddContainer("MArrivalTime",        "Events");
     437    write.AddContainer("MCerPhotEvt",               "Events");
     438    write.AddContainer("MPedPhotFundamental",       "Events");
     439    write.AddContainer("MPedPhotFromExtractor",     "Events");
     440    //write.AddContainer("MPedPhotFromExtractorRndm", "Events");
     441    write.AddContainer("MTime",                     "Events",     kFALSE);
     442    write.AddContainer("MRawEvtHeader",             "Events");
     443    write.AddContainer("MArrivalTime",              "Events");
    414444    // Slow-Control: Current
    415     write.AddContainer("MTimeCurrents",       "Currents", kFALSE);
    416     write.AddContainer("MCameraDC",           "Currents", kFALSE);
    417     write.AddContainer("MReportCurrents",     "Currents", kFALSE);
     445    write.AddContainer("MTimeCurrents",             "Currents",  kFALSE);
     446    write.AddContainer("MCameraDC",                 "Currents",  kFALSE);
     447    write.AddContainer("MReportCurrents",           "Currents",  kFALSE);
    418448    // Slow-Control: Camera
    419     write.AddContainer("MReportCamera",       "Camera", kFALSE);
    420     write.AddContainer("MTimeCamera",         "Camera", kFALSE);
    421     write.AddContainer("MCameraAUX",          "Camera", kFALSE);
    422     write.AddContainer("MCameraCalibration",  "Camera", kFALSE);
    423     write.AddContainer("MCameraCooling",      "Camera", kFALSE);
    424     write.AddContainer("MCameraHV",           "Camera", kFALSE);
    425     write.AddContainer("MCameraLV",           "Camera", kFALSE);
    426     write.AddContainer("MCameraLids",         "Camera", kFALSE);
     449    write.AddContainer("MReportCamera",             "Camera",    kFALSE);
     450    write.AddContainer("MTimeCamera",               "Camera",    kFALSE);
     451    write.AddContainer("MCameraAUX",                "Camera",    kFALSE);
     452    write.AddContainer("MCameraCalibration",        "Camera",    kFALSE);
     453    write.AddContainer("MCameraCooling",            "Camera",    kFALSE);
     454    write.AddContainer("MCameraHV",                 "Camera",    kFALSE);
     455    write.AddContainer("MCameraLV",                 "Camera",    kFALSE);
     456    write.AddContainer("MCameraLids",               "Camera",    kFALSE);
    427457    // Slow-Control: Trigger
    428     write.AddContainer("MReportTrigger",      "Trigger", kFALSE);
    429     write.AddContainer("MTimeTrigger",        "Trigger", kFALSE);
     458    write.AddContainer("MReportTrigger",            "Trigger",    kFALSE);
     459    write.AddContainer("MTimeTrigger",              "Trigger",    kFALSE);
    430460    // Slow-Control: Drive
    431     write.AddContainer("MPointingPos",        "Drive", kFALSE);
    432     write.AddContainer("MReportDrive",        "Drive", kFALSE);
    433     write.AddContainer("MTimeDrive",          "Drive", kFALSE);
     461    write.AddContainer("MPointingPos",              "Drive",      kFALSE);
     462    write.AddContainer("MReportDrive",              "Drive",      kFALSE);
     463    write.AddContainer("MTimeDrive",                "Drive",      kFALSE);
    434464    // Slow-Control: Central Control
    435     write.AddContainer("MReportCC",           "CC", kFALSE);
    436     write.AddContainer("MTimeCC",             "CC", kFALSE);
     465    write.AddContainer("MReportCC",                 "CC",        kFALSE);
     466    write.AddContainer("MTimeCC",                   "CC",        kFALSE);
    437467
    438468    // Now setup tasklist for events
     
    445475    {
    446476        tlist2.AddToList(&pedlo1);
    447         tlist2.AddToList(&pedlo2);
     477        //tlist2.AddToList(&pedlo2);
     478        tlist2.AddToList(&pedlo3);
    448479    }
    449480    tlist2.AddToList(&fill0);
  • trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h

    r5570 r5760  
    3434    MJCalibrateSignal(const char *name=NULL, const char *title=NULL);
    3535
    36     Bool_t ProcessFile(MPedestalCam &camab, MPedestalCam &cam);
     36    Bool_t ProcessFile(MPedestalCam &camab, MPedestalCam &cam2/*, MPedestalCam &cam2*/);
    3737
    3838    ClassDef(MJCalibrateSignal, 0) // Tool to create a pedestal file (MPedestalCam)
  • trunk/MagicSoft/Mars/mjobs/MJCalibration.cc

    r5570 r5760  
    15631563    // Input containers
    15641564    //
     1565    pedcam.SetName("MPedestalCam");
    15651566    plist.AddToList(&pedcam);
    15661567    plist.AddToList(&fBadPixels);
  • trunk/MagicSoft/Mars/mjobs/MJPedestal.cc

    r5570 r5760  
    113113MJPedestal::MJPedestal(const char *name, const char *title)
    114114    : fRuns(0), fExtractor(NULL), fDisplayType(kNormalDisplay),
    115       fDataCheck(kFALSE), fExtractType(kUsePedRun)
     115      fDataCheck(kFALSE), fExtractType(kUsePedRun), fExtractionType(kFundamental)
    116116{
    117117    fName  = name  ? name  : "MJPedestal";
     
    121121    SetUsePedRun();
    122122    SetPathIn("");
    123     SetExtractorResolution(kFALSE);
    124123}
    125124
     
    298297      }
    299298   
    300     if (fExtractorResolution)
     299    if (fExtractionType!=kFundamental/*fExtractorResolution*/)
    301300      {
    302301        for (UInt_t i=0;i<geomcam.GetNumPixels();i++)
     
    338337    // Display data
    339338    //
    340     if (fDisplayType != kDataCheckDisplay && fExtractType != kUseHists && !fExtractorResolution)
     339    if (fDisplayType != kDataCheckDisplay && fExtractType != kUseHists && fExtractionType==kFundamental/*fExtractorResolution*/)
    341340      {
    342341        TCanvas &c3 = fDisplay->AddTab("Pedestals");
     
    381380      {
    382381
    383         TCanvas &c3 = fDisplay->AddTab(fExtractorResolution ? "PedExtrd" : "Ped");
     382        TCanvas &c3 = fDisplay->AddTab(fExtractionType!=kFundamental/*fExtractorResolution*/ ? "PedExtrd" : "Ped");
    384383        c3.Divide(2,3);
    385384       
     
    391390        // for the datacheck, fix the ranges!!
    392391        //
    393         if (!fExtractorResolution)
     392        if (fExtractionType==kFundamental/*!fExtractorResolution*/)
    394393          {
    395394            obj1->SetMinimum(fgPedestalMin);
     
    535534      }
    536535   
    537     if (fExtractorResolution)
     536    if (fExtractionType!=kFundamental/*fExtractorResolution*/)
    538537      {
    539538           
     
    674673void MJPedestal::SetExtractor(MExtractor* ext)
    675674{
    676     if (fExtractor)
    677         delete fExtractor;
    678     fExtractor = ext ? (MExtractor*)ext->Clone(ext->GetName()) : NULL;
     675    if (ext)
     676    {
     677        if (fExtractor)
     678            delete fExtractor;
     679        fExtractor = ext ? (MExtractor*)ext->Clone(ext->GetName()) : NULL;
     680    }
     681    else
     682        fExtractor = 0;
    679683}
    680684
     
    709713            fExtractType = kUseHists;
    710714
    711     SetExtractorResolution(GetEnv("ExtractorResolution", fExtractorResolution));
     715    //fExtractorResolution = GetEnv("ExtractionType", fExtractorResolution);
    712716
    713717    SetNoStorage(GetEnv("DisableOutput", IsNoStorage()));
     
    784788        return kTRUE;
    785789
    786     if (!fExtractorResolution || !fExtractor->InheritsFrom("MExtractTimeAndCharge"))
     790    if (fExtractionType==kFundamental || !fExtractor->InheritsFrom("MExtractTimeAndCharge"))
    787791        return kFALSE;
    788792
    789793    extped.SetPedestalsIn(&fPedestalCamIn);
    790794    extped.SetExtractor((MExtractTimeAndCharge*)fExtractor);
     795    extped.SetRandomCalculation(fExtractionType==kWithExtractorRndm);
    791796
    792797    return kTRUE;
  • trunk/MagicSoft/Mars/mjobs/MJPedestal.h

    r5557 r5760  
    5959    Extract_t fExtractType;                              // Chosen extractor type
    6060
    61     Bool_t fExtractorResolution;                         // Flag if the extractor is used to calculate the pedestals
     61    enum Extraction { kFundamental, kWithExtractorRndm, kWithExtractor };
     62    Int_t fExtractionType;                         // Flag if the extractor is used to calculate the pedestals
    6263
    6364    MExtractor *ReadCalibration() const;
     
    102103    void SetDataCheckDisplay()                  { fDisplayType = kDataCheckDisplay; }
    103104    void SetNormalDisplay()                     { fDisplayType = kNormalDisplay;    }
    104     void SetExtractorResolution(const Bool_t b=kTRUE) { fExtractorResolution = b;  }
     105
     106    void SetExtractionFundamental()       { fExtractionType=kFundamental; }
     107    void SetExtractionWithExtractorRndm() { fExtractionType=kWithExtractorRndm; }
     108    void SetExtractionWithExtractor()     { fExtractionType=kWithExtractor; }
    105109
    106110    MExtractor *GetExtractor() const { return fExtractor; }
  • trunk/MagicSoft/Mars/mjobs/MJStar.cc

    r5309 r5760  
    185185 */
    186186    //MBadPixelsMerge        merge(&badpix);
    187     MImgCleanStd           clean;
     187    MImgCleanStd           clean;
     188    clean.SetNamePedPhotCam("MPedPhotFromExtractor");
     189
    188190    MHillasCalc            hcalc;
    189191
Note: See TracChangeset for help on using the changeset viewer.