Beispiel #1
0
    if not opts.do_not_rewind:
        mainSeq.Enable = False
        evtSel.rewind()
        mainSeq.Enable = True

    # steer the monitor sequence depending on the iteration
    appMgr.algorithm('AlignMonitorSeq').Enable = (i == 0)
    appMgr.algorithm('Moni').Enable = (i == 0)
    if opts.numiter > 1:
        appMgr.algorithm('AlignPostMonitorSeq').Enable = (i == opts.numiter -
                                                          1)

    # event loop
    appMgr.run(opts.numevents)

    # fire incident for update
    from GaudiPython import gbl
    from Configurables import Escher
    incSvc = appMgr.service('IncidentSvc', 'IIncidentSvc')
    updateConstants = gbl.Incident('Alignment', 'UpdateConstants')
    if Escher().getProp("Incident") == "GlobalMPedeFit":
        updateConstants = gbl.Incident('Alignment', 'GlobalMPedeFit')
        printUniformity = gbl.Incident('Alignment', 'PrintUniformTD')
        updateTrackSelector = gbl.Incident('Alignment', 'ResetUniformity')
        incSvc.fireIncident(printUniformity)
        incSvc.fireIncident(updateTrackSelector)
    incSvc.fireIncident(updateConstants)

#exit the appmgr for finalize
appMgr.exit()
def resetHistos(algorithm):
    # get pointer to incident service
    incSvc = appMgr.service('IncidentSvc', 'IIncidentSvc')
    # incident to trigger fit of residual distributions
    resetIt = gbl.Incident(algorithm, 'ResetHistos')
    incSvc.fireIncident(resetIt)
Beispiel #3
0
def update(algorithm, appMgr):
    # get pointer to incident service
    incSvc = appMgr.service('IncidentSvc', 'IIncidentSvc')
    # incident to trigger update of constants
    updateConstants = gbl.Incident(algorithm, 'UpdateConstants')
    incSvc.fireIncident(updateConstants)
def fitSensorResiduals(algorithm):
    # get pointer to incident service
    incSvc = appMgr.service('IncidentSvc', 'IIncidentSvc')
    # incident to trigger fit of residual distributions
    fitIt = gbl.Incident(algorithm, 'FitSensorResiduals')
    incSvc.fireIncident(fitIt)