- The Indexing tab now shows what the selected algorithm resolves to on this
machine/dataset ("Effective on this system: ..."), mirroring
DiffractionExperiment::GetIndexingAlgorithm() so Auto is no longer ambiguous
(GPU present? unit cell known?). Cell-known state is forwarded from the loaded
dataset via JFJochSettingsWindow::datasetLoaded.
- FFBIDX and FFT (GPU) radio options are disabled on builds without CUDA, where
only the FFTW CPU indexer exists.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
37 lines
1.7 KiB
C++
37 lines
1.7 KiB
C++
// SPDX-FileCopyrightText: 2026 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
|
|
// SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
#pragma once
|
|
|
|
#include "JFJochHelperWindow.h"
|
|
#include "JFJochViewerProcessingWindow.h"
|
|
#include "JFJochAzIntWindow.h"
|
|
#include "JFJochBraggIntegrationPanel.h"
|
|
#include "JFJochScalingPanel.h"
|
|
|
|
// One tabbed window converging all processing settings: Spot finding & indexing | Azimuthal |
|
|
// Bragg integration | Scaling. The first two tabs reuse the existing settings widgets (their
|
|
// content is lifted into tabs, keeping all their logic), Bragg + scaling are new. Single source of
|
|
// truth for both interactive single-image analysis and processing jobs.
|
|
class JFJochSettingsWindow : public JFJochHelperWindow {
|
|
Q_OBJECT
|
|
JFJochViewerProcessingWindow *m_processing;
|
|
JFJochAzIntWindow *m_azint;
|
|
JFJochBraggIntegrationPanel *m_bragg;
|
|
JFJochScalingPanel *m_scaling;
|
|
|
|
public:
|
|
JFJochSettingsWindow(const SpotFindingSettings &spot, const IndexingSettings &indexing,
|
|
const AzimuthalIntegrationSettings &azint, const BraggIntegrationSettings &bragg,
|
|
const ScalingSettings &scaling, QWidget *parent = nullptr);
|
|
|
|
// Forwards the dataset's unit-cell state to the indexing tab (to resolve the Auto algorithm).
|
|
void datasetLoaded(std::shared_ptr<const JFJochReaderDataset> in_dataset) override;
|
|
|
|
signals:
|
|
void spotFindingChanged(const SpotFindingSettings &settings, const IndexingSettings &indexing, int64_t max_spots);
|
|
void azintChanged(const AzimuthalIntegrationSettings &settings);
|
|
void braggChanged(BraggIntegrationSettings settings);
|
|
void scalingChanged(ScalingSettings settings);
|
|
};
|