17#include "MantidDataHandling/DllConfig.h"
24namespace DataHandling {
40 void init(
bool hdfLoader);
41 void exec(
const std::string &hdfFile,
const std::string &eventFile);
47 std::vector<bool>
createRoiVector(
const std::string &seltubes,
const std::string &maskfile);
68 void calibrateDopplerPhase(
const std::vector<size_t> &eventCounts,
const std::vector<EventVector_pt> &eventVectors);
69 void dopplerTimeToTOF(
const std::vector<EventVector_pt> &eventVectors,
double &minTOF,
double &maxTOF);
73 std::vector<EventVector_pt> &eventVectors);
121 int version()
const override;
122 const std::vector<std::string> seeAlso()
const override;
123 const std::string category()
const override;
124 const std::string
name()
const override;
125 const std::string summary()
const override;
129 void exec()
override;
130 void init()
override;
158 int version()
const override;
159 const std::vector<std::string> seeAlso()
const override;
160 const std::string category()
const override;
161 const std::string
name()
const override;
162 const std::string summary()
const override;
166 void exec()
override;
167 void init()
override;
virtual void init()=0
Virtual method - must be overridden by concrete algorithm.
virtual void exec()=0
Virtual method - must be overridden by concrete algorithm.
Defines an interface to an algorithm that loads a file so that it can take part in the automatic sele...
This class contains the information about the log entries.
helper class to keep track of progress
LoadEMUHdf : Loads an ANSTO EMU Hdf and linked event file into a workspace.
LoadEMUTar : Loads a merged ANSTO EMU Hdf and event file into a workspace.
void prepareEventStorage(ANSTO::ProgressTracker &prog, const std::vector< size_t > &eventCounts, std::vector< EventVector_pt > &eventVectors)
Allocate space for the event storage in eventVectors after the eventCounts have been determined.
void calibrateDopplerPhase(const std::vector< size_t > &eventCounts, const std::vector< EventVector_pt > &eventVectors)
Calibrate the doppler phase based on the analysed events using the eventCounts and eventVectors.
std::vector< bool > createRoiVector(const std::string &seltubes, const std::string &maskfile)
Region of interest is defined by the selected detectors and the maskfile.
void loadInstrument()
Load the instrument definition.
void loadParameters(const std::string &hdfFile, API::LogManager &logm)
Load parameters from input hdfFile and save to the log manager, logm.
void loadDetectorL2Values()
Recovers the L2 neutronic distance for each detector.
void setupDetectorMasks(const std::vector< bool > &roi)
Set up the detector masks to the region of interest roi.
void updateNeutronicPostions(detid_t detID, double sampleAnalyser)
Update the neutronic position for the detID using the distance from the source and the sample to anal...
void loadDopplerParameters(API::LogManager &logm)
Get the Doppler parameters and record to the log manager, logm.
DataObjects::EventWorkspace_sptr m_localWorkspace
void createWorkspace(const std::string &title)
Creates an event workspace and sets the title.
void loadEnvironParameters(const std::string &hdfFile, API::LogManager &logm)
Load the environment variables from the hdfFile and save as time series to the log manager,...
std::vector< double > m_detectorL2
void dopplerTimeToTOF(const std::vector< EventVector_pt > &eventVectors, double &minTOF, double &maxTOF)
Convert the doppler time to TOF for all the events in eventVectors and time of flight range as minTOF...
Defines a wrapper around an open file.
std::vector< Types::Event::TofEvent > * EventVector_pt
pointer to the vector of events
std::shared_ptr< EventWorkspace > EventWorkspace_sptr
shared pointer to the EventWorkspace class
Helper class which provides the Collimation Length for SANS instruments.