CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

statemachine::ContinueRun2 Class Reference

#include <EPStates.h>

Inheritance diagram for statemachine::ContinueRun2:
state

List of all members.

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 (Lumi const &lumi)
sc::result react (Run const &run)
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 722 of file EPStates.cc.

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

                                           :
    my_base(ctx),
    ep_(context<Machine>().ep())
  { 
    ep_.readAndCacheRun();
    checkInvariant();
  }
statemachine::ContinueRun2::~ContinueRun2 ( )

Definition at line 730 of file EPStates.cc.

References checkInvariant().


Member Function Documentation

bool statemachine::ContinueRun2::checkInvariant ( )

Definition at line 734 of file EPStates.cc.

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

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

                                    {
    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::ContinueRun2::react ( File const &  file)

Definition at line 765 of file EPStates.cc.

References checkInvariant().

  {
    checkInvariant();
    if (!context<HandleFiles>().shouldWeCloseOutput()) {
      return transit<HandleNewInputFile3>();
    }
    return forward_event();
  }
sc::result statemachine::ContinueRun2::react ( Lumi const &  lumi)

Definition at line 753 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>();
    }
  }
sc::result statemachine::ContinueRun2::react ( Run const &  run)

Definition at line 742 of file EPStates.cc.

References checkInvariant().

  {
    checkInvariant();
    if (context<HandleRuns>().currentRun() != run) {
      return forward_event();
    }
    else {
      return transit<ContinueRun2>();
    }
  }

Member Data Documentation

Definition at line 434 of file EPStates.h.

Referenced by ContinueRun2().