#include <EPStates.h>
Public Types | |
typedef mpl::list < sc::transition< Event, HandleEvent > , sc::custom_reaction< Lumi > , sc::custom_reaction< File > > | reactions |
Public Member Functions | |
bool | checkInvariant () |
ContinueLumi (my_context ctx) | |
sc::result | react (Lumi const &lumi) |
sc::result | react (File const &file) |
~ContinueLumi () | |
Private Attributes | |
edm::IEventProcessor & | ep_ |
Definition at line 437 of file EPStates.h.
typedef mpl::list< sc::transition<Event, HandleEvent>, sc::custom_reaction<Lumi>, sc::custom_reaction<File> > statemachine::ContinueLumi::reactions |
Definition at line 447 of file EPStates.h.
statemachine::ContinueLumi::ContinueLumi | ( | my_context | ctx | ) |
Definition at line 648 of file EPStates.cc.
References checkInvariant(), ep_, and edm::IEventProcessor::readAndCacheLumi().
: my_base(ctx), ep_(context<Machine>().ep()) { ep_.readAndCacheLumi(true); checkInvariant(); }
statemachine::ContinueLumi::~ContinueLumi | ( | ) |
bool statemachine::ContinueLumi::checkInvariant | ( | ) |
Definition at line 659 of file EPStates.cc.
References fjr2json::lumi, DTTTrigCorrFirst::run, and convertSQLiteXML::runNumber.
Referenced by ContinueLumi(), react(), and ~ContinueLumi().
{ assert(context<HandleRuns>().currentRun() != INVALID_RUN); assert(context<HandleLumis>().currentLumi().processHistoryID() == context<HandleRuns>().currentRun().processHistoryID()); assert(context<HandleLumis>().currentLumi().run() == context<HandleRuns>().currentRun().runNumber()); assert(context<HandleLumis>().currentLumi().lumi() != INVALID_LUMI); return true; }
sc::result statemachine::ContinueLumi::react | ( | File const & | file | ) |
Definition at line 676 of file EPStates.cc.
References checkInvariant().
{ checkInvariant(); if(!context<HandleFiles>().shouldWeCloseOutput()) { return transit<HandleNewInputFile3>(); } return forward_event(); }
sc::result statemachine::ContinueLumi::react | ( | Lumi const & | lumi | ) |
Definition at line 667 of file EPStates.cc.
References checkInvariant(), statemachine::Lumi::id(), and fjr2json::lumi.
{ checkInvariant(); if(context<HandleLumis>().currentLumi().lumi() != lumi.id()) { return transit<AnotherLumi>(); } else { return transit<ContinueLumi>(); } }
Definition at line 452 of file EPStates.h.
Referenced by ContinueLumi().