Mantid
Loading...
Searching...
No Matches
LoadEventNexusIndexSetup.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2017 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"
11#include "MantidIndexing/IndexInfo.h"
12
13namespace Mantid {
14namespace DataHandling {
15
26class MANTID_DATAHANDLING_DLL LoadEventNexusIndexSetup {
27public:
28 LoadEventNexusIndexSetup(API::MatrixWorkspace_const_sptr instrumentWorkspace, const int32_t min, const int32_t max,
29 std::vector<int32_t> range);
30
31 std::pair<int32_t, int32_t> eventIDLimits() const;
32
33 Indexing::IndexInfo makeIndexInfo();
34 Indexing::IndexInfo makeIndexInfo(const std::vector<std::string> &bankNames);
35 Indexing::IndexInfo
36 makeIndexInfo(const std::pair<std::vector<int32_t>, std::vector<int32_t>> &spectrumDetectorMapping,
37 const bool monitorsOnly);
38
39private:
40 Indexing::IndexInfo filterIndexInfo(const Indexing::IndexInfo &indexInfo);
41
43 int32_t m_min;
44 int32_t m_max;
45 std::vector<int32_t> m_range;
46};
47
48} // namespace DataHandling
49} // namespace Mantid
Helper for LoadEventNexus dealing with setting up indices (spectrum numbers an detector ID mapping) f...
const API::MatrixWorkspace_const_sptr m_instrumentWorkspace
std::shared_ptr< const MatrixWorkspace > MatrixWorkspace_const_sptr
shared pointer to the matrix workspace base class (const version)
Helper class which provides the Collimation Length for SANS instruments.