Mantid
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader Class Reference

#include <NexusLoader.h>

Public Member Functions

virtual std::stack< EventROIgetEventIndexRanges (H5::Group &event_group, const uint64_t number_events, std::unique_ptr< std::vector< uint64_t > > *event_index=nullptr) const
 
std::stack< std::pair< int, EventROI > > getEventIndexSplitRanges (H5::Group &event_group, const uint64_t number_events)
 
virtual void loadData (H5::DataSet &SDS, std::unique_ptr< std::vector< float > > &data, const std::vector< size_t > &offsets, const std::vector< size_t > &slabsizes)
 
virtual void loadData (H5::DataSet &SDS, std::unique_ptr< std::vector< uint32_t > > &data, const std::vector< size_t > &offsets, const std::vector< size_t > &slabsizes)
 
 NexusLoader (const bool is_time_filtered, const std::vector< PulseROI > &pulse_indices, const std::vector< std::pair< int, PulseROI > > &target_to_pulse_indices={})
 
virtual ~NexusLoader ()
 

Private Member Functions

template<typename Type >
void loadDataInternal (H5::DataSet &SDS, std::unique_ptr< std::vector< Type > > &data, const std::vector< size_t > &offsets, const std::vector< size_t > &slabsizes) const
 
void loadEventIndex (H5::Group &event_group, std::unique_ptr< std::vector< uint64_t > > &data) const
 

Private Attributes

const bool m_is_time_filtered
 
const std::vector< PulseROIm_pulse_indices
 
std::vector< std::pair< int, PulseROI > > m_target_to_pulse_indices
 

Detailed Description

Definition at line 28 of file NexusLoader.h.

Constructor & Destructor Documentation

◆ NexusLoader()

Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::NexusLoader ( const bool  is_time_filtered,
const std::vector< PulseROI > &  pulse_indices,
const std::vector< std::pair< int, PulseROI > > &  target_to_pulse_indices = {} 
)

Definition at line 16 of file NexusLoader.cpp.

◆ ~NexusLoader()

Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::~NexusLoader ( )
virtualdefault

Member Function Documentation

◆ getEventIndexRanges()

std::stack< EventROI > Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::getEventIndexRanges ( H5::Group &  event_group,
const uint64_t  number_events,
std::unique_ptr< std::vector< uint64_t > > *  event_index = nullptr 
) const
virtual

◆ getEventIndexSplitRanges()

std::stack< std::pair< int, EventROI > > Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::getEventIndexSplitRanges ( H5::Group &  event_group,
const uint64_t  number_events 
)

◆ loadData() [1/2]

void Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::loadData ( H5::DataSet &  SDS,
std::unique_ptr< std::vector< float > > &  data,
const std::vector< size_t > &  offsets,
const std::vector< size_t > &  slabsizes 
)
virtual

Definition at line 26 of file NexusLoader.cpp.

References loadDataInternal().

◆ loadData() [2/2]

void Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::loadData ( H5::DataSet &  SDS,
std::unique_ptr< std::vector< uint32_t > > &  data,
const std::vector< size_t > &  offsets,
const std::vector< size_t > &  slabsizes 
)
virtual

◆ loadDataInternal()

template<typename Type >
template void Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::loadDataInternal< uint64_t > ( H5::DataSet &  SDS,
std::unique_ptr< std::vector< Type > > &  data,
const std::vector< size_t > &  offsets,
const std::vector< size_t > &  slabsizes 
) const
private

Definition at line 32 of file NexusLoader.cpp.

Referenced by loadData(), loadData(), and loadEventIndex().

◆ loadEventIndex()

void Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::loadEventIndex ( H5::Group &  event_group,
std::unique_ptr< std::vector< uint64_t > > &  data 
) const
private

Member Data Documentation

◆ m_is_time_filtered

const bool Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::m_is_time_filtered
private

Definition at line 47 of file NexusLoader.h.

Referenced by getEventIndexRanges().

◆ m_pulse_indices

const std::vector<PulseROI> Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::m_pulse_indices
private

Definition at line 48 of file NexusLoader.h.

Referenced by getEventIndexRanges().

◆ m_target_to_pulse_indices

std::vector<std::pair<int, PulseROI> > Mantid::DataHandling::AlignAndFocusPowderSlim::NexusLoader::m_target_to_pulse_indices
private

Definition at line 49 of file NexusLoader.h.

Referenced by getEventIndexSplitRanges().


The documentation for this class was generated from the following files: