Ignore:
Timestamp:
11/21/02 10:16:52 (22 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mbase
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mbase/MAGIC.h

    r1450 r1657  
    1818const Int_t kCONTINUE = 2;
    1919const Int_t kSKIP     = 2;
     20const Int_t kERROR    = 3;
    2021
    2122//
  • trunk/MagicSoft/Mars/mbase/MEvtLoop.cc

    r1600 r1657  
    191191// for developers or use in special jobs only!
    192192//
    193 void MEvtLoop::Process(Int_t maxcnt) const
     193Bool_t MEvtLoop::Process(Int_t maxcnt) const
    194194{
    195195    //
     
    233233    // else only maxcnt events are processed
    234234    //
     235    Bool_t rc = kTRUE;
    235236    if (maxcnt<0)
    236237        // process first and increment if sucessfull
    237238        if (fProgress)
    238             while (fTaskList->Process())
     239            while ((rc=fTaskList->Process())==kTRUE)
    239240            {
    240241                fProgress->SetPosition(++dummy);
     
    246247            }
    247248        else
    248             while (fTaskList->Process()) dummy++;
     249            while ((rc=fTaskList->Process())==kTRUE) dummy++;
    249250    else
    250251        // check for number and break if unsuccessfull
    251252        if (fProgress)
    252             while (dummy-- && fTaskList->Process())
     253            while (dummy-- && (rc=fTaskList->Process())==kTRUE)
    253254            {
    254255                fProgress->SetPosition(maxcnt - dummy);
     
    260261            }
    261262        else
    262             while (dummy-- && fTaskList->Process());
     263            while (dummy-- && (rc=fTaskList->Process())==kTRUE);
    263264
    264265    //
     
    279280        << " --> " << (maxcnt<0?dummy:maxcnt)/clock.RealTime() << " Events/s"
    280281        << endl << endl;
     282
     283    return rc!=kERROR;
    281284}
    282285
     
    306309    //
    307310    if (rc)
    308         Process(maxcnt);
     311        rc = Process(maxcnt);
    309312
    310313    //
  • trunk/MagicSoft/Mars/mbase/MEvtLoop.h

    r1540 r1657  
    5252
    5353    Bool_t PreProcess(const char *tlist="MTaskList");
    54     void  Process(Int_t maxcnt) const;
     54    Bool_t Process(Int_t maxcnt) const;
    5555    Bool_t PostProcess() const;
    5656
  • trunk/MagicSoft/Mars/mbase/MTask.cc

    r1574 r1657  
    5656//                     are executed. A task can return kFALSE to           //
    5757//                     stop the execuition of the tasklist or              //
    58 //                     kCONTINUE to skip the pending tasks.                //
     58//                     kCONTINUE to skip the pending tasks. If you want    //
     59//                     to stop the eventloop and wants the eventloop to    //
     60//                     return the status 'failed' return kERROR.           //
    5961//                                                                         //
    6062//   - PostProcess():  executed after the eventloop. Here you can close    //
  • trunk/MagicSoft/Mars/mbase/MTaskList.cc

    r1542 r1657  
    426426            break;
    427427
     428        case kERROR:
     429            //
     430            // an error occured: stop eventloop and return: failed
     431            //
     432            *fLog << err << dbginf << "Fatal error occured... stopped." << endl;
     433            rc = kERROR;
     434            break;
     435
    428436        case kCONTINUE:
    429437            //
     
    434442
    435443        default:
    436             *fLog << warn << "MTaskList::Process: Unknown return value from MTask::Process()... ignored." << endl;
     444            *fLog << warn << dbginf << "Unknown return value from MTask::Process()... ignored." << endl;
    437445            continue;
    438446        }
Note: See TracChangeset for help on using the changeset viewer.