Mantid
Loading...
Searching...
No Matches
LoadOff.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2019 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
11
12#include <functional>
13#include <unordered_set>
14
15namespace Mantid {
16
17namespace Geometry {
18class MeshObject;
19}
20namespace DataHandling {
21
22class MANTID_DATAHANDLING_DLL LoadOff : public LoadSingleMesh {
23public:
24 LoadOff(const std::string &filename, ScaleUnits scaleType);
25 std::unique_ptr<Geometry::MeshObject> readShape() override;
26
27private:
28 std::unique_ptr<Geometry::MeshObject> readOFFMeshObject();
29 bool getOFFline(std::string &line);
30 void readOFFVertices();
31 void readOFFTriangles();
32
33 uint32_t m_nVertices;
34 uint32_t m_nTriangles;
35};
36} // namespace DataHandling
37} // namespace Mantid
Helper class which provides the Collimation Length for SANS instruments.