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