Ignore:
Timestamp:
07/18/08 19:41:12 (17 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mjobs
Files:
2 edited

Legend:

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

    r9003 r9012  
    705705}
    706706
     707static int operator==(const TArrayI &a, const TArrayI &b)
     708{
     709    return a.GetSize()==b.GetSize() ?
     710        memcmp(a.GetArray(), b.GetArray(), a.GetSize()*sizeof(Int_t))==0 :
     711        false;
     712}
     713
     714static int IsNull(const TArrayI &a)
     715{
     716    if (a.GetSize()==0)
     717        return true;
     718
     719    return a.GetSize()==0 ? true : a==TArrayI(a.GetSize());
     720}
     721
     722static int IsNull(const TArrayI &a, const TArrayI &b)
     723{
     724    return IsNull(a) && IsNull(b);
     725}
     726
     727Bool_t MSequence::IsSimilar(const MSequence &s) const
     728{
     729    return // Mandatory
     730        fTelescope==s.fTelescope && fSequence==s.fSequence &&
     731        fNight==s.fNight
     732        && fLightCondition==s.fLightCondition &&
     733
     734        fMonteCarlo==s.fMonteCarlo &&
     735
     736        (fRunsSub    ==s.fRunsSub     || IsNull(fRunsSub,     s.fRunsSub))     &&
     737        (fCalRunsSub ==s.fCalRunsSub  || IsNull(fCalRunsSub,  s.fCalRunsSub))  &&
     738        (fPedRunsSub ==s.fPedRunsSub  || IsNull(fPedRunsSub,  s.fPedRunsSub))  &&
     739        (fDatRunsSub ==s.fDatRunsSub  || IsNull(fDatRunsSub,  s.fDatRunsSub))  &&
     740        (fExclRunsSub==s.fExclRunsSub || IsNull(fExclRunsSub, s.fExclRunsSub))
     741        ;
     742}
     743
     744Bool_t MSequence::IsIdentical(const MSequence &s) const
     745{
     746    return IsSimilar(s) &&
     747        // Unnecessary
     748        fStart==s.fStart         && fLastRun==s.fLastRun   &&
     749        fNumEvents==s.fNumEvents && fPeriod==s.fPeriod     &&
     750        fProject==s.fProject     && fSource==s.fSource     &&
     751        /*fTriggerTable==s.fTriggerTable &&*/ fHvSettings==s.fHvSettings;
     752}
     753
     754Bool_t MSequence::operator==(const MSequence &s) const
     755{
     756    return IsIdentical(s) &&
     757        // Obsolete
     758        fDataPath==s.fDataPath && fFileName==s.fFileName;
     759}
     760
    707761//---------------------------------------------------------------------------
    708762//
     
    927981        out << pre << "Night:          " << fNight.GetStringFmt("%Y-%m-%d") << endl;
    928982    out << endl;
    929     out << pre << "LightCondition: ";
     983    out << pre << "LightConditions: ";
    930984    switch (fLightCondition)
    931985    {
     
    9651019    {
    9661020        str += PrintRuns(out, pre, "Runs:     ", fRuns,     fRunsSub);
    967         str += PrintRuns(out, pre, "CalRuns:  ", fCalRuns,  fCalRunsSub);
    968         str += PrintRuns(out, pre, "PedRuns:  ", fPedRuns,  fPedRunsSub);
    969         str += PrintRuns(out, pre, "DataRuns: ", fDatRuns,  fDatRunsSub);
    970         str += PrintRuns(out, pre, "Exclude:  ", fExclRuns, fExclRunsSub);
     1021        /*str +=*/ PrintRuns(out, pre, "CalRuns:  ", fCalRuns,  fCalRunsSub);
     1022        /*str +=*/ PrintRuns(out, pre, "PedRuns:  ", fPedRuns,  fPedRunsSub);
     1023        /*str +=*/ PrintRuns(out, pre, "DataRuns: ", fDatRuns,  fDatRunsSub);
     1024        /*str +=*/ PrintRuns(out, pre, "Exclude:  ", fExclRuns, fExclRunsSub);
    9711025    }
    9721026
  • trunk/MagicSoft/Mars/mjobs/MSequence.h

    r9003 r9012  
    2222        kCalibrated, kImages
    2323    };
     24
    2425private:
    2526    TString fFileName;         // Expanded file name
     
    115116        fExclRunsSub(s.fExclRunsSub), fMonteCarlo(s.fMonteCarlo) { }
    116117
     118    Bool_t IsSimilar(const MSequence &s) const;
     119    Bool_t IsIdentical(const MSequence &s) const;
     120    Bool_t operator==(const MSequence &s) const;
     121
    117122    // I/O
    118123    Bool_t WriteFile(const char *filename, const Option_t *o) const;
Note: See TracChangeset for help on using the changeset viewer.