13 using namespace evf::rb_statemachine;
22 LOG4CPLUS_INFO(res->log_,
"--> ResourceBroker: NEW STATE: " <<
stateName());
23 outermost_context().setExternallyVisibleState(
stateName());
24 outermost_context().setInternalStateName(
stateName());
32 IPCMethod* resourceStructure = res->resourceStructure_;
35 LOG4CPLUS_INFO(res->log_,
"Start enabling ...");
55 LOG4CPLUS_INFO(res->log_,
"Starting monitoring / watching workloops.");
57 res->startMonitoringWorkLoop();
60 if (!res->useMessageQueueIPC_)
61 res->startWatchingWorkLoop();
65 res->startDiscardWorkLoop();
67 res->startSendDataWorkLoop();
69 res->startSendDqmWorkLoop();
73 res->nbTimeoutsWithEvent_ = 0;
74 res->nbTimeoutsWithoutEvent_ = 0;
75 res->dataErrorFlag_ = 0;
79 res->allowI2ODiscards_ =
true;
81 LOG4CPLUS_INFO(res->log_,
"Finished enabling!");
83 res->commands_.enqEvent(enableDone);
107 return string(
"Enabling");
112 res->reasonForFailed_ = exception.what();
113 LOG4CPLUS_FATAL(res->log_,
114 "Moving to FAILED state! Reason: " << exception.what());
116 res->commands_.enqEvent(fail);
virtual void do_entryActionWork()
boost::shared_ptr< SharedResources > SharedResourcesPtr_t
virtual void resetCounters()=0
virtual void do_moveToFailedState(xcept::Exception &exception) const
boost::shared_ptr< boost::statechart::event_base > EventPtr
virtual void do_stateAction() const
void setRunNumber(UInt_t runNumber)
void moveToFailedState(xcept::Exception &exception) const
virtual std::string do_stateName() const
std::string stateName() const
virtual void do_exitActionWork()
virtual void do_stateNotify()