Changeset 16108 for trunk/FACT++/src


Ignore:
Timestamp:
05/24/13 14:04:48 (12 years ago)
Author:
tbretz
Message:
Added a new run-close condition for the case an invalid event was received.
Location:
trunk/FACT++/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/FACT++/src/EventBuilder.cc

    r16103 r16108  
    3636void runFinished();
    3737void factStat(GUI_STAT gj);
    38 int eventCheck(const shared_ptr<EVT_CTRL2> &evt);
     38bool eventCheck(const shared_ptr<EVT_CTRL2> &evt);
    3939void debugHead(void *buf);
    4040
     
    806806        if (run->closeRequest&kRequestConnectionChange)
    807807            reason.push_back("connection changed");
     808        if (run->closeRequest&kRequestEventCheckFailed)
     809            reason.push_back("event check failed");
    808810    }
    809811    if (!cond4)
     
    828830            evt->fEvent->BoardTime[ib] = evt->FADhead.get()[ib].time;
    829831
    830         const int rc = eventCheck(evt);
    831         if (rc < 0)
     832        if (!eventCheck(evt))
     833        {
     834            evt->runCtrl->closeRequest = kRequestEventCheckFailed;
    832835            return;
     836        }
    833837    }
    834838
  • trunk/FACT++/src/EventBuilder.h

    r16105 r16108  
    3535    kRequestManual = 1,
    3636    kRequestTimeout = 2,
    37     kRequestConnectionChange = 4
     37    kRequestConnectionChange = 4,
     38    kRequestEventCheckFailed = 8
    3839};
    3940
  • trunk/FACT++/src/EventBuilderWrapper.h

    r16107 r16108  
    609609    }
    610610
    611     int eventCheck(const shared_ptr<EVT_CTRL2> &evt)
     611    bool eventCheck(const shared_ptr<EVT_CTRL2> &evt)
    612612    {
    613613        const PEVNT_HEADER *fadhd = evt->FADhead.get();
     
    640640            {
    641641                fMsg.Error("Inconsistency in FAD status detected.... closing run.");
    642                 evt->runCtrl->maxEvt = 0;
    643                 return -1;
     642                return false;
    644643            }
    645644
     
    647646            {
    648647                fMsg.Error("Inconsistent run number detected.... closing run.");
    649                 evt->runCtrl->maxEvt = 0;
    650                 return -1;
     648                return false;
    651649            }
    652650
     
    662660            {
    663661                fMsg.Error("Inconsistent FAD event number detected.... closing run.");
    664                 evt->runCtrl->maxEvt = 0;
    665                 return -1;
     662                return false;
    666663            }
    667664
     
    669666            {
    670667                fMsg.Error("Inconsistent FTM trigger number detected.... closing run.");
    671                 evt->runCtrl->maxEvt = 0;
    672                 return -1;
     668                return false;
    673669            }
    674670
     
    676672            {
    677673                fMsg.Error("Inconsistent phase shift detected.... closing run.");
    678                 evt->runCtrl->maxEvt = 0;
    679                 return -1;
     674                return false;
    680675            }
    681676
     
    683678            {
    684679                fMsg.Error("Inconsistent DAC values detected.... closing run.");
    685                 evt->runCtrl->maxEvt = 0;
    686                 return -1;
     680                return false;
    687681            }
    688682
     
    690684            {
    691685                fMsg.Error("Inconsistent trigger type detected.... closing run.");
    692                 evt->runCtrl->maxEvt = 0;
    693                 return -1;
     686                return false;
    694687            }
    695688        }
     
    700693        // need gotNewRun/closedRun to know it is finished
    701694
    702         return 0;
     695        return true;
    703696    }
    704697
     
    12411234}
    12421235
    1243 int eventCheck(const shared_ptr<EVT_CTRL2> &evt)
     1236bool eventCheck(const shared_ptr<EVT_CTRL2> &evt)
    12441237{
    12451238    return EventBuilderWrapper::This->eventCheck(evt);
Note: See TracChangeset for help on using the changeset viewer.