Mantid
Loading...
Searching...
No Matches
ComponentVisitor.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2017 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 <cstddef>
10namespace Mantid {
11namespace Geometry {
12
13class ICompAssembly;
14class IDetector;
15class IComponent;
16class IObjComponent;
17class RectangularDetector;
18class ObjCompAssembly;
19
26public:
27 virtual size_t registerComponentAssembly(const ICompAssembly &assembly) = 0;
28 virtual size_t registerGenericComponent(const IComponent &component) = 0;
29 virtual size_t registerInfiniteComponent(const Mantid::Geometry::IComponent &component) = 0;
30 virtual size_t registerGenericObjComponent(const IObjComponent &objComponent) = 0;
31 virtual size_t registerInfiniteObjComponent(const IObjComponent &component) = 0;
32 virtual size_t registerDetector(const IDetector &detector) = 0;
33 virtual size_t registerGridBank(const ICompAssembly &bank) = 0;
34 virtual size_t registerRectangularBank(const ICompAssembly &bank) = 0;
35 virtual size_t registerStructuredBank(const ICompAssembly &bank) = 0;
37 virtual ~ComponentVisitor() = default;
38};
39} // namespace Geometry
40} // namespace Mantid
double obj
the value of the quadratic function
ComponentVisitor : Visitor for IComponents.
virtual size_t registerInfiniteComponent(const Mantid::Geometry::IComponent &component)=0
virtual size_t registerStructuredBank(const ICompAssembly &bank)=0
virtual size_t registerRectangularBank(const ICompAssembly &bank)=0
virtual size_t registerObjComponentAssembly(const ObjCompAssembly &obj)=0
virtual size_t registerDetector(const IDetector &detector)=0
virtual size_t registerComponentAssembly(const ICompAssembly &assembly)=0
virtual size_t registerGenericObjComponent(const IObjComponent &objComponent)=0
virtual size_t registerGridBank(const ICompAssembly &bank)=0
virtual size_t registerInfiniteObjComponent(const IObjComponent &component)=0
virtual size_t registerGenericComponent(const IComponent &component)=0
Class for Assembly of geometric components.
base class for Geometric IComponent
Definition IComponent.h:53
Interface class for detector objects.
Definition IDetector.h:43
Object Component class, this class brings together the physical attributes of the component to the po...
Class for Assembly of geometric components.
Helper class which provides the Collimation Length for SANS instruments.