CMS 3D CMS Logo

Public Types | Public Member Functions

statemachine::NewRun Class Reference

#include <EPStates.h>

Inheritance diagram for statemachine::NewRun:
state

List of all members.

Public Types

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

Public Member Functions

 NewRun (my_context ctx)
sc::result react (File const &file)
sc::result react (Run const &run)
 ~NewRun ()

Detailed Description

Definition at line 263 of file EPStates.h.


Member Typedef Documentation

typedef mpl::list< sc::transition<Lumi, HandleLumis>, sc::custom_reaction<Run>, sc::custom_reaction<File> > statemachine::NewRun::reactions

Definition at line 272 of file EPStates.h.


Constructor & Destructor Documentation

statemachine::NewRun::NewRun ( my_context  ctx)

Definition at line 269 of file EPStates.cc.

                               :
      my_base(ctx) {
    assert(context<HandleRuns>().currentRun() == INVALID_RUN);
    context<HandleRuns>().setupCurrentRun();

    // Here we assume that the input source or event processor
    // will throw if we fail to get a valid run.  Therefore
    // we should not ever fail this assert.
    assert(context<HandleRuns>().currentRun() != INVALID_RUN);
  }
statemachine::NewRun::~NewRun ( )

Definition at line 280 of file EPStates.cc.

{ }

Member Function Documentation

sc::result statemachine::NewRun::react ( Run const &  run)

Definition at line 282 of file EPStates.cc.

                                       {
    if(run == context<HandleRuns>().currentRun()) {
      return transit<ContinueRun1>();
    }
    context<HandleRuns>().finalizeRun(false);
    return transit<NewRun>();
  }
sc::result statemachine::NewRun::react ( File const &  file)

Definition at line 290 of file EPStates.cc.

                                    {
    if(!context<HandleFiles>().shouldWeCloseOutput()) {
      return transit<HandleNewInputFile2>();
    }
    return forward_event();
  }