14 throw std::invalid_argument(
"HKL unit must be a QUnit");
27HKL::HKL(std::unique_ptr<Kernel::MDUnit> &unit) {
28 checkUnitCompatibility(unit.get());
45HKL::HKL(
const HKL &other) : m_unit(other.getMDUnit().clone()) {}
49 this->
m_unit = std::unique_ptr<Mantid::Kernel::MDUnit>(other.getMDUnit().clone());
59 m_unit = std::unique_ptr<Kernel::MDUnit>(newUnit.
clone());
78 const auto &
tmp =
dynamic_cast<const HKL &
>(frame);
80 }
catch (std::bad_cast &) {
#define UNUSED_ARG(x)
Function arguments are sometimes unused in certain implmentations but are required for documentation ...
Mantid::Kernel::SpecialCoordinateSystem equivalientSpecialCoordinateSystem() const override
const Kernel::MDUnit & getMDUnit() const override
static const std::string HKLName
HKL(const HKL &other)
Assignment.
bool isSameType(const MDFrame &frame) const override
HKL * clone() const override
Kernel::UnitLabel getUnitLabel() const override
HKL & operator=(const HKL &other)
bool isQ() const override
bool canConvertTo(const Kernel::MDUnit &otherUnit) const override
bool setMDUnit(const Mantid::Kernel::MDUnit &newUnit) override
std::string name() const override
std::unique_ptr< Kernel::MDUnit > m_unit
MDFrame : The coordinate frame for a dimension, or set of dimensions in a multidimensional workspace.
MDUnit : Unit type for multidimensional data types.
virtual MDUnit * clone() const =0
virtual bool isQUnit() const =0
A base-class for the a class that is able to return unit labels in different representations.
SpecialCoordinateSystem
Special coordinate systems for Q3D.