10#include "MantidDataHandling/DllConfig.h"
22namespace DataHandling {
35 std::vector<int> framePeriodNumbers);
40 void loadPulseTimes(Nexus::File &file);
41 std::unique_ptr<std::vector<uint64_t>> loadEventIndex(Nexus::File &file);
42 void prepareEventId(Nexus::File &file, uint64_t &start_event, uint64_t &stop_event,
43 const uint64_t &start_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 uint64_t recalculateDataSize(
const int64_t size);
Helper class for reporting progress from algorithms.
This class defines the pulse times for a specific bank.
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.
Nexus::DimVector m_loadStart
Index to load start at 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 address to bank.
std::string m_detIdFieldName
uint32_t m_min_id
Minimum pixel ID in this data.
API::Progress * prog
Progress reporting.
Nexus::DimVector m_loadSize
How much to load 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.
std::string m_timeOfFlightFieldName
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 Nexus::NexusDescriptor &descriptor)
Get the number of events in the currently opened group.
Header for a base Nexus::Exception.
std::vector< dimsize_t > DimVector
Helper class which provides the Collimation Length for SANS instruments.