Class Reference for E1039 Core & Analysis Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OnlMonUI.h
Go to the documentation of this file.
1 #ifndef _ONL_MON_UI__H_
2 #define _ONL_MON_UI__H_
3 #include <vector>
4 class OnlMonClient;
5 class TGMainFrame;
6 class TGCompositeFrame;
7 class TGHorizontalFrame;
8 class TGTextButton;
9 class TGRadioButton;
10 class TGLabel;
11 class TGNumberEntry;
12 class TGDoubleSlider;
13 
14 typedef std::vector<OnlMonClient*> OnlMonClientList_t;
15 
16 class OnlMonUI {
17  bool m_auto_cycle;
18  int m_interval; //< Cycle interval in second
19  pthread_t m_tid1;
20  pthread_t m_tid2;
21  OnlMonClientList_t* m_list_omc;
22 
23  TGMainFrame* m_fr_main;
24  TGCompositeFrame* m_fr_sp_range;
25 
26  TGRadioButton* m_rad_sp_all;
27  TGRadioButton* m_rad_sp_last;
28  TGRadioButton* m_rad_sp_range;
29 
30  TGLabel* m_lbl_sp;
31  TGNumberEntry* m_num_sp;
32  TGNumberEntry* m_num_sp0;
33  TGNumberEntry* m_num_sp1;
34  TGDoubleSlider* m_slider;
35 
36  public:
38  ~OnlMonUI() {;}
39 
40  void SetAutoCycleFlag(bool value) { m_auto_cycle = value; }
41  bool GetAutoCycleFlag() { return m_auto_cycle; }
42  void SetCycleInterval(int val) { m_interval = val; }
43  int GetCycleInterval() { return m_interval; }
44  void Run();
45 
46  void UpdateFullSpillRange();
47 
48  void HandleSpRadAll();
49  void HandleSpRadLast();
50  void HandleSpRadRange();
51  void HandleSpLastNum();
52  void HandleSpEntLo();
53  void HandleSpEntHi();
54  void HandleSpSlider();
55  void SyncSpillRange();
56 
57  protected:
58  void BuildInterface();
59  void StartBgProc();
60  static void* FuncAutoCycle(void* arg);
61  void ExecAutoCycle();
62  static void* ExecSpillRangeCheck(void* arg);
63 
64 };
65 
66 #endif /* _ONL_MON_UI__H_ */
void SetAutoCycleFlag(bool value)
Definition: OnlMonUI.h:40
void HandleSpSlider()
Definition: OnlMonUI.cc:269
void UpdateFullSpillRange()
Definition: OnlMonUI.cc:185
void ExecAutoCycle()
This function does NOT work at present.
Definition: OnlMonUI.cc:161
void Run()
Definition: OnlMonUI.cc:26
void HandleSpEntHi()
Definition: OnlMonUI.cc:263
~OnlMonUI()
Definition: OnlMonUI.h:38
int GetCycleInterval()
Definition: OnlMonUI.h:43
static void * FuncAutoCycle(void *arg)
Definition: OnlMonUI.cc:148
std::vector< OnlMonClient * > OnlMonClientList_t
Definition: OnlMonUI.h:12
void HandleSpRadRange()
Definition: OnlMonUI.cc:232
void HandleSpRadLast()
Definition: OnlMonUI.cc:221
void HandleSpLastNum()
Definition: OnlMonUI.cc:250
void HandleSpEntLo()
Definition: OnlMonUI.cc:257
bool GetAutoCycleFlag()
Definition: OnlMonUI.h:41
void SetCycleInterval(int val)
Definition: OnlMonUI.h:42
void BuildInterface()
Definition: OnlMonUI.cc:32
void StartBgProc()
Definition: OnlMonUI.cc:142
void SyncSpillRange()
Definition: OnlMonUI.cc:277
void HandleSpRadAll()
Definition: OnlMonUI.cc:210
static void * ExecSpillRangeCheck(void *arg)
Definition: OnlMonUI.cc:175
Base class for the OnlMon subsystem module.
Definition: OnlMonClient.h:35
OnlMonUI(OnlMonClientList_t *list)
Definition: OnlMonUI.cc:16