Mantid
Loading...
Searching...
No Matches
AlignDetectors.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2008 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
12#include "MantidAlgorithms/DllConfig.h"
14
15namespace Mantid {
16
17namespace DataObjects {
18class EventWorkspace;
19}
20
21namespace Algorithms {
22
23namespace {
24class ConversionFactors;
25}
26
43class MANTID_ALGORITHMS_DLL AlignDetectors final : public API::Algorithm, public API::DeprecatedAlgorithm {
44public:
46
48 const std::string name() const override;
50 const std::string summary() const override;
51
53 int version() const override;
54 const std::vector<std::string> seeAlso() const override { return {"DiffractionFocussing", "AlignAndFocusPowder"}; }
56 const std::string category() const override;
58 std::map<std::string, std::string> validateInputs() override;
59
60protected:
61 Parallel::ExecutionMode
62 getParallelExecutionMode(const std::map<std::string, Parallel::StorageMode> &storageModes) const override;
63
64private:
65 // Implement abstract Algorithm methods
66 void init() override;
67 void exec() override;
68
69 void align(const ConversionFactors &converter, API::Progress &progress, API::MatrixWorkspace_sptr &outputWS);
70
71 void loadCalFile(const API::MatrixWorkspace_sptr &inputWS, const std::string &filename);
72 void getCalibrationWS(const API::MatrixWorkspace_sptr &inputWS);
73
75
78};
79
80} // namespace Algorithms
81} // namespace Mantid
Base class from which all concrete algorithm classes should be derived.
Definition: Algorithm.h:85
Class for marking algorithms as deprecated.
Helper class for reporting progress from algorithms.
Definition: Progress.h:25
Performs a unit change from TOF to dSpacing, correcting the X values to account for small errors in t...
int64_t m_numberOfSpectra
number of spectra in input workspace
Mantid::API::ITableWorkspace_sptr m_calibrationWS
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso algorithms related to this algorithm.
This class is intended to fulfill the design specified in <https://github.com/mantidproject/documents...
std::shared_ptr< ITableWorkspace > ITableWorkspace_sptr
shared pointer to Mantid::API::ITableWorkspace
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
Helper class which provides the Collimation Length for SANS instruments.