NSCL DDAS  12.1-001
Support for XIA DDAS at FRIB
CMyEndCommand.h
Go to the documentation of this file.
1 
6 #ifndef MYEND_H
7 #define MYEND_H
8 
9 #include <CEndCommand.h>
10 #include <tcl.h>
11 
12 class CTCLInterpreter;
13 class CTCLObject;
14 class CMyEventSegment;
15 class CExperiment;
16 
22 class CMyEndCommand : public CEndCommand
23 {
24  public:
26  struct EndEvent {
27  Tcl_Event s_rawEvent;
29  };
30 
31 private:
32  CMyEventSegment* m_pSeg;
33  CExperiment* m_pExp;
34  int m_nModules;
35 
36 public:
44  CTCLInterpreter& interp, CMyEventSegment* pSeg, CExperiment* pExp
45  );
47  ~CMyEndCommand ();
48 
49 private:
54  CMyEndCommand(const CMyEndCommand& rhs);
60  CMyEndCommand& operator=(const CMyEndCommand &rhs);
65  int operator==(const CMyEndCommand& rhs) const;
70  int operator!=(const CMyEndCommand& rhs) const;
71 
72  // Class operations:
73 public:
76  int endRun();
78  void rescheduleEndRead();
79  virtual int operator()(
80  CTCLInterpreter& interp, std::vector<CTCLObject>& objv
81  );
82 
83 protected:
84  static int handleEndRun(Tcl_Event* pEvt, int flags);
85  static int handleReadOutRemainingData(Tcl_Event* pEvt, int flags);
86 
87 };
88 #endif
Provides an end command to override the SBS one.
Definition: CMyEndCommand.h:23
void rescheduleEndTransition()
Definition: CMyEndCommand.cpp:277
static int handleEndRun(Tcl_Event *pEvt, int flags)
Definition: CMyEndCommand.cpp:316
int transitionToInactive()
Definition: CMyEndCommand.cpp:53
static int handleReadOutRemainingData(Tcl_Event *pEvt, int flags)
Definition: CMyEndCommand.cpp:328
~CMyEndCommand()
Destructor.
Definition: CMyEndCommand.cpp:37
CMyEndCommand(CTCLInterpreter &interp, CMyEventSegment *pSeg, CExperiment *pExp)
Constructor.
Definition: CMyEndCommand.cpp:30
int endRun()
Definition: CMyEndCommand.cpp:228
virtual int operator()(CTCLInterpreter &interp, std::vector< CTCLObject > &objv)
Definition: CMyEndCommand.cpp:298
int readOutRemainingData()
Definition: CMyEndCommand.cpp:124
void rescheduleEndRead()
Definition: CMyEndCommand.cpp:284
Derived class for DDAS event segments.
Definition: CMyEventSegment.h:31
Struct encapsulating the command and Tcl event to end the run.
Definition: CMyEndCommand.h:26
CMyEndCommand * s_thisPtr
Pointer to this command.
Definition: CMyEndCommand.h:28
Tcl_Event s_rawEvent
Generic event for the Tcl event system.
Definition: CMyEndCommand.h:27