Mantid
Loading...
Searching...
No Matches
LatticeFunction.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
10#include "MantidCurveFitting/DllConfig.h"
12
13namespace Mantid {
14namespace CurveFitting {
15
28class MANTID_CURVEFITTING_DLL LatticeFunction : public API::ILatticeFunction {
29public:
31
32 std::string name() const override { return "LatticeFunction"; }
33
34 void functionLattice(const API::LatticeDomain &latticeDomain, API::FunctionValues &values) const override;
35
36 void setLatticeSystem(const std::string &crystalSystem) override;
37 void setUnitCell(const std::string &unitCellString) override;
38 void setUnitCell(const Geometry::UnitCell &unitCell) override;
39 Geometry::UnitCell getUnitCell() const override;
40
41protected:
42 void init() override;
43 void beforeDecoratedFunctionSet(const API::IFunction_sptr &fn) override;
44
45private:
47};
48
49using LatticeFunction_sptr = std::shared_ptr<LatticeFunction>;
50
51} // namespace CurveFitting
52} // namespace Mantid
A class to store values calculated by a function.
std::string name() const override
Returns the function's name.
Functions::PawleyParameterFunction_sptr m_cellParameters
Class to implement unit cell of crystals.
Definition: UnitCell.h:44
std::shared_ptr< IFunction > IFunction_sptr
shared pointer to the function base class
Definition: IFunction.h:732
std::shared_ptr< PawleyParameterFunction > PawleyParameterFunction_sptr
std::shared_ptr< LatticeFunction > LatticeFunction_sptr
Helper class which provides the Collimation Length for SANS instruments.