DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
MainWindow.hpp
Go to the documentation of this file.
1// DUNE DAQ modification notice:
2// This file has been modified from the original ATLAS dbe source for the DUNE DAQ project.
3// Fork baseline commit: dbe-02-12-17 (2022-05-12).
4// Renamed since fork: yes (from dbe/MainWindow.h to include/dbe/MainWindow.hpp).
5
6#ifndef MAINWINDOW_H
7#define MAINWINDOW_H
8
10#include <QMap>
11#include <QSet>
12#include <QString>
13#include <QMessageBox>
14#include <QMainWindow>
15
16#include <QTabWidget>
17#include <QDragEnterEvent>
18#include <QDropEvent>
19
21#include "ui_DBE.h"
22
24#include "dbe/FileModel.hpp"
26//#include "dbe/OracleWidget.hpp"
27#include "dbe/TableTab.hpp"
28#include "dbe/tree.hpp"
29#include "dbe/table.hpp"
31#include "dbe/treeselection.hpp"
32#include "dbe/subtreeproxy.hpp"
33
34// /// Including IPC
35//#include <ipc/partition.h>
36//#include <rdb/rdb.hh>
37
38#include <atomic>
39
40namespace dbe
41{
42namespace Ui
43{
44class MainWindow;
45} // namespace Ui
46
48 public QMainWindow,
49 private dbe::Ui::MainWindow
50{
51 Q_OBJECT
52public:
53 explicit MainWindow ( QMap<QString, QString> const & CommandLine, QWidget * parent =
54 nullptr );
55
56 static MainWindow * findthis();
57
58 [[nodiscard]] bool check_ready() const;
59
60 [[nodiscard]] cptr<dbe::CustomTreeView> get_view() const;
61
62 [[nodiscard]] QString find_db_repository_dir();
63
64private:
65 //typedef QMap<QString, bool> RDBMap;
66
67 QSet<QString> allFiles;
68
71 QSortFilterProxyModel this_filesort;
72
75
76 //OracleWidget * this_oraclewidget;
77
78 std::atomic<bool> isArchivedConf;
79
80 std::vector<dbe::tref> ProcessQuery ( QString const & );
81
82 void closeEvent ( QCloseEvent * event );
83
84 bool eventFilter ( QObject * Target, QEvent * Event );
85
86 bool check_close();
87
88 void init();
89
90 void attach();
91
92 bool dbopen ( QString const &, dbinfo const & );
93
94 bool dbload();
95
96 bool dbreload();
97
98 void setinternals();
99
101 void build_table_model();
102public:
103 void build_file_model();
104private:
105 void load_settings ( bool LoadSettings = false );
106
107 void WriteSettings();
108 void argsparse ( QMap<QString, QString> const & );
109 //void init_rdb_menu();
110 //void lookForRDBServers ( const IPCPartition & p );
111 void init_tabs();
112
113 void edit_object_at ( const QModelIndex & Index );
114
116
117private slots:
118 void slot_create_newdb();
120 void slot_load_db_from_create_widget ( const QString & );
121
122 //void slot_rdb_selected ( QAction * );
123 //void slot_rdb_found (const QString& p, const RDBMap& rdbs);
124
125 //void slot_oracle_prepare();
126 //void slot_load_oracle ( const QString & );
127
128 bool slot_commit_database ( bool Exit = false );
129
130 void slot_abort_changes();
132
134 void slot_edit_object_from_class_view ( QModelIndex const & );
135
136 void slot_fetch_data ( treenode const * );
137
140
141 void LoadDefaultSetting();
142
143 void slot_filter_query();
144 void slot_filter_textchange ( const QString & );
145 void slot_filter_table_textchange ( const QString & );
146
147 void slot_tree_reset();
148 void slot_model_rebuild();
149
150 void slot_whatisthis();
151
153 void slot_show_userguide();
155
158
160 void slot_add_tab();
161 void slot_remove_tab ( int i );
162
164
165 void slot_update_committed_files(const std::list<std::string>&, const std::string&);
166
167 void slot_loaded_db_file ( QString );
168
169public slots:
171 void slot_batch_change_stop(const QList<QPair<QString, QString>>&);
172 void slot_debuginfo_message ( QString const, QString const );
173 void slot_information_message ( QString const, QString const );
174 void slot_notice_message ( QString const, QString const );
175 void slot_warning_message ( QString const, QString const );
176 void slot_error_message ( QString const, QString const );
177 void slot_failure_message ( QString const, QString const );
178
179signals:
180 //void signal_rdb_found (const QString& p, const RDBMap& rdbs);
181 void signal_batch_change_stopped(const QList<QPair<QString, QString>>&);
185};
186
187} // namespace dbe
188
189#endif // MAINWINDOW_H
Definition cptr.hpp:55
void slot_fetch_data(treenode const *)
void slot_information_message(QString const, QString const)
void edit_object_at(const QModelIndex &Index)
bool dbopen(QString const &, dbinfo const &)
void slot_show_userchanges()
void slot_update_committed_files(const std::list< std::string > &, const std::string &)
void slot_warning_message(QString const, QString const)
std::atomic< bool > isArchivedConf
void slot_batch_change_start()
void LoadDefaultSetting()
void slot_loaded_db_file(QString)
void slot_batch_change_stop(const QList< QPair< QString, QString > > &)
void slot_remove_tab(int i)
dbe::models::tree * this_classes
void slot_launch_object_editor(tref)
void slot_abort_changes()
void slot_process_externalchanges()
void slot_toggle_casesensitive_for_treeview(bool)
void load_settings(bool LoadSettings=false)
void slot_launch_batchchange_on_table()
void build_class_tree_model()
QSet< QString > allFiles
void slot_toggle_commit_button()
void closeEvent(QCloseEvent *event)
void slot_load_db_from_create_widget(const QString &)
void build_file_model()
bool slot_commit_database(bool Exit=false)
void argsparse(QMap< QString, QString > const &)
void slot_launch_batchchange()
cptr< dbe::CustomTreeView > get_view() const
models::treeselection * this_treefilter
void slot_debuginfo_message(QString const, QString const)
void slot_error_message(QString const, QString const)
bool eventFilter(QObject *Target, QEvent *Event)
void slot_open_database_from_file()
void slot_abort_external_changes()
void signal_new_file_model()
QString find_db_repository_dir()
void build_table_model()
FileModel * this_files
void slot_create_newdb()
void slot_show_userguide()
static MainWindow * findthis()
void slot_undo_allchanges()
void slot_failure_message(QString const, QString const)
void slot_model_rebuild()
bool m_batch_change_in_progress
void slot_edit_object_from_class_view(QModelIndex const &)
void slot_filter_table_textchange(const QString &)
void signal_db_loaded()
void slot_filter_textchange(const QString &)
void signal_externalchanges_processed()
std::vector< dbe::tref > ProcessQuery(QString const &)
void signal_batch_change_stopped(const QList< QPair< QString, QString > > &)
void update_total_objects()
bool check_ready() const
MainWindow(QMap< QString, QString > const &CommandLine, QWidget *parent=nullptr)
void slot_notice_message(QString const, QString const)
QSortFilterProxyModel this_filesort
void slot_show_information_about_dbe()
Include QT Headers.
inner::configobject::tref tref
Definition tref.hpp:35
dbinfo
Definition dbinfo.hpp:20