Mantid
Loading...
Searching...
No Matches
CoordTransformAffineParser.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2018 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 "MantidDataObjects/DllConfig.h"
10#include <memory>
11
12namespace Poco {
13namespace XML {
14// Forward declaration
15class Element;
16} // namespace XML
17} // namespace Poco
18
19namespace Mantid {
20namespace API {
22class CoordTransform;
23} // namespace API
24
25namespace DataObjects {
26
32class MANTID_DATAOBJECTS_DLL CoordTransformAffineParser {
33public:
35 virtual Mantid::API::CoordTransform *createTransform(Poco::XML::Element *coordTransElement) const;
36 virtual void setSuccessor(CoordTransformAffineParser *other);
37 virtual ~CoordTransformAffineParser() = default;
38 using SuccessorType_sptr = std::shared_ptr<CoordTransformAffineParser>;
40protected:
42private:
47};
48} // namespace DataObjects
49} // namespace Mantid
Unique SingleValueParameter Declaration for InputNDimensions.
A parser for processing coordinate transform xml.
CoordTransformAffineParser & operator=(const CoordTransformAffineParser &)
Assignment operator.
std::shared_ptr< CoordTransformAffineParser > SuccessorType_sptr
successor parser shared ptr typedef
CoordTransformAffineParser(const CoordTransformAffineParser &)
Copy constructor.
Helper class which provides the Collimation Length for SANS instruments.
Definition: Algorithm.h:30