Mantid
Loading...
Searching...
No Matches
LoadMuonNexusV2NexusHelper.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2020 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
13
14#include <optional>
15#include <string>
16#include <vector>
17
18namespace Mantid {
19namespace DataHandling {
20namespace MuonNexus {
22 double magneticField = -1;
23 double temperature = -1;
24};
25} // namespace MuonNexus
26
28public:
30
31 // Loads the good frame data from the nexus file
32 Nexus::NXInt loadGoodFramesDataFromNexus(bool isFileMultiPeriod);
33 // Loads the grouping data from the nexus file
34 std::optional<std::vector<detid_t>> loadDetectorGroupingFromNexus(const std::vector<detid_t> &loadedDetectors,
35 bool isFileMultiPeriod, int periodNumber);
36 // Load the orientation from the nexus entry
38 // Load deadtime information
39 std::vector<double> loadDeadTimesFromNexus(const std::vector<detid_t> &loadedDetectors, bool isFileMultiPeriod,
40 int periodNumber);
41 // Load first good data from the nexus entry
43 // Load last good data from the nexus entry
45 // Load time zero from the nexus entry
47 // Load time zero from nexus entry into a vector
48 std::vector<double> loadTimeZeroListFromNexusFile(size_t numSpectra);
49 // Load Muon sample information from the nexus file
51 // Number of periods in the nexus file
52 int getNumberOfPeriods() const;
53 std::string getPeriodLabels() const;
54 std::vector<int> getIntVector(const int &numPeriods, const std::string &name) const;
55 std::string getPeriodSequenceString(const int &numPeriods) const;
56 std::string getPeriodTypes(const int &numPeriods) const;
57 std::string getPeriodFramesRequested(const int &numPeriods) const;
58 std::string getPeriodRawFrames(const int &numPeriods) const;
59 std::string getPeriodOutput(const int &numPeriods) const;
60 std::string getPeriodTotalCounts() const;
61
62private:
64};
65} // namespace DataHandling
66} // namespace Mantid
std::string name
Definition Run.cpp:60
std::string getPeriodTypes(const int &numPeriods) const
std::vector< int > getIntVector(const int &numPeriods, const std::string &name) const
std::vector< double > loadDeadTimesFromNexus(const std::vector< detid_t > &loadedDetectors, bool isFileMultiPeriod, int periodNumber)
std::optional< std::vector< detid_t > > loadDetectorGroupingFromNexus(const std::vector< detid_t > &loadedDetectors, bool isFileMultiPeriod, int periodNumber)
std::string getPeriodFramesRequested(const int &numPeriods) const
std::string getPeriodSequenceString(const int &numPeriods) const
std::string getPeriodRawFrames(const int &numPeriods) const
std::vector< double > loadTimeZeroListFromNexusFile(size_t numSpectra)
Nexus::NXInt loadGoodFramesDataFromNexus(bool isFileMultiPeriod)
std::string getPeriodOutput(const int &numPeriods) const
Templated class implementation of NXDataSet.
Implements NXentry Nexus class.
Helper class which provides the Collimation Length for SANS instruments.