CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
statemachine::ContinueRun2 Class Reference

#include <EPStates.h>

Inheritance diagram for statemachine::ContinueRun2:

Public Types

typedef mpl::list
< sc::custom_reaction< Run >
, sc::custom_reaction< Lumi >
, sc::custom_reaction< File > > 
reactions
 

Public Member Functions

bool checkInvariant ()
 
 ContinueRun2 (my_context ctx)
 
sc::result react (Run const &run)
 
sc::result react (Lumi const &lumi)
 
sc::result react (File const &file)
 
 ~ContinueRun2 ()
 

Private Attributes

edm::IEventProcessorep_
 

Detailed Description

Definition at line 418 of file EPStates.h.

Member Typedef Documentation

typedef mpl::list< sc::custom_reaction<Run>, sc::custom_reaction<Lumi>, sc::custom_reaction<File> > statemachine::ContinueRun2::reactions

Definition at line 428 of file EPStates.h.

Constructor & Destructor Documentation

statemachine::ContinueRun2::ContinueRun2 ( my_context  ctx)

Definition at line 602 of file EPStates.cc.

References checkInvariant(), ep_, and edm::IEventProcessor::readAndCacheRun().

602  :
603  my_base(ctx),
604  ep_(context<Machine>().ep()) {
605  ep_.readAndCacheRun(true);
606  checkInvariant();
607  }
edm::IEventProcessor & ep_
Definition: EPStates.h:434
virtual statemachine::Run readAndCacheRun(bool merge)=0
statemachine::ContinueRun2::~ContinueRun2 ( )

Definition at line 609 of file EPStates.cc.

References checkInvariant().

609  {
610  checkInvariant();
611  }

Member Function Documentation

bool statemachine::ContinueRun2::checkInvariant ( )

Definition at line 613 of file EPStates.cc.

References fjr2json::lumi, DTTTrigCorrFirst::run, and convertSQLiteXML::runNumber.

Referenced by ContinueRun2(), react(), and ~ContinueRun2().

613  {
614  assert(context<HandleRuns>().currentRun() != INVALID_RUN);
615  assert(context<HandleLumis>().currentLumi().processHistoryID() == context<HandleRuns>().currentRun().processHistoryID());
616  assert(context<HandleLumis>().currentLumi().run() == context<HandleRuns>().currentRun().runNumber());
617  assert(context<HandleLumis>().currentLumi().lumi() != INVALID_LUMI);
618  return true;
619  }
tuple lumi
Definition: fjr2json.py:35
sc::result statemachine::ContinueRun2::react ( Run const &  run)

Definition at line 621 of file EPStates.cc.

References checkInvariant().

621  {
622  checkInvariant();
623  if(context<HandleRuns>().currentRun() != run) {
624  return forward_event();
625  } else {
626  return transit<ContinueRun2>();
627  }
628  }
sc::result statemachine::ContinueRun2::react ( Lumi const &  lumi)

Definition at line 630 of file EPStates.cc.

References checkInvariant(), statemachine::Lumi::id(), and fjr2json::lumi.

630  {
631  checkInvariant();
632 
633  if(context<HandleLumis>().currentLumi().lumi() != lumi.id()) {
634  return transit<AnotherLumi>();
635  } else {
636  return transit<ContinueLumi>();
637  }
638  }
tuple lumi
Definition: fjr2json.py:35
sc::result statemachine::ContinueRun2::react ( File const &  file)

Definition at line 640 of file EPStates.cc.

References checkInvariant().

640  {
641  checkInvariant();
642  if(!context<HandleFiles>().shouldWeCloseOutput()) {
643  return transit<HandleNewInputFile3>();
644  }
645  return forward_event();
646  }

Member Data Documentation

edm::IEventProcessor& statemachine::ContinueRun2::ep_
private

Definition at line 434 of file EPStates.h.

Referenced by ContinueRun2().