Mantid
Loading...
Searching...
No Matches
CompositeDomain.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2009 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//----------------------------------------------------------------------
10// Includes
11//----------------------------------------------------------------------
12#include "MantidAPI/DllConfig.h"
14
15#include <stdexcept>
16
17namespace Mantid {
18namespace API {
25class MANTID_API_DLL CompositeDomain : public FunctionDomain {
26public:
28 virtual size_t getNParts() const = 0;
30 virtual const FunctionDomain &getDomain(size_t i) const = 0;
31};
32
33} // namespace API
34} // namespace Mantid
Base class for a composite domain.
virtual const FunctionDomain & getDomain(size_t i) const =0
Return i-th domain.
virtual size_t getNParts() const =0
Return the number of parts in the domain.
Base class that represents the domain of a function.
Helper class which provides the Collimation Length for SANS instruments.