Mantid
Loading...
Searching...
No Matches
ConvToMDEventsWS.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2010 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//
18
19namespace Mantid {
20// Forward declarations
21namespace API {
22class Progress;
23}
24namespace MDAlgorithms {
32// Class to process event workspace by direct conversion:
33
35public:
36 size_t initialize(const MDWSDescription &WSD, std::shared_ptr<MDEventWSWrapper> inWSWrapper,
37 bool ignoreZeros) override;
38 void runConversion(API::Progress *pProgress) override;
39
40protected:
42
43private:
44 // function runs the conversion on
45 size_t conversionChunk(size_t workspaceIndex) override;
46 // the pointer to the source event workspace as event ws does not work through
47 // the public Matrix WS interface
50 template <class T> size_t convertEventList(size_t workspaceIndex);
51
52 virtual void appendEventsFromInputWS(API::Progress *pProgress, const API::BoxController_sptr &bc);
53};
54
55} // namespace MDAlgorithms
56} // namespace Mantid
Helper class for reporting progress from algorithms.
Definition Progress.h:25
Class describes the interface to the methods, which perform conversion from usual workspaces to MDEve...
The class specializes ConvToDataObjectsBase for the case when the conversion occurs from Events WS to...
size_t convertEventList(size_t workspaceIndex)
function converts particular type of events into MD space and add these events to the workspace itsel...
size_t conversionChunk(size_t workspaceIndex) override
The method runs conversion for a single event list, corresponding to a particular workspace index.
DataObjects::EventWorkspace_const_sptr m_EventWS
virtual void appendEventsFromInputWS(API::Progress *pProgress, const API::BoxController_sptr &bc)
size_t initialize(const MDWSDescription &WSD, std::shared_ptr< MDEventWSWrapper > inWSWrapper, bool ignoreZeros) override
method sets up all internal variables necessary to convert from Event Workspace to MDEvent workspace
void runConversion(API::Progress *pProgress) override
method which starts the conversion procedure
helper class describes the properties of target MD workspace, which should be obtained as the result ...
std::shared_ptr< BoxController > BoxController_sptr
Shared ptr to BoxController.
std::shared_ptr< const EventWorkspace > EventWorkspace_const_sptr
shared pointer to a const Workspace2D
Helper class which provides the Collimation Length for SANS instruments.