Jpp  15.0.1-rc.1-highQE
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JDAQCHSM.hh
Go to the documentation of this file.
1 #ifndef chsm_1231
2 #define chsm_1231
3 
4 /***** <<CHSM-to-C++ Compiler 4.4>> *****/
5 
6 #include <chsm.h>
7 namespace CHSM_ns_alias = CHSM_NS;
8 
9 /***** user-declarations *****/
10 
11 #line 1 "JDAQCHSM.chsm"
12 
13 
14 #include "chsm.h"
15 
16 #include <string>
17 #include <sstream>
18 
19 
20 /**
21  * DAQ state machine interface.
22  */
23 class JDAQCHSM :
24  public CHSM::machine
25 {
26 public:
27  /**
28  * DAQ state class.
29  *
30  * The member method enter() makes a call to the virtual method JDAQCHSM::enterState(...),
31  * where:
32  * - first argument is the state entered;
33  * - second argument is the event that caused the transition;
34  *
35  * This method should be overwritten by the run control client to reply to the run control.
36  */
37  class JDAQState :
38  public CHSM::state
39  {
40  public:
41  /**
42  * Default CHSM constructor.
43  */
44  JDAQState(CHSM_STATE_ARGS) :
45  CHSM::state(CHSM_STATE_INIT)
46  {}
47 
48 
49  /**
50  * Enter this state.
51  *
52  * \param event event that triggered transition
53  * \param from pointer to state from where transition started
54  * \return true if all OK; else false
55  */
56  bool enter(const CHSM::event& event, CHSM::state* from)
57  {
58  try {
59 
60  dynamic_cast<JDAQCHSM&>(this->chsm()).enterState(*this, event);
61 
62  return CHSM::state::enter(event, from);
63  }
64  catch(const std::exception& error) {
65  return false;
66  }
67  }
68  };
69 
70 
71  /**
72  * Constructor.
73  *
74  * \param __name name of state machine
75  */
76  JDAQCHSM(CHSM_MACHINE_ARGS, const std::string& __name) :
77  CHSM::machine(CHSM_MACHINE_INIT),
78  name (__name),
79  detector_id(-1),
80  run_number (-1)
81  {}
82 
83 
84  /**
85  * Get name of state machine.
86  *
87  * \return name
88  */
89  const std::string& getName() const
90  {
91  return name;
92  }
93 
94 
95  /**
96  * Get detector identifier.
97  *
98  * \return detector identifier.
99  */
100  int getDetectorID() const
101  {
102  return detector_id;
103  }
104 
105 
106  /**
107  * Get run number.
108  *
109  * \return run number
110  */
111  int getRunNumber() const
112  {
113  return run_number;
114  }
115 
116 
117  /**
118  * Interface methods for actions corresponding to state transitions.
119  */
120  virtual void actionEnter() {}
121  virtual void actionExit() {}
122 
123  virtual void actionInit (int, const char*) {}
124  virtual void actionConfigure (int, const char*) {}
125  virtual void actionStart (int, const char*) {}
126  virtual void actionPause (int, const char*) {}
127  virtual void actionContinue (int, const char*) {}
128  virtual void actionStop (int, const char*) {}
129  virtual void actionReset (int, const char*) {}
130  virtual void actionQuit (int, const char*) {}
131 
132  virtual void actionCheck(int, const char*) {}
133  virtual void actionInput(int, const char*) {}
134 
135  virtual void actionError() {}
136  virtual void actionRecover(int, const char*) {}
137 
138 
139 protected:
140  /**
141  * Action when entering state.
142  *
143  * \param state entered state
144  * \param event event that triggered transition
145  */
146  virtual void enterState(const CHSM::state& state, const CHSM::event& event) = 0;
147 
148 
149  /**
150  * Type definition of action method.
151  */
152  typedef void (JDAQCHSM::*action)(int, const char*);
153 
154 
155  /**
156  * The method to execute the action.
157  *
158  * This method shall be implemented in the derived class.
159  *
160  * \param __action pointer to action method
161  * \param __event event that triggered the action
162  */
163  virtual void execute(action __action, const CHSM::event& __event) = 0;
164 
165  std::string name;
166  int detector_id;
167  int run_number;
168 };
169 
170 
171 /***** CHSM class declaration *****/
172 
173 class JDAQStateMachine : public JDAQCHSM {
174 public:
175  JDAQStateMachine( const std ::string );
177 
178  // states
179  class state_root : public CHSM_ns_alias::cluster { // -1
180  public:
181 
182  state_root( CHSM_STATE_ARGS, bool chsm_history_ );
183  private:
184  static int const children_[];
185  } root;
186  class state_Main : public CHSM_ns_alias::set { // 0
187  public:
188  class state_RunControl : public CHSM_ns_alias::cluster { // 1
189  public:
190  class state_Operational : public CHSM_ns_alias::cluster { // 2
191  public:
192  JDAQState Idle; // 3
193  JDAQState Standby; // 4
194  JDAQState Ready; // 5
195  JDAQState Paused; // 6
196  JDAQState Running; // 7
197 
198  state_Operational( CHSM_STATE_ARGS, bool chsm_history_ );
199  private:
200  static int const children_[];
201  } Operational;
202  JDAQState Error; // 8
203 
204  state_RunControl( CHSM_STATE_ARGS, bool chsm_history_ );
205  private:
206  static int const children_[];
207  } RunControl;
208  CHSM_ns_alias::state Responder; // 9
209 
210  state_Main( CHSM_STATE_ARGS );
211  private:
212  static int const children_[];
213  } Main;
214 
215  // events
216  private: static int const ev_daq_transitions[]; public:
217  class ev_daq_event : public CHSM_ns_alias::event {
218  public:
219  typedef CHSM_ns_alias::event::param_block base_param_block;
220  struct param_block : CHSM_ns_alias::event::param_block {
221 #line 172 "JDAQCHSM.chsm"
222  int length;
223 #line 172 "JDAQCHSM.chsm"
224  const char * buffer;
225  param_block( CHSM_ns_alias::event const &, int , const char * );
226  protected:
227  virtual ~param_block();
228  };
230  return (param_block*)param_block_;
231  }
232  void operator()( int , const char * );
233  protected:
234  ev_daq_event( CHSM_EVENT_ARGS ) :
235  CHSM_ns_alias::event( CHSM_EVENT_INIT ) { }
236  friend class JDAQStateMachine;
237  } ev_daq;
239 
240  private: static int const ev_init_transitions[]; public:
242  public:
245  param_block( CHSM_ns_alias::event const &, int , const char * );
246  protected:
247  virtual ~param_block();
248  };
250  return (param_block*)param_block_;
251  }
252  void operator()( int , const char * );
253  protected:
254  ev_init_event( CHSM_EVENT_ARGS ) :
255  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
256  friend class JDAQStateMachine;
257  } ev_init;
259 
260  private: static int const ev_configure_transitions[]; public:
262  public:
265  param_block( CHSM_ns_alias::event const &, int , const char * );
266  protected:
267  virtual ~param_block();
268  };
270  return (param_block*)param_block_;
271  }
272  void operator()( int , const char * );
273  protected:
274  ev_configure_event( CHSM_EVENT_ARGS ) :
275  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
276  friend class JDAQStateMachine;
277  } ev_configure;
279 
280  private: static int const ev_start_transitions[]; public:
282  public:
285  param_block( CHSM_ns_alias::event const &, int , const char * );
286  protected:
287  virtual ~param_block();
288  };
290  return (param_block*)param_block_;
291  }
292  void operator()( int , const char * );
293  protected:
294  ev_start_event( CHSM_EVENT_ARGS ) :
295  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
296  friend class JDAQStateMachine;
297  } ev_start;
299 
300  private: static int const ev_pause_transitions[]; public:
302  public:
305  param_block( CHSM_ns_alias::event const &, int , const char * );
306  protected:
307  virtual ~param_block();
308  };
310  return (param_block*)param_block_;
311  }
312  void operator()( int , const char * );
313  protected:
314  ev_pause_event( CHSM_EVENT_ARGS ) :
315  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
316  friend class JDAQStateMachine;
317  } ev_pause;
319 
320  private: static int const ev_continue_transitions[]; public:
322  public:
325  param_block( CHSM_ns_alias::event const &, int , const char * );
326  protected:
327  virtual ~param_block();
328  };
330  return (param_block*)param_block_;
331  }
332  void operator()( int , const char * );
333  protected:
334  ev_continue_event( CHSM_EVENT_ARGS ) :
335  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
336  friend class JDAQStateMachine;
337  } ev_continue;
339 
340  private: static int const ev_stop_transitions[]; public:
342  public:
345  param_block( CHSM_ns_alias::event const &, int , const char * );
346  protected:
347  virtual ~param_block();
348  };
350  return (param_block*)param_block_;
351  }
352  void operator()( int , const char * );
353  protected:
354  ev_stop_event( CHSM_EVENT_ARGS ) :
355  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
356  friend class JDAQStateMachine;
357  } ev_stop;
359 
360  private: static int const ev_reset_transitions[]; public:
362  public:
365  param_block( CHSM_ns_alias::event const &, int , const char * );
366  protected:
367  virtual ~param_block();
368  };
370  return (param_block*)param_block_;
371  }
372  void operator()( int , const char * );
373  protected:
374  ev_reset_event( CHSM_EVENT_ARGS ) :
375  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
376  friend class JDAQStateMachine;
377  } ev_reset;
379 
380  private: static int const ev_quit_transitions[]; public:
382  public:
385  param_block( CHSM_ns_alias::event const &, int , const char * );
386  protected:
387  virtual ~param_block();
388  };
390  return (param_block*)param_block_;
391  }
392  void operator()( int , const char * );
393  protected:
394  ev_quit_event( CHSM_EVENT_ARGS ) :
395  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
396  friend class JDAQStateMachine;
397  } ev_quit;
399 
400  private: static int const ev_off_transitions[]; public:
402  public:
405  param_block( CHSM_ns_alias::event const &, int , const char * );
406  protected:
407  virtual ~param_block();
408  };
410  return (param_block*)param_block_;
411  }
412  void operator()( int , const char * );
413  protected:
414  ev_off_event( CHSM_EVENT_ARGS ) :
415  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
416  friend class JDAQStateMachine;
417  } ev_off;
419 
420  private: static int const ev_check_transitions[]; public:
422  public:
425  param_block( CHSM_ns_alias::event const &, int , const char * );
426  protected:
427  virtual ~param_block();
428  };
430  return (param_block*)param_block_;
431  }
432  void operator()( int , const char * );
433  protected:
434  ev_check_event( CHSM_EVENT_ARGS ) :
435  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
436  friend class JDAQStateMachine;
437  } ev_check;
439 
440  private: static int const ev_input_transitions[]; public:
442  public:
445  param_block( CHSM_ns_alias::event const &, int , const char * );
446  protected:
447  virtual ~param_block();
448  };
450  return (param_block*)param_block_;
451  }
452  void operator()( int , const char * );
453  protected:
454  ev_input_event( CHSM_EVENT_ARGS ) :
455  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
456  friend class JDAQStateMachine;
457  } ev_input;
459 
460  private: static int const ev_recover_transitions[]; public:
462  public:
465  param_block( CHSM_ns_alias::event const &, int , const char * );
466  protected:
467  virtual ~param_block();
468  };
470  return (param_block*)param_block_;
471  }
472  void operator()( int , const char * );
473  protected:
474  ev_recover_event( CHSM_EVENT_ARGS ) :
475  JDAQStateMachine::ev_daq_event( CHSM_EVENT_INIT ) { }
476  friend class JDAQStateMachine;
477  } ev_recover;
479 
480  private: static int const ev_error_transitions[]; public:
481  class ev_error_event : public CHSM_ns_alias::event {
482  public:
483  typedef CHSM_ns_alias::event::param_block base_param_block;
484  struct param_block : CHSM_ns_alias::event::param_block {
485  param_block( CHSM_ns_alias::event const &event ) :
486  CHSM_ns_alias::event::param_block( event ) { }
487  protected:
488  virtual ~param_block();
489  };
490  protected:
491  ev_error_event( CHSM_EVENT_ARGS ) :
492  CHSM_ns_alias::event( CHSM_EVENT_INIT ) { }
493  friend class JDAQStateMachine;
494  } ev_error;
496 
497 
498  // transition conditions
499 
500  // transition targets
501 
502  // transition actions
503  void A1( CHSM_ns_alias::event const& );
504  void A2( CHSM_ns_alias::event const& );
505  void A3( CHSM_ns_alias::event const& );
506  void A4( CHSM_ns_alias::event const& );
507  void A5( CHSM_ns_alias::event const& );
508  void A6( CHSM_ns_alias::event const& );
509  void A7( CHSM_ns_alias::event const& );
510  void A8( CHSM_ns_alias::event const& );
511  void A9( CHSM_ns_alias::event const& );
512  void A10( CHSM_ns_alias::event const& );
513  void A11( CHSM_ns_alias::event const& );
514  void A12( CHSM_ns_alias::event const& );
515  void A13( CHSM_ns_alias::event const& );
516  void A14( CHSM_ns_alias::event const& );
517 
518  // enter/exit actions
519  void EAM4root( CHSM_ns_alias::state const&, CHSM_ns_alias::event const& );
520  void XAM4root( CHSM_ns_alias::state const&, CHSM_ns_alias::event const& );
521 private:
522  CHSM_ns_alias::state *state_[ 11 ];
523  static CHSM_ns_alias::transition const transition_[];
524  CHSM_ns_alias::event const *taken_[ 14 ];
525  CHSM_ns_alias::state *target_[ 14 ];
526 };
527 
528 
529 /***** THE END *****/
530 #endif
void A4(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:350
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:323
state_RunControl(CHSM_STATE_ARGS, bool chsm_history_)
Definition: JDAQCHSM.cc:30
param_block * operator->() const
Definition: JDAQCHSM.hh:309
virtual void actionError()
Definition: JDAQCHSM.hh:135
char ev_input_param_block[sizeof(ev_input_event::param_block)]
Definition: JDAQCHSM.hh:458
param_block * operator->() const
Definition: JDAQCHSM.hh:289
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:208
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:343
void A2(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:346
void operator()(int, const char *)
Definition: JDAQCHSM.cc:179
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:242
JDAQStateMachine::ev_start_event ev_start
virtual void actionQuit(int, const char *)
Definition: JDAQCHSM.hh:130
JDAQStateMachine::ev_configure_event ev_configure
JDAQStateMachine::ev_error_event ev_error
param_block * operator->() const
Definition: JDAQCHSM.hh:329
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:140
ev_continue_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:334
void operator()(int, const char *)
Definition: JDAQCHSM.cc:162
void(JDAQCHSM::* action)(int, const char *)
Type definition of action method.
Definition: JDAQCHSM.chsm:141
char ev_error_param_block[sizeof(ev_error_event::param_block)]
Definition: JDAQCHSM.hh:495
void A13(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:376
ev_reset_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:374
static int const ev_error_transitions[]
Definition: JDAQCHSM.hh:480
virtual void actionInit(int, const char *)
Definition: JDAQCHSM.hh:123
void A7(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:364
ev_start_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:294
ev_off_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:414
static int const ev_configure_transitions[]
Definition: JDAQCHSM.hh:260
JDAQStateMachine::ev_pause_event ev_pause
static int const ev_pause_transitions[]
Definition: JDAQCHSM.hh:300
char ev_reset_param_block[sizeof(ev_reset_event::param_block)]
Definition: JDAQCHSM.hh:378
void operator()(int, const char *)
Definition: JDAQCHSM.cc:111
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:423
virtual void actionStop(int, const char *)
Definition: JDAQCHSM.hh:128
JDAQStateMachine::ev_continue_event ev_continue
void operator()(int, const char *)
Definition: JDAQCHSM.cc:213
void A1(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:344
param_block * operator->() const
Definition: JDAQCHSM.hh:249
virtual void actionReset(int, const char *)
Definition: JDAQCHSM.hh:129
void operator()(int, const char *)
Definition: JDAQCHSM.cc:94
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:225
virtual void enterState(const CHSM::state &state, const CHSM::event &event)=0
Action when entering state.
CHSM_ns_alias::event::param_block base_param_block
Definition: JDAQCHSM.hh:219
JDAQStateMachine::state_Main Main
param_block * operator->() const
Definition: JDAQCHSM.hh:449
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:363
int run_number
Definition: JDAQCHSM.chsm:156
static int const children_[]
Definition: JDAQCHSM.hh:212
static int const ev_start_transitions[]
Definition: JDAQCHSM.hh:280
JDAQStateMachine::ev_reset_event ev_reset
virtual void actionPause(int, const char *)
Definition: JDAQCHSM.hh:126
void operator()(int, const char *)
Definition: JDAQCHSM.cc:264
static int const ev_init_transitions[]
Definition: JDAQCHSM.hh:240
JDAQState(CHSM_STATE_ARGS)
Default CHSM constructor.
Definition: JDAQCHSM.hh:44
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:191
CHSM_ns_alias::state * state_[11]
Definition: JDAQCHSM.hh:522
void operator()(int, const char *)
Definition: JDAQCHSM.cc:60
param_block * operator->() const
Definition: JDAQCHSM.hh:409
std::string name
Definition: JDAQCHSM.chsm:154
virtual void actionEnter()
Interface methods for actions corresponding to state transitions.
Definition: JDAQCHSM.hh:120
virtual void actionRecover(int, const char *)
Definition: JDAQCHSM.hh:136
void A11(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:372
JDAQStateMachine::ev_init_event ev_init
char ev_init_param_block[sizeof(ev_init_event::param_block)]
Definition: JDAQCHSM.hh:258
JDAQStateMachine(const std::string)
Definition: JDAQCHSM.cc:300
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:303
void operator()(int, const char *)
Definition: JDAQCHSM.cc:230
CHSM_ns_alias::state * target_[14]
Definition: JDAQCHSM.hh:525
virtual void actionInput(int, const char *)
Definition: JDAQCHSM.hh:133
static CHSM_ns_alias::transition const transition_[]
Definition: JDAQCHSM.hh:523
DAQ state machine interface.
Definition: JDAQCHSM.chsm:12
ev_daq_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:234
JDAQStateMachine::ev_stop_event ev_stop
static int const ev_off_transitions[]
Definition: JDAQCHSM.hh:400
int getDetectorID() const
Get detector identifier.
Definition: JDAQCHSM.hh:100
virtual void actionCheck(int, const char *)
Definition: JDAQCHSM.hh:132
virtual void execute(action __action, const CHSM::event &__event)=0
The method to execute the action.
char ev_stop_param_block[sizeof(ev_stop_event::param_block)]
Definition: JDAQCHSM.hh:358
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:463
char ev_check_param_block[sizeof(ev_check_event::param_block)]
Definition: JDAQCHSM.hh:438
char ev_daq_param_block[sizeof(ev_daq_event::param_block)]
Definition: JDAQCHSM.hh:238
void A9(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:368
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:403
ev_error_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:491
void A5(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:352
static int const ev_quit_transitions[]
Definition: JDAQCHSM.hh:380
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:259
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:443
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:72
void A10(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:370
char ev_off_param_block[sizeof(ev_off_event::param_block)]
Definition: JDAQCHSM.hh:418
param_block * operator->() const
Definition: JDAQCHSM.hh:389
ev_input_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:454
static int const ev_recover_transitions[]
Definition: JDAQCHSM.hh:460
static int const ev_continue_transitions[]
Definition: JDAQCHSM.hh:320
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:89
void A3(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:348
param_block * operator->() const
Definition: JDAQCHSM.hh:429
param_block * operator->() const
Definition: JDAQCHSM.hh:469
JDAQStateMachine::ev_daq_event ev_daq
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:174
virtual void actionStart(int, const char *)
Definition: JDAQCHSM.hh:125
param_block * operator->() const
Definition: JDAQCHSM.hh:349
void operator()(int, const char *)
Definition: JDAQCHSM.cc:145
ev_quit_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:394
static int const ev_stop_transitions[]
Definition: JDAQCHSM.hh:340
ev_stop_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:354
CHSM_ns_alias::event::param_block base_param_block
Definition: JDAQCHSM.hh:483
state_Main(CHSM_STATE_ARGS)
Definition: JDAQCHSM.cc:20
char ev_start_param_block[sizeof(ev_start_event::param_block)]
Definition: JDAQCHSM.hh:298
CHSM_ns_alias::state Responder
Definition: JDAQCHSM.hh:208
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:123
void A6(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:354
JDAQStateMachine::ev_check_event ev_check
param_block(CHSM_ns_alias::event const &event)
Definition: JDAQCHSM.hh:485
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:263
static int const ev_input_transitions[]
Definition: JDAQCHSM.hh:440
char ev_configure_param_block[sizeof(ev_configure_event::param_block)]
Definition: JDAQCHSM.hh:278
state_Operational(CHSM_STATE_ARGS, bool chsm_history_)
Definition: JDAQCHSM.cc:40
virtual void actionContinue(int, const char *)
Definition: JDAQCHSM.hh:127
virtual void actionExit()
Definition: JDAQCHSM.hh:121
int getRunNumber() const
Get run number.
Definition: JDAQCHSM.hh:111
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:157
static int const ev_check_transitions[]
Definition: JDAQCHSM.hh:420
JDAQStateMachine::ev_quit_event ev_quit
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:383
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:106
void operator()(int, const char *)
Definition: JDAQCHSM.cc:247
JDAQStateMachine::state_root root
JDAQStateMachine::ev_input_event ev_input
static int const children_[]
Definition: JDAQCHSM.hh:184
char ev_continue_param_block[sizeof(ev_continue_event::param_block)]
Definition: JDAQCHSM.hh:338
ev_init_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:254
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:283
static int const ev_daq_transitions[]
Definition: JDAQCHSM.hh:216
void A8(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:366
char ev_pause_param_block[sizeof(ev_pause_event::param_block)]
Definition: JDAQCHSM.hh:318
JDAQStateMachine::ev_daq_event::param_block base_param_block
Definition: JDAQCHSM.hh:243
ev_pause_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:314
void operator()(int, const char *)
Definition: JDAQCHSM.cc:128
void EAM4root(CHSM_ns_alias::state const &, CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:337
param_block(CHSM_ns_alias::event const &, int, const char *)
Definition: JDAQCHSM.cc:55
ev_check_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:434
void operator()(int, const char *)
Definition: JDAQCHSM.cc:196
ev_recover_event(CHSM_EVENT_ARGS)
Definition: JDAQCHSM.hh:474
JDAQStateMachine::state_Main::state_RunControl::state_Operational Operational
bool enter(const CHSM::event &event, CHSM::state *from)
Enter this state.
Definition: JDAQCHSM.hh:56
void XAM4root(CHSM_ns_alias::state const &, CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:340
int detector_id
Definition: JDAQCHSM.chsm:155
char ev_quit_param_block[sizeof(ev_quit_event::param_block)]
Definition: JDAQCHSM.hh:398
JDAQStateMachine::state_Main::state_RunControl RunControl
JDAQStateMachine::ev_off_event ev_off
virtual void actionConfigure(int, const char *)
Definition: JDAQCHSM.hh:124
const std::string & getName() const
Get name of state machine.
Definition: JDAQCHSM.hh:89
state_root(CHSM_STATE_ARGS, bool chsm_history_)
Definition: JDAQCHSM.cc:12
static int const ev_reset_transitions[]
Definition: JDAQCHSM.hh:360
char ev_recover_param_block[sizeof(ev_recover_event::param_block)]
Definition: JDAQCHSM.hh:478
void A12(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:374
CHSM_ns_alias::event const * taken_[14]
Definition: JDAQCHSM.hh:524
param_block * operator->() const
Definition: JDAQCHSM.hh:269
param_block * operator->() const
Definition: JDAQCHSM.hh:369
void operator()(int, const char *)
Definition: JDAQCHSM.cc:77
param_block * operator->() const
Definition: JDAQCHSM.hh:229
void A14(CHSM_ns_alias::event const &)
Definition: JDAQCHSM.cc:378
JDAQCHSM(CHSM_MACHINE_ARGS, const std::string &__name)
Constructor.
Definition: JDAQCHSM.hh:76
JDAQStateMachine::ev_recover_event ev_recover