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::EndingLoop Class Reference

#include <EPStates.h>

Inheritance diagram for statemachine::EndingLoop:

Public Types

typedef mpl::list
< sc::transition< Restart,
Starting, Machine,&Machine::rewindAndPrepareForNextLoop >
, sc::custom_reaction< Stop > > 
reactions
 

Public Member Functions

 EndingLoop (my_context ctx)
 
sc::result react (Stop const &)
 
 ~EndingLoop ()
 

Private Attributes

edm::IEventProcessorep_
 

Detailed Description

Definition at line 157 of file EPStates.h.

Member Typedef Documentation

Definition at line 164 of file EPStates.h.

Constructor & Destructor Documentation

statemachine::EndingLoop::EndingLoop ( my_context  ctx)

Definition at line 103 of file EPStates.cc.

References edm::IEventProcessor::alreadyHandlingException(), edm::IEventProcessor::endOfLoop(), and ep_.

103  :
104  my_base(ctx),
105  ep_(context<Machine>().ep())
106  {
107  if (ep_.alreadyHandlingException() || ep_.endOfLoop()) post_event(Stop());
108  else post_event(Restart());
109  }
virtual bool alreadyHandlingException() const =0
edm::IEventProcessor & ep_
Definition: EPStates.h:168
virtual bool endOfLoop()=0
statemachine::EndingLoop::~EndingLoop ( )

Definition at line 111 of file EPStates.cc.

111 { }

Member Function Documentation

sc::result statemachine::EndingLoop::react ( Stop const &  )

Definition at line 113 of file EPStates.cc.

114  {
115  return terminate();
116  }

Member Data Documentation

edm::IEventProcessor& statemachine::EndingLoop::ep_
private

Definition at line 168 of file EPStates.h.

Referenced by EndingLoop().