Mantid
Loading...
Searching...
No Matches
LoadDiffCal.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2015 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
10#include "MantidDataHandling/DllConfig.h"
12
13namespace H5 {
14class H5File;
15class Group;
16} // namespace H5
17
18namespace Mantid {
19namespace DataHandling {
20
23class MANTID_DATAHANDLING_DLL LoadDiffCal final : public API::Algorithm {
24public:
25 const std::string name() const override;
26 int version() const override;
27 const std::vector<std::string> seeAlso() const override { return {"SaveDiffCal"}; }
28 const std::string category() const override;
29 const std::string summary() const override;
30
31protected:
32 Parallel::ExecutionMode
33 getParallelExecutionMode(const std::map<std::string, Parallel::StorageMode> &storageModes) const override;
34
35private:
36 void init() override;
37 void exec() override;
38 void getInstrument(H5::H5File &file);
39 void loadGroupingFromAlternateFile();
40 void runLoadCalFile();
41 void makeGroupingWorkspace(const std::vector<int32_t> &detids, const std::vector<int32_t> &groups);
42 void makeMaskWorkspace(const std::vector<int32_t> &detids, const std::vector<int32_t> &use);
43 void makeCalWorkspace(const std::vector<int32_t> &detids, const std::vector<double> &difc,
44 const std::vector<double> &difa, const std::vector<double> &tzero,
45 const std::vector<int32_t> &dasids, const std::vector<double> &offsets,
46 const std::vector<int32_t> &use);
47
48 std::string m_filename;
49 std::string m_workspaceName;
51};
52
53} // namespace DataHandling
54} // namespace Mantid
Base class from which all concrete algorithm classes should be derived.
Definition: Algorithm.h:85
LoadDiffCal : TODO: DESCRIPTION.
Definition: LoadDiffCal.h:23
Geometry::Instrument_const_sptr m_instrument
Definition: LoadDiffCal.h:50
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
Definition: LoadDiffCal.h:27
Definition: H5Util.h:16
std::shared_ptr< const Instrument > Instrument_const_sptr
Shared pointer to an const instrument object.
Helper class which provides the Collimation Length for SANS instruments.