9#include "MantidGeometry/DllConfig.h"
64 const std::string &
create()
const;
67 bool hasXDimension()
const;
70 bool hasYDimension()
const;
73 bool hasZDimension()
const;
76 bool hasTDimension()
const;
79 bool hasIntegratedTDimension()
const;
95 void applyPolicyChecking(
const IMDDimension &dimensionToAdd)
const;
117 std::string message =
"StrictDimensionPolicy bans the use of integrated "
118 "IMDDimensions mapped to x, y, z or t in a "
120 "Attempted to do so with IMDDimension: " +
122 throw std::invalid_argument(message);
The class describes one dimension of multidimensional dataset representing an orthogonal dimension an...
virtual bool getIsIntegrated() const
virtual const std::string & getDimensionId() const =0
short name which identify the dimension among other dimension.
std::string m_lastResult
Variable suports lazy calculation.
IMDDimension_const_sptr m_spXDimension
IMDDimension_const_sptr m_spTDimension
std::vector< IMDDimension_const_sptr > DimensionContainerType
IMDDimension_const_sptr m_spYDimension
DimensionContainerType m_vecDimensions
IMDDimension_const_sptr m_spZDimension
~MDGeometryBuilderXML()
Destructor.
bool m_changed
Flag indicating that some change in the inputs has occured.
std::unique_ptr< T > create(const P &parent, const IndexArg &indexArg, const HistArg &histArg)
This is the create() method that all the other create() methods call.
std::vector< IMDDimension_sptr > VecIMDDimension_sptr
Vector of shared pointers to IMDDimensions.
std::shared_ptr< const IMDDimension > IMDDimension_const_sptr
Shared Pointer to const IMDDimension.
Helper class which provides the Collimation Length for SANS instruments.
void operator()(const IMDDimension &)
void operator()(const IMDDimension &item)