mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-22 03:40:04 +02:00
wip
This commit is contained in:
parent
f01e5fd5ec
commit
b4d2f2ee1c
@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
#include "sls/Detector.h"
|
||||
#include "ui_form_tab_settings.h"
|
||||
#include <QCheckBox>
|
||||
|
||||
class qTabSettings : public QWidget, private Ui::TabSettingsObject {
|
||||
Q_OBJECT
|
||||
@ -29,6 +30,8 @@ class qTabSettings : public QWidget, private Ui::TabSettingsObject {
|
||||
void GetCounterMask();
|
||||
|
||||
sls::Detector *det;
|
||||
std::vector<QCheckBox *> counters;
|
||||
|
||||
enum {
|
||||
STANDARD,
|
||||
FAST,
|
||||
|
@ -2,7 +2,6 @@
|
||||
#include "qDefs.h"
|
||||
#include "sls/ToString.h"
|
||||
#include "sls/bit_utils.h"
|
||||
#include <QCheckBox>
|
||||
#include <QStandardItemModel>
|
||||
|
||||
qTabSettings::qTabSettings(QWidget *parent, sls::Detector *detector)
|
||||
@ -16,6 +15,8 @@ qTabSettings::~qTabSettings() {}
|
||||
|
||||
void qTabSettings::SetupWidgetWindow() {
|
||||
|
||||
counters = std::vector<QCheckBox *>{chkCounter1, chkCounter2, chkCounter3};
|
||||
|
||||
spinThreshold2->hide();
|
||||
spinThreshold3->hide();
|
||||
btnSetThreshold->hide();
|
||||
@ -359,20 +360,17 @@ void qTabSettings::GetCounterMask() {
|
||||
try {
|
||||
auto retval = sls::getSetBits(det->getCounterMask().tsquash(
|
||||
"Counter mask is inconsistent for all detectors."));
|
||||
std::vector<QCheckBox *> counters = {chkCounter1, chkCounter2,
|
||||
chkCounter3};
|
||||
// default to unchecked
|
||||
for (unsigned int i = 0; i < counters.size(); ++i) {
|
||||
counters[i]->setChecked(false);
|
||||
}
|
||||
// if retva[i] = 2, chkCounter2 is checked
|
||||
for (unsigned int i = 0; i < retval.size(); ++i) {
|
||||
if (retval[i] > 3) {
|
||||
std::for_each(counters, [](auto &i) { i.setChecked(false); });
|
||||
// std::for_each(counters.begin(), counters.end(), )
|
||||
// if retval[i] = 2, chkCounter2 is checked
|
||||
for (auto i : retval) {
|
||||
if (i > 3) {
|
||||
throw sls::RuntimeError(
|
||||
std::string("Unknown counter index : ") +
|
||||
std::to_string(static_cast<int>(retval[i])));
|
||||
std::to_string(static_cast<int>(i)));
|
||||
}
|
||||
counters[retval[i]]->setChecked(true);
|
||||
counters[i]->setChecked(true);
|
||||
}
|
||||
}
|
||||
CATCH_DISPLAY("Could not get counter mask.", "qTabSettings::GetCounterMask")
|
||||
@ -382,7 +380,6 @@ void qTabSettings::GetCounterMask() {
|
||||
}
|
||||
|
||||
void qTabSettings::SetCounterMask() {
|
||||
std::vector<QCheckBox *> counters = {chkCounter1, chkCounter2, chkCounter3};
|
||||
uint32_t mask = 0;
|
||||
for (unsigned int i = 0; i < counters.size(); ++i) {
|
||||
if (counters[i]->isChecked()) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user