Mantid
Loading...
Searching...
No Matches
GeneralFrame.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
9#include "MantidGeometry/DllConfig.h"
11#include "MantidKernel/MDUnit.h"
12#include "MantidKernel/System.h"
14#include <memory>
15
16namespace Mantid {
17namespace Geometry {
18
21class MANTID_GEOMETRY_DLL GeneralFrame : public MDFrame {
22public:
23 static const std::string GeneralFrameDistance;
24 static const std::string GeneralFrameTOF;
25 static const std::string GeneralFrameName;
26 GeneralFrame(std::string frameName, const Kernel::UnitLabel &unit);
27 GeneralFrame(std::string frameName, std::unique_ptr<Mantid::Kernel::MDUnit> unit);
28 Kernel::UnitLabel getUnitLabel() const override;
29 const Kernel::MDUnit &getMDUnit() const override;
30 bool setMDUnit(const Mantid::Kernel::MDUnit &newUnit) override;
31 bool canConvertTo(const Kernel::MDUnit &otherUnit) const override;
32 bool isQ() const override;
33 bool isSameType(const MDFrame &frame) const override;
34 std::string name() const override;
35 GeneralFrame *clone() const override;
36 Mantid::Kernel::SpecialCoordinateSystem equivalientSpecialCoordinateSystem() const override;
37
38private:
40 std::unique_ptr<Mantid::Kernel::MDUnit> m_unit;
42 const std::string m_frameName;
43};
44
45} // namespace Geometry
46} // namespace Mantid
GeneralFrame : Any MDFrame that isn't related to momemtum transfer.
Definition: GeneralFrame.h:21
static const std::string GeneralFrameTOF
Definition: GeneralFrame.h:24
static const std::string GeneralFrameDistance
Definition: GeneralFrame.h:23
const std::string m_frameName
Frame name.
Definition: GeneralFrame.h:42
std::unique_ptr< Mantid::Kernel::MDUnit > m_unit
Label unit.
Definition: GeneralFrame.h:40
static const std::string GeneralFrameName
Definition: GeneralFrame.h:25
MDFrame : The coordinate frame for a dimension, or set of dimensions in a multidimensional workspace.
Definition: MDFrame.h:22
MDUnit : Unit type for multidimensional data types.
Definition: MDUnit.h:20
A base-class for the a class that is able to return unit labels in different representations.
Definition: UnitLabel.h:20
SpecialCoordinateSystem
Special coordinate systems for Q3D.
Helper class which provides the Collimation Length for SANS instruments.