You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QLabel>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenu>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QTextBrowser>
#include <QtWidgets/QTextEdit>
#include <QtWidgets/QWidget>
//
#include <fstream>
#include <functional>
#include <iostream>
#include <list>
#include <map>
#include <memory>
#include <set>
#include <sstream>
#include <string>
#include <vector>
//
#include "src/logger.hpp"
#include "src/qfunction.hpp"
#include "src/xsync_udp_factory_impl.hpp"
#include "src/zqthread.hpp"
QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE
typedef enum { kreg_val_type_dotted_hex, // 点分16进制
kreg_val_type_dotted_decimal, // 点分10进制
kreg_val_type_str, kreg_val_type_hex, kreg_val_type_decimal, kreg_val_type_binary, } reg_val_type_t;
class DispalyRegIterm { public: QLabel *label = 0; QTextBrowser *regBrowser = 0; QTextEdit *regEditer = 0; QPushButton *writerButton = 0; uint32_t regvalcache; reg_val_type_t regvaltype; };
class MainWindow : public QMainWindow { Q_OBJECT
private: std::map<int32_t, DispalyRegIterm *> m_regdisplayer;
std::unique_ptr<iflytop::ZQThread> m_thread;
public: Ui::MainWindow *ui;
MainWindow(QWidget *parent = nullptr); ~MainWindow();
private: void construct_reg_table(); void push_reg(QWidget *parent, int off, const char *regname, int32_t regadd, int32_t rwflag, reg_val_type_t regvaltype); /*******************************************************************************
* 日志 * *******************************************************************************/ static void log_output(QtMsgType type, const QMessageLogContext &context, const QString &msg); private slots: void append_log_slot(QString); void on_RefreshRegsButton_clicked(); void on_ClearLogButton_clicked(); void on_Connect2XsyncButton_clicked();
void on_GenNewMac_clicked(); void on_FactoryReset_clicked(); void on_Reboot_clicked(); void on_ChangeNetCfg_clicked();
void on_WriteReg_clicked(); void on_ReadReg_clicked();
void updateUI_timeCodeInfo_slot(QString); void updateUI_cameraSyncInfo_slot(QString); void updateUI_reg_slot(int32_t regadd, uint32_t regval); void doinui_slot(QFunction);
void on_TTLOutputMoudle_Read_clicked(); void on_TTLOutputMoudle_Update_clicked();
void on_SigGenerator_Read_clicked(); void on_SigGenerator_Update_clicked(); void on_SigGenerator_Start_clicked(); void on_SigGenerator_Stop_clicked();
void on_TimecodeOutputModule_Read_clicked(); void on_TimecodeOutputModule_Update_clicked();
void on_CameraSyncPacketGeneratorModule_Update_clicked(); void on_CameraSyncPacketGeneratorModule_Read_clicked(); void on_CameraSyncPacketGeneratorModule_ClearPacketIndex_clicked();
signals: void append_log_signal(QString str); void updateUI_timeCodeInfo_signal(QString); void updateUI_cameraSyncInfo_signal(QString); void updateUI_reg_signal(int32_t regadd, uint32_t regval); void doinui_signal(QFunction);
private: void mainWindowsRun(); void updateUI_timeCodeInfo(uint32_t regoff);
void UI_TTLOutputMoudleConstruct(); void UI_SigGeneratorConstruct(); void UI_TimecodeOutputModuleConstruct(); void UI_CameraSyncPacketGeneratorModuleConstruct(); }; #endif // MAINWINDOW_H
|