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 {
36// Class to process event workspace by direct conversion:
37
39public:
40 size_t initialize(const MDWSDescription &WSD, std::shared_ptr<MDEventWSWrapper> inWSWrapper,
41 bool ignoreZeros) override;
42 void runConversion(API::Progress *pProgress) override;
43
44protected:
46
47private:
48 // function runs the conversion on
49 size_t conversionChunk(size_t workspaceIndex) override;
50 // the pointer to the source event workspace as event ws does not work through
51 // the public Matrix WS interface
54 template <class T> size_t convertEventList(size_t workspaceIndex);
55
56 virtual void appendEventsFromInputWS(API::Progress *pProgress, const API::BoxController_sptr &bc);
57};
58
59} // namespace MDAlgorithms
60} // 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...
Definition: ConvToMDBase.h:34
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.