Mantid
Loading...
Searching...
No Matches
RefAxis.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
10
11namespace Mantid {
12namespace API {
23class MANTID_API_DLL RefAxis : public NumericAxis {
24public:
25 RefAxis(const MatrixWorkspace *const parentWorkspace);
26
27 Axis *clone(const MatrixWorkspace *const parentWorkspace) override;
28 Axis *clone(const std::size_t length, const MatrixWorkspace *const parentWorkspace) override;
29 std::size_t length() const override;
31 double operator()(const std::size_t &index, const std::size_t &verticalIndex) const override;
32 void setValue(const std::size_t &index, const double &value) override;
33 bool operator==(const Axis &) const override;
34 bool equalWithinTolerance(const Axis &axis2, const double tolerance) const override;
35 // We must override these to prevent access to NumericAxis::m_values and
36 // m_edges, which are unused by RefAxis and thus do not hold sensible values.
37 size_t indexOfValue(const double value) const override;
38 std::vector<double> createBinBoundaries() const override;
39 const std::vector<double> &getValues() const override;
40 double getMin() const override;
41 double getMax() const override;
42
43private:
44 RefAxis(const RefAxis &right, const MatrixWorkspace *const parentWorkspace);
46 RefAxis(const RefAxis &);
48 const RefAxis &operator=(const RefAxis &);
49
52};
53
54} // namespace API
55} // namespace Mantid
double value
The value of the point.
Definition: FitMW.cpp:51
std::map< DeltaEMode::Type, std::string > index
Definition: DeltaEMode.cpp:19
double right
Definition: LineProfile.cpp:81
double tolerance
Class to represent the axis of a workspace.
Definition: Axis.h:30
Base MatrixWorkspace Abstract Class.
Class to represent a numeric axis of a workspace.
Definition: NumericAxis.h:29
A class to represent the axis of a 2D (or more) workspace where the value at a given point on the axi...
Definition: RefAxis.h:23
const RefAxis & operator=(const RefAxis &)
Private, undefined copy assignment operator.
const MatrixWorkspace *const m_parentWS
A pointer to the workspace holding the axis.
Definition: RefAxis.h:51
RefAxis(const RefAxis &)
Private, undefined 'regular' copy constructor.
Helper class which provides the Collimation Length for SANS instruments.
constexpr bool operator==(const wide_integer< Bits, Signed > &lhs, const wide_integer< Bits2, Signed2 > &rhs)