GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4BrowserOptions.cpp
Go to the documentation of this file.
1// $Id$
2//-----------------------------------------------------------------------
3// The GSI Online Offline Object Oriented (Go4) Project
4// Experiment Data Processing at EE department, GSI
5//-----------------------------------------------------------------------
6// Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7// Planckstr. 1, 64291 Darmstadt, Germany
8// Contact: http://go4.gsi.de
9//-----------------------------------------------------------------------
10// This software can be used under the license agreements as stated
11// in Go4License.txt file which is part of the distribution.
12//-----------------------------------------------------------------------
13
14#include "TGo4BrowserOptions.h"
15
16#include "TGo4BrowserProxy.h"
17#include "TGo4ServerProxy.h"
18#include "TGo4AnalysisProxy.h"
19#include "TGo4DabcProxy.h"
20#include "TGo4HttpProxy.h"
21
22TGo4BrowserOptions::TGo4BrowserOptions(QWidget *parent, const char *name) :
23 QGo4Widget(parent,name)
24{
25 setupUi(this);
26 QObject::connect(RefreshBtn, &QToolButton::clicked, this, &TGo4BrowserOptions::RefreshBtn_clicked);
27 QObject::connect(ClearBtn, &QToolButton::clicked, this, &TGo4BrowserOptions::ClearBtn_clicked);
28 QObject::connect(StartMonitorBtn, &QToolButton::clicked, this, &TGo4BrowserOptions::StartMonitorBtn_clicked);
29 QObject::connect(StopMonitorBtn, &QToolButton::clicked, this, &TGo4BrowserOptions::StopMonitorBtn_clicked);
30 QObject::connect(FilterBox, QOverload<int>::of(&QComboBox::activated), this, &TGo4BrowserOptions::FilterBox_activated);
31
32}
33
35{
36 AddLink("","Browser");
37 UpdateView();
38}
39
41{
42 int interval = Browser()->MonitoringPeriod()/1000;
43 StartMonitorBtn->setEnabled(interval <= 0);
44 StopMonitorBtn->setEnabled(interval > 0);
45
46 if ((interval>1) && (IntervalSpin->value()!=interval))
47 IntervalSpin->setValue(interval);
48}
49
50void TGo4BrowserOptions::linkedObjectUpdated(const char *linkname, TObject *obj)
51{
52 if (strcmp(linkname,"Browser") == 0)
53 UpdateView();
54}
55
57{
59 if (an) an->RefreshNamesList();
60
61 TObjArray prlist;
62 Browser()->MakeDabcList(&prlist);
63 for (Int_t n = 0; n <= prlist.GetLast(); n++) {
64 TGo4DabcProxy *pr = dynamic_cast<TGo4DabcProxy *>(prlist.At(n));
65 if (pr) pr->RefreshNamesList();
66 }
67
68 prlist.Clear();
69 Browser()->MakeHttpList(&prlist);
70 for (Int_t n = 0; n <= prlist.GetLast(); n++) {
71 TGo4HttpProxy *pr = dynamic_cast<TGo4HttpProxy *>(prlist.At(n));
72 if (pr) pr->RefreshNamesList();
73 }
74
76}
77
79{
81 if (an) {
83 } else {
84 TGo4ServerProxy *root_serv = Browser()->FindServer(nullptr, kFALSE);
85 if (root_serv) {
86 TString cmd = root_serv->FindCommand("Clear");
87 if (cmd.Length()>0) root_serv->SubmitCommand(cmd);
88 }
89 }
91}
92
94{
95 int period = IntervalSpin->value();
96
97 Browser()->ToggleMonitoring(period*1000);
98
99 UpdateView();
100}
101
108
QGo4Widget(QWidget *parent=nullptr, const char *name=nullptr, Qt::WindowFlags f=Qt::Widget)
void AddLink(const char *itemname, const char *linkname)
create link for item with name linkname
TGo4BrowserProxy * Browser()
virtual void RefreshBtn_clicked()
virtual void StartWorking()
void linkedObjectUpdated(const char *linkname, TObject *obj) override
virtual void StartMonitorBtn_clicked()
TGo4BrowserOptions(QWidget *parent=nullptr, const char *name=nullptr)
virtual void ClearBtn_clicked()
virtual void FilterBox_activated(int indx)
virtual void StopMonitorBtn_clicked()
void MakeDabcList(TObjArray *arr)
void ToggleMonitoring(Int_t period)
Int_t MonitoringPeriod() const
TGo4ServerProxy * FindServer(const char *itemname=nullptr, Bool_t asanalysis=kTRUE)
void SetItemsFilter(Int_t filter)
Int_t UpdateVisibleAnalysisObjects(bool checkmonitor)
void MakeHttpList(TObjArray *arr)
Bool_t RefreshNamesList() override
Here Go4/ROOT-specific functionality of HttpProxy.
Bool_t RefreshNamesList() override
special base class for remote data servers like DABC, HTTP, hist server
virtual Bool_t SubmitCommand(const char *name, Int_t waitres=-1, const char *arg1=nullptr, const char *arg2=nullptr, const char *arg3=nullptr)
virtual void ClearAllAnalysisObjects()
virtual TString FindCommand(const char *name)
virtual Bool_t RefreshNamesList()