10#include "MantidDataHandling/DllConfig.h"
23namespace DataHandling {
24class DefaultEventLoader;
35 std::vector<int> framePeriodNumbers);
40 void loadPulseTimes(::NeXus::File &file);
41 std::vector<uint64_t> loadEventIndex(::NeXus::File &file);
42 void prepareEventId(::NeXus::File &file, int64_t &start_event, int64_t &stop_event,
43 const std::vector<uint64_t> &event_index);
44 std::unique_ptr<std::vector<uint32_t>> loadEventId(::NeXus::File &file);
45 std::unique_ptr<std::vector<float>> loadTof(::NeXus::File &file);
46 std::unique_ptr<std::vector<float>> loadEventWeights(::NeXus::File &file);
47 int64_t recalculateDataSize(
const int64_t &size);
This class defines the pulse times for a specific bank.
Helper class for reporting progress from algorithms.
Helper class for LoadEventNexus that is specific to the current default loading code for NXevent_data...
This task does the disk IO from loading the NXS file, and so will be on a disk IO mutex.
bool m_oldNexusFileNames
Old names in the file?
bool m_have_weight
Flag for simulated data.
uint32_t m_max_id
Maximum pixel ID in this data.
Kernel::ThreadScheduler & scheduler
ThreadScheduler running this task.
std::string entry_name
NXS path to bank.
std::vector< int64_t > m_loadSize
How much to load in the file.
uint32_t m_min_id
Minimum pixel ID in this data.
API::Progress * prog
Progress reporting.
std::vector< int64_t > m_loadStart
Index to load start at in the file.
const std::vector< int > m_framePeriodNumbers
Frame period numbers.
std::shared_ptr< BankPulseTimes > thisBankPulseTimes
Object with the pulse times for this bank.
DefaultEventLoader & m_loader
Algorithm being run.
std::string entry_type
NXS type.
bool m_loadError
Did we get an error in loading.
A Task is a unit of work to be scheduled and run by a ThreadPool.
The ThreadScheduler object defines how tasks are allocated to threads and in what order.
std::size_t numEvents(::NeXus::File &file, bool &hasTotalCounts, bool &oldNeXusFileNames, const std::string &prefix, const NexusHDF5Descriptor &descriptor)
Get the number of events in the currently opened group.
Helper class which provides the Collimation Length for SANS instruments.