Browse Source

update

master
zhaohe 2 years ago
parent
commit
b2709b0837
  1. 2
      libxsync
  2. 93
      mainwindow.cpp
  3. 8
      mainwindow.h
  4. 272
      mainwindow.ui

2
libxsync

@ -1 +1 @@
Subproject commit b6ba9ab22e85b62aa4b573b43a753edb3f22a0d3
Subproject commit ae847b48f919205f4a8330b35f318e4adb766f82

93
mainwindow.cpp

@ -221,16 +221,6 @@ void MainWindow::construct_reg_table() { //
push_reg(ui->gridLayoutWidget, regoff++, "ttlout4_config", reg::kttlout4_config, 0, kreg_val_type_hex);
push_reg(ui->gridLayoutWidget, regoff++, "ttlout4_pulse_mode_duration", reg::kttlout4_pulse_mode_duration, 0, kreg_val_type_decimal);
// kSigGenerator_ctl
// kSigGenerator_genlock_format
// kSigGenerator_timecode_format
// kSigGenerator_control_trigger_reg
// kSigGenerator_timecode0
// kSigGenerator_timecode1
// kSigGenerator_timecode_start0
// kSigGenerator_timecode_start1
// kSigGenerator_work_state
push_reg(ui->gridLayoutWidget, regoff++, "SigGenerator_ctl", reg::kSigGenerator_ctl, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "SigGenerator_genlock_format", reg::kSigGenerator_genlock_format, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "SigGenerator_timecode_format", reg::kSigGenerator_timecode_format, 0, kreg_val_type_decimal);
@ -241,9 +231,18 @@ void MainWindow::construct_reg_table() { //
push_reg(ui->gridLayoutWidget, regoff++, "SigGenerator_timecode_start1", reg::kSigGenerator_timecode_start1, 0, kreg_val_type_dotted_hex);
push_reg(ui->gridLayoutWidget, regoff++, "SigGenerator_work_state", reg::kSigGenerator_work_state, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "camera_sync_out_camera_sync_select", reg::kcamera_sync_out_camera_sync_select, 0, kreg_val_type_decimal);
// ktimecode_in_timecode_sig_selt
// ktimecode_in_timecode_format
// ktimecode_in_timecode0
// ktimecode_in_timecode1
push_reg(ui->gridLayoutWidget, regoff++, "timecode_in_timecode_sig_selt", reg::ktimecode_in_timecode_sig_selt, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "timecode_in_timecode_format", reg::ktimecode_in_timecode_format, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "timecode_in_timecode0", reg::ktimecode_in_timecode0, 0, kreg_val_type_dotted_hex);
push_reg(ui->gridLayoutWidget, regoff++, "timecode_in_timecode1", reg::ktimecode_in_timecode1, 0, kreg_val_type_dotted_hex);
// 设置table的高度
auto qrect = ui->gridLayoutWidget->geometry();
qrect.setHeight(31 * regoff - 1);
@ -313,6 +312,24 @@ void MainWindow::UI_CameraSyncPacketGeneratorModuleConstruct() {
}
}
void MainWindow::UI_TimecodeInModuleConstruct() {
ui->TimecodeInputModule_Format->clear();
for (auto &str : TimecodeFormatStrSet()) {
ui->TimecodeInputModule_Format->addItem(QString::fromStdString(str));
}
ui->TimecodeInputModule_TriggerSigType->clear();
for (auto &str : timecode_input_module::TriggerSigTypeStrSet()) {
ui->TimecodeInputModule_TriggerSigType->addItem(QString::fromStdString(str));
}
}
void MainWindow::UI_TTLInModuleConstruct() {
ui->TTLInputModule_Index->clear();
for (int i = 1; i <= 4; i++) {
ui->TTLInputModule_Index->addItem(QString::number(i));
}
}
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) {
ui->setupUi(this);
m_mainWindow = this;
@ -326,6 +343,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
UI_SigGeneratorConstruct();
UI_TimecodeOutputModuleConstruct();
UI_CameraSyncPacketGeneratorModuleConstruct();
UI_TimecodeInModuleConstruct();
UI_TTLInModuleConstruct();
/*******************************************************************************
* *
@ -589,3 +608,55 @@ void MainWindow::on_CameraSyncPacketGeneratorModule_ClearPacketIndex_clicked() {
DO_XSYNC_FUNC(Xsync::Ins().CameraSyncPacketGeneratorModule_clearPacketIndex());
on_CameraSyncPacketGeneratorModule_Read_clicked();
}
void MainWindow::on_TTLInputModule_Read_clicked() {
int32_t Index = ui->TTLInputModule_Index->currentText().toInt();
uint32_t DivideFactor;
uint32_t FilterFactor;
bool En;
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_getDivideFactor(Index, DivideFactor));
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_getFilterFactor(Index, FilterFactor));
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_getEn(Index, En));
ui->TTLInputModule_DivideFactor->setText(QString::number(DivideFactor));
ui->TTLInputModule_FilterFactor->setText(QString::number(FilterFactor));
ui->TTLInputModule_En->setText(QString::number(En));
}
void MainWindow::on_TTLInputModule_Update_clicked() {
int32_t Index = ui->TTLInputModule_Index->currentText().toInt();
uint32_t DivideFactor;
uint32_t FilterFactor;
bool En;
DivideFactor = ui->TTLInputModule_DivideFactor->text().toUInt();
FilterFactor = ui->TTLInputModule_FilterFactor->text().toUInt();
En = ui->TTLInputModule_En->text().toUInt();
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_setDivideFactor(Index, DivideFactor));
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_setFilterFactor(Index, FilterFactor));
DO_XSYNC_FUNC(Xsync::Ins().TTLInputModule_setEn(Index, En));
}
void MainWindow::on_TimecodeInputModule_Read_clicked() {
TimecodeFormat_t Format;
timecode_input_module::TriggerSigType_t TriggerSig;
XsyncTimecode_t Timecode;
DO_XSYNC_FUNC(Xsync::Ins().TimecodeInputModule_getSrcSelect(TriggerSig));
DO_XSYNC_FUNC(Xsync::Ins().TimecodeInputModule_getTimecodeFormat(Format));
DO_XSYNC_FUNC(Xsync::Ins().TimecodeInputModule_getTimecode(Timecode));
// ZLOGI(TAG, "on_TimecodeInputModule_Read_clicked TriggerSig:%d Format:%d Timecode:%d %d %d %d", TriggerSig, Format, Timecode.hour, Timecode.minute, Timecode.second, Timecode.frame);
ui->TimecodeInputModule_TriggerSigType->setCurrentText(QString::fromStdString(timecode_input_module::TriggerSigType2Str(TriggerSig)));
ui->TimecodeInputModule_Format->setCurrentText(QString::fromStdString(TimecodeFormatToStr(Format)));
ui->TimecodeInputModule_Timecode->setText(QString(XsyncTimecodeToStr(Timecode).c_str()));
}
void MainWindow::on_TimecodeInputModule_Update_clicked() {
auto TriggerSig = timecode_input_module::Str2TriggerSigType(ui->TimecodeInputModule_TriggerSigType->currentText().toStdString());
TimecodeFormat_t Format = Str2TimecodeFormat(ui->TimecodeInputModule_Format->currentText().toStdString());
DO_XSYNC_FUNC(Xsync::Ins().TimecodeInputModule_setSrcSelect(TriggerSig));
DO_XSYNC_FUNC(Xsync::Ins().TimecodeInputModule_setTimecodeFormat(Format));
}

8
mainwindow.h

@ -114,6 +114,12 @@ class MainWindow : public QMainWindow {
void on_CameraSyncPacketGeneratorModule_Read_clicked();
void on_CameraSyncPacketGeneratorModule_ClearPacketIndex_clicked();
void on_TTLInputModule_Read_clicked();
void on_TTLInputModule_Update_clicked();
void on_TimecodeInputModule_Read_clicked();
void on_TimecodeInputModule_Update_clicked();
signals:
void append_log_signal(QString str);
void updateUI_timeCodeInfo_signal(QString);
@ -129,5 +135,7 @@ class MainWindow : public QMainWindow {
void UI_SigGeneratorConstruct();
void UI_TimecodeOutputModuleConstruct();
void UI_CameraSyncPacketGeneratorModuleConstruct();
void UI_TimecodeInModuleConstruct();
void UI_TTLInModuleConstruct();
};
#endif // MAINWINDOW_H

272
mainwindow.ui

@ -19,8 +19,8 @@
<rect>
<x>10</x>
<y>490</y>
<width>951</width>
<height>191</height>
<width>981</width>
<height>251</height>
</rect>
</property>
</widget>
@ -102,11 +102,11 @@
</rect>
</property>
<property name="currentIndex">
<number>5</number>
<number>6</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>寄存器读写</string>
<string>寄存器1</string>
</attribute>
<widget class="QScrollArea" name="scrollArea">
<property name="geometry">
@ -1066,6 +1066,270 @@
</property>
</widget>
</widget>
<widget class="QWidget" name="tab_7">
<attribute name="title">
<string>时码输入模块</string>
</attribute>
<widget class="QComboBox" name="TimecodeInputModule_Format">
<property name="geometry">
<rect>
<x>250</x>
<y>90</y>
<width>241</width>
<height>31</height>
</rect>
</property>
</widget>
<widget class="QComboBox" name="TimecodeInputModule_TriggerSigType">
<property name="geometry">
<rect>
<x>250</x>
<y>40</y>
<width>241</width>
<height>31</height>
</rect>
</property>
<property name="currentIndex">
<number>-1</number>
</property>
</widget>
<widget class="QPushButton" name="TimecodeInputModule_Update">
<property name="geometry">
<rect>
<x>530</x>
<y>90</y>
<width>151</width>
<height>41</height>
</rect>
</property>
<property name="text">
<string>Update</string>
</property>
</widget>
<widget class="QLabel" name="label_20">
<property name="geometry">
<rect>
<x>60</x>
<y>90</y>
<width>151</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>TimecodeFormat</string>
</property>
</widget>
<widget class="QPushButton" name="TimecodeInputModule_Read">
<property name="geometry">
<rect>
<x>530</x>
<y>40</y>
<width>151</width>
<height>41</height>
</rect>
</property>
<property name="text">
<string>Read</string>
</property>
</widget>
<widget class="QLabel" name="label_21">
<property name="geometry">
<rect>
<x>60</x>
<y>40</y>
<width>101</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>TriggerSigType</string>
</property>
</widget>
<widget class="QLabel" name="label_22">
<property name="geometry">
<rect>
<x>60</x>
<y>140</y>
<width>151</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>Timecode</string>
</property>
</widget>
<widget class="QLineEdit" name="TimecodeInputModule_Timecode">
<property name="geometry">
<rect>
<x>250</x>
<y>140</y>
<width>241</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
<widget class="QWidget" name="tab_8">
<attribute name="title">
<string>TTL输入</string>
</attribute>
<widget class="QLabel" name="label_23">
<property name="geometry">
<rect>
<x>30</x>
<y>70</y>
<width>101</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>En</string>
</property>
</widget>
<widget class="QPushButton" name="TTLInputModule_Update">
<property name="geometry">
<rect>
<x>500</x>
<y>120</y>
<width>151</width>
<height>41</height>
</rect>
</property>
<property name="text">
<string>Update</string>
</property>
</widget>
<widget class="QLabel" name="label_24">
<property name="geometry">
<rect>
<x>30</x>
<y>120</y>
<width>101</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>FilterFactor(us)</string>
</property>
</widget>
<widget class="QLabel" name="label_25">
<property name="geometry">
<rect>
<x>30</x>
<y>170</y>
<width>161</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>DivideFactor(count)</string>
</property>
</widget>
<widget class="QLineEdit" name="TTLInputModule_DivideFactor">
<property name="geometry">
<rect>
<x>220</x>
<y>170</y>
<width>241</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QPushButton" name="TTLInputModule_Read">
<property name="geometry">
<rect>
<x>500</x>
<y>70</y>
<width>151</width>
<height>41</height>
</rect>
</property>
<property name="text">
<string>Read</string>
</property>
</widget>
<widget class="QComboBox" name="TTLInputModule_Index">
<property name="geometry">
<rect>
<x>30</x>
<y>21</y>
<width>81</width>
<height>31</height>
</rect>
</property>
<property name="currentIndex">
<number>-1</number>
</property>
</widget>
<widget class="QLineEdit" name="TTLInputModule_FilterFactor">
<property name="geometry">
<rect>
<x>220</x>
<y>120</y>
<width>241</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="TTLInputModule_En">
<property name="geometry">
<rect>
<x>220</x>
<y>80</y>
<width>241</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
</widget>
</widget>
<widget class="QMenuBar" name="menubar">

Loading…
Cancel
Save