#include <FWCore/Framework/src/EPStates.h>
Public Types | |
typedef mpl::list < sc::custom_reaction< Lumi >, sc::custom_reaction< File > > | reactions |
Public Member Functions | |
bool | checkInvariant () |
ContinueRun2 (my_context ctx) | |
sc::result | react (File const &file) |
sc::result | react (Lumi const &lumi) |
~ContinueRun2 () | |
Private Attributes | |
edm::IEventProcessor & | ep_ |
Definition at line 395 of file EPStates.h.
typedef mpl::list< sc::custom_reaction<Lumi>, sc::custom_reaction<File> > statemachine::ContinueRun2::reactions |
Definition at line 404 of file EPStates.h.
statemachine::ContinueRun2::ContinueRun2 | ( | my_context | ctx | ) |
Definition at line 797 of file EPStates.cc.
References checkInvariant(), ep_, and edm::IEventProcessor::readAndCacheRun().
00797 : 00798 my_base(ctx), 00799 ep_(context<Machine>().ep()) 00800 { 00801 ep_.readAndCacheRun(); 00802 checkInvariant(); 00803 }
statemachine::ContinueRun2::~ContinueRun2 | ( | ) |
Definition at line 805 of file EPStates.cc.
References checkInvariant().
00805 { 00806 checkInvariant(); 00807 }
bool statemachine::ContinueRun2::checkInvariant | ( | ) |
Definition at line 809 of file EPStates.cc.
References first, statemachine::INVALID_LUMI, statemachine::INVALID_RUN, and edm::second().
Referenced by ContinueRun2(), react(), and ~ContinueRun2().
00809 { 00810 assert(context<HandleRuns>().currentRun() != INVALID_RUN); 00811 assert(context<HandleLumis>().currentLumi().first == context<HandleRuns>().currentRun()); 00812 assert(context<HandleLumis>().currentLumi().second != INVALID_LUMI); 00813 return true; 00814 }
sc::result statemachine::ContinueRun2::react | ( | File const & | file | ) |
Definition at line 828 of file EPStates.cc.
References checkInvariant().
00829 { 00830 checkInvariant(); 00831 if (!context<HandleFiles>().shouldWeCloseOutput()) { 00832 return transit<HandleNewInputFile3>(); 00833 } 00834 return forward_event(); 00835 }
sc::result statemachine::ContinueRun2::react | ( | Lumi const & | lumi | ) |
Definition at line 816 of file EPStates.cc.
References checkInvariant(), statemachine::Lumi::id(), and edm::second().
00817 { 00818 checkInvariant(); 00819 00820 if (context<HandleLumis>().currentLumi().second != lumi.id()) { 00821 return transit<AnotherLumi>(); 00822 } 00823 else { 00824 return transit<ContinueLumi>(); 00825 } 00826 }