From 76b31321aaacae42b01c28c6fa8fbb0916a75413 Mon Sep 17 00:00:00 2001
From: Lucio Zambon <lucio.zambon@elettra.eu>
Date: Tue, 29 Sep 2020 14:20:07 +0200
Subject: [PATCH] Upload New File

---
 src/acs.h | 207 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 207 insertions(+)
 create mode 100644 src/acs.h

diff --git a/src/acs.h b/src/acs.h
new file mode 100644
index 0000000..1f81acc
--- /dev/null
+++ b/src/acs.h
@@ -0,0 +1,207 @@
+/***************************************************************************
+ *   Copyright (C) 2007 by									   *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or	 *
+ *   (at your option) any later version.								   *
+ *																		 *
+ *   This program is distributed in the hope that it will be useful,	   *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of		*
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the		 *
+ *   GNU General Public License for more details.						  *
+ *																		 *
+ *   You should have received a copy of the GNU General Public License	 *
+ *   along with this program; if not, write to the						 *
+ *   Free Software Foundation, Inc.,									   *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.			 *
+ ***************************************************************************/
+
+
+#ifndef acs_H
+#define acs_H
+
+#include "ui_acs.h"
+#include <tango.h>
+#include <QProcess>
+#include <QSettings>
+
+class acs: public QWidget
+{
+	Q_OBJECT
+
+public:
+	acs(QWidget * =NULL);
+	~acs();
+	string myversion;
+
+	// resize data structure
+	struct w_buffer {
+		QWidget *w;
+		QFont font;
+		double x, y, width, height;
+	};
+	vector<w_buffer> ws_buffer;
+	void resizeEvent( QResizeEvent * event );
+	void init_icon_button();
+
+public slots:
+	void refresh();
+	void open_inA0_list();
+	void open_inAso_list();
+	void open_staff_list();
+	void open_linac_doors();
+	void open_e0_doors();
+	void open_e1_doors();
+	void open_e2_doors();
+	void open_e3_doors();
+	void open_e4_doors();
+	void open_e5_doors();
+	void open_e6_doors();
+	void open_e7_doors();
+	void open_tl_doors();
+	void open_so_doors();
+	void open_emergency_buttons();
+	void open_emergency_buttons_so();
+	void open_stat_linac_shutdown();
+	void open_stat_linac_off();
+	void open_stat_linac_on();
+	void open_stat_undulator_shutdown();
+	void open_stat_undulator_off();
+	void open_stat_undulator_on();
+	void open_klyswitch();
+	void open_klystat();
+	void open_search_panel();
+	void open_permission_panel();
+	void open_plants_panel();
+	void open_map();
+	void open_map_panel();
+	void open_hardware_panel();
+	void open_version_panel();
+	void open_alarmlist_panel();
+	void open_rfpcgun_panel();
+	void open_rfinhibit_panel();
+	void open_A0door();
+	void open2_A0door();
+	void close_A0door();
+	void open_Asodoor();
+	void a0Restore();
+	void asoRestore();
+	void watchRequest();
+	void watchRequest_undulator();
+	void open_topup_error();
+	void emergencyRestore();
+	void emergencyRestore_tl();
+	void emergencyRestore_so();
+	void open_bst_linac();
+	void close_bst_linac();
+	void open_bst_linac_panel();
+	void open_bst_linac_info_panel();
+	void open_bst1_fel1();
+	void close_bst1_fel1();
+	void open_bst1_fel1_panel();
+	void open_bst2_fel1();
+	void close_bst2_fel1();
+	void open_bst2_fel1_panel();
+	void open_bst1_fel2();
+	void close_bst1_fel2();
+	void open_bst1_fel2_panel();
+	void open_bst2_fel2();
+	void close_bst2_fel2();
+	void open_bst2_fel2_panel();
+	void open_bst_diag();
+	void open_bst_diag_panel();
+	void open_bst_bl_info_panel();
+	void close_bst_diag();
+	void open_scrapersinfo_panel();
+	void switch_master();
+	void switch_control_location();
+	void open_watch_esa1_panel();
+	void open_watch_esa2_panel();
+	void open_esahutch_panel();
+	void open_emergency_esa1_panel();
+	void open_emergency_esa2_panel();
+	void open_ps_panel();
+	void open_toroid_panel();
+	void open_register();
+
+
+private:
+	Ui::acs ui;
+	bool master, masterA0, masterA1;
+	QTimer *timer;
+	QProcess *inA0_list_process;
+	QProcess *inAso_list_process;
+	QProcess *staff_list_process;
+	QProcess *bst_process;
+	QProcess *linac_doors_process;
+	QProcess *e0_doors_process;
+	QProcess *e1_doors_process;
+	QProcess *e2_doors_process;
+	QProcess *e3_doors_process;
+	QProcess *e4_doors_process;
+	QProcess *e5_doors_process;
+	QProcess *e6_doors_process;
+	QProcess *e7_doors_process;
+	QProcess *tl_doors_process;
+	QProcess *so_doors_process;
+	QProcess *rfpcgun_process;
+	QProcess *rfinhibit_process;
+	QProcess *bst_linac_info_process;
+	QProcess *bst_linac_process;
+	QProcess *bst1_fel1_process;
+	QProcess *bst2_fel1_process;
+	QProcess *toroid_process;
+	QProcess *ps_process;
+	QProcess *bst1_fel2_process;
+	QProcess *bst2_fel2_process;
+	QProcess *bst_bl_info_process;
+	QProcess *bst_diag_process;
+	QProcess *stat_shutdown_process;
+	QProcess *stat_off_process;
+	QProcess *stat_on_process;
+	QProcess *undulator_stat_shutdown_process;
+	QProcess *undulator_stat_off_process;
+	QProcess *undulator_stat_on_process;
+	QProcess *klyswitch_process;
+	QProcess *klystat_process;
+	QProcess *search_process;
+	QProcess *emergency_buttons_process;
+	QProcess *emergency_buttons_so_process;
+	QProcess *topup_error_process;
+	QProcess *map_process;
+	QProcess *hardware_process;
+	QProcess *permission_process;
+	QProcess *plants_process;
+	QProcess *scrapersinfo_process;
+	QProcess *alarmlist_process;
+	QProcess *watch_esa1_process;
+	QProcess *watch_esa2_process;
+	QProcess *esahutch_process;
+	QProcess *emergency_esa1_process;
+	QProcess *emergency_esa2_process;
+	QProcess *register_process;
+	int myReadShortint(const char *, short int *);
+	int myReadBool(const char *, bool *);
+	int myReadBoolArray(const char *, vector<bool> &);
+	int myReadString(const char *, string &);
+	int myReadShortArray(const char *, vector<short> &);
+	int myReadAttribute(const char *);
+	int myWriteCommand(const char *cmdName);
+	int myWriteCommand(const char *cmdName, const int param);
+	int mySetColor(QFrame *, const char *, QPalette::ColorRole);
+	int mySetTextColor(QLabel *, const char *, const char *);
+	int mySetTextColor(QLabel *, const char *, const char *, const char *);
+	int refreshCount;
+	int map;
+	bool plcstat;
+	Tango::DeviceAttribute myAttribute;
+	Tango::DeviceProxy 	*plc_server;
+	QPixmap door_big_open, door_big_closed;
+	QString imgpath;
+	QString style;
+	QString controlLocation;
+	void web_read(char *url, const char *data);
+};
+
+
+#endif
-- 
GitLab