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

ProcessBankCompressed : TODO: DESCRIPTION. More...

#include <ProcessBankCompressed.h>

Inheritance diagram for Mantid::DataHandling::ProcessBankCompressed:
Mantid::Kernel::Task

Public Member Functions

void addEvent (const size_t period_index, const size_t event_index)
 
void createWeightedEvents (const size_t period_index, const detid_t detid, std::vector< Mantid::DataObjects::WeightedEventNoTime > *raw_events)
 
 ProcessBankCompressed (DefaultEventLoader &m_loader, const std::string &entry_name, Mantid::API::Progress *prog, std::shared_ptr< std::vector< uint32_t > > event_detid, std::shared_ptr< std::vector< float > > event_tof, size_t startAt, std::shared_ptr< std::vector< uint64_t > > event_index, std::shared_ptr< BankPulseTimes > bankPulseTimes, detid_t min_detid, detid_t max_detid, std::shared_ptr< std::vector< double > > histogram_bin_edges, const double divisor)
 
void run () override
 Main method that performs the work for the task.
 
double totalWeight () const
 method only intended for testing
 
- Public Member Functions inherited from Mantid::Kernel::Task
virtual double cost ()
 What is the computational cost of this task?
 
std::shared_ptr< std::mutex > getMutex ()
 Get the mutex object for this Task.
 
void setMutex (const std::shared_ptr< std::mutex > &mutex)
 Set the mutex object for this Task.
 
void setMutexObject (void *object)
 Use an arbitrary pointer to lock (mutex) the execution of this task.
 
 Task ()
 Default constructor.
 
 Task (double cost)
 Constructor with cost.
 
virtual ~Task ()=default
 Destructor.
 

Private Member Functions

void addToEventLists ()
 
void collectEvents ()
 
void createAccumulators (const bool precount)
 
 ProcessBankCompressed ()
 

Private Attributes

std::shared_ptr< BankPulseTimesm_bankPulseTimes
 Pulse times for this bank.
 
const detid_t m_detid_max
 
const detid_t m_detid_min
 
const std::string m_entry_name
 
std::shared_ptr< std::vector< uint32_t > > m_event_detid
 event pixel ID array
 
std::shared_ptr< std::vector< uint64_t > > m_event_index
 vector of event index (length of # of pulses)
 
std::shared_ptr< std::vector< float > > m_event_tof
 event TOF array
 
std::unique_ptr< CompressEventAccumulatorFactorym_factory
 factory for creating accumulators
 
const size_t m_firstEventIndex
 index of the first event from event_index
 
DefaultEventLoaderm_loader
 Algorithm being run.
 
API::Progressm_prog
 Progress reporting.
 
std::vector< DataObjects::EventSortTypem_sorting
 
std::vector< std::vector< std::unique_ptr< DataHandling::CompressEventAccumulator > > > m_spectra_accum
 Objects holding individual spectra.
 
const float m_tof_max
 
const float m_tof_min
 

Additional Inherited Members

- Protected Attributes inherited from Mantid::Kernel::Task
double m_cost
 Cached computational cost for the thread.
 
std::shared_ptr< std::mutex > m_mutex
 Mutex associated with this task (can be NULL)
 

Detailed Description

ProcessBankCompressed : TODO: DESCRIPTION.

Definition at line 27 of file ProcessBankCompressed.h.

Constructor & Destructor Documentation

◆ ProcessBankCompressed() [1/2]

Mantid::DataHandling::ProcessBankCompressed::ProcessBankCompressed ( DefaultEventLoader m_loader,
const std::string &  entry_name,
Mantid::API::Progress prog,
std::shared_ptr< std::vector< uint32_t > >  event_detid,
std::shared_ptr< std::vector< float > >  event_tof,
size_t  startAt,
std::shared_ptr< std::vector< uint64_t > >  event_index,
std::shared_ptr< BankPulseTimes bankPulseTimes,
detid_t  min_detid,
detid_t  max_detid,
std::shared_ptr< std::vector< double > >  histogram_bin_edges,
const double  divisor 
)

◆ ProcessBankCompressed() [2/2]

Mantid::DataHandling::ProcessBankCompressed::ProcessBankCompressed ( )
private

Member Function Documentation

◆ addEvent()

void Mantid::DataHandling::ProcessBankCompressed::addEvent ( const size_t  period_index,
const size_t  event_index 
)

◆ addToEventLists()

void Mantid::DataHandling::ProcessBankCompressed::addToEventLists ( )
private

◆ collectEvents()

void Mantid::DataHandling::ProcessBankCompressed::collectEvents ( )
private

◆ createAccumulators()

void Mantid::DataHandling::ProcessBankCompressed::createAccumulators ( const bool  precount)
private

◆ createWeightedEvents()

void Mantid::DataHandling::ProcessBankCompressed::createWeightedEvents ( const size_t  period_index,
const detid_t  detid,
std::vector< Mantid::DataObjects::WeightedEventNoTime > *  raw_events 
)

Definition at line 155 of file ProcessBankCompressed.cpp.

References m_detid_max, m_detid_min, and m_spectra_accum.

◆ run()

void Mantid::DataHandling::ProcessBankCompressed::run ( )
overridevirtual

◆ totalWeight()

double Mantid::DataHandling::ProcessBankCompressed::totalWeight ( ) const

method only intended for testing

Definition at line 267 of file ProcessBankCompressed.cpp.

References m_spectra_accum.

Member Data Documentation

◆ m_bankPulseTimes

std::shared_ptr<BankPulseTimes> Mantid::DataHandling::ProcessBankCompressed::m_bankPulseTimes
private

Pulse times for this bank.

Definition at line 71 of file ProcessBankCompressed.h.

Referenced by collectEvents().

◆ m_detid_max

const detid_t Mantid::DataHandling::ProcessBankCompressed::m_detid_max
private

◆ m_detid_min

const detid_t Mantid::DataHandling::ProcessBankCompressed::m_detid_min
private

◆ m_entry_name

const std::string Mantid::DataHandling::ProcessBankCompressed::m_entry_name
private

Definition at line 55 of file ProcessBankCompressed.h.

Referenced by addToEventLists(), collectEvents(), and run().

◆ m_event_detid

std::shared_ptr<std::vector<uint32_t> > Mantid::DataHandling::ProcessBankCompressed::m_event_detid
private

event pixel ID array

Definition at line 63 of file ProcessBankCompressed.h.

Referenced by addEvent(), collectEvents(), createAccumulators(), and ProcessBankCompressed().

◆ m_event_index

std::shared_ptr<std::vector<uint64_t> > Mantid::DataHandling::ProcessBankCompressed::m_event_index
private

vector of event index (length of # of pulses)

Definition at line 69 of file ProcessBankCompressed.h.

Referenced by collectEvents().

◆ m_event_tof

std::shared_ptr<std::vector<float> > Mantid::DataHandling::ProcessBankCompressed::m_event_tof
private

event TOF array

Definition at line 65 of file ProcessBankCompressed.h.

Referenced by addEvent(), and collectEvents().

◆ m_factory

std::unique_ptr<CompressEventAccumulatorFactory> Mantid::DataHandling::ProcessBankCompressed::m_factory
private

factory for creating accumulators

Definition at line 60 of file ProcessBankCompressed.h.

Referenced by createAccumulators(), and ProcessBankCompressed().

◆ m_firstEventIndex

const size_t Mantid::DataHandling::ProcessBankCompressed::m_firstEventIndex
private

index of the first event from event_index

Definition at line 67 of file ProcessBankCompressed.h.

Referenced by collectEvents().

◆ m_loader

DefaultEventLoader& Mantid::DataHandling::ProcessBankCompressed::m_loader
private

Algorithm being run.

Definition at line 54 of file ProcessBankCompressed.h.

Referenced by addToEventLists(), collectEvents(), createAccumulators(), and run().

◆ m_prog

API::Progress* Mantid::DataHandling::ProcessBankCompressed::m_prog
private

Progress reporting.

Definition at line 57 of file ProcessBankCompressed.h.

Referenced by run().

◆ m_sorting

std::vector<DataObjects::EventSortType> Mantid::DataHandling::ProcessBankCompressed::m_sorting
private

Definition at line 81 of file ProcessBankCompressed.h.

Referenced by addToEventLists(), ProcessBankCompressed(), and run().

◆ m_spectra_accum

std::vector<std::vector<std::unique_ptr<DataHandling::CompressEventAccumulator> > > Mantid::DataHandling::ProcessBankCompressed::m_spectra_accum
private

Objects holding individual spectra.

This is accessed as [periodIndex][detidIndex]

Definition at line 76 of file ProcessBankCompressed.h.

Referenced by addEvent(), addToEventLists(), createAccumulators(), createWeightedEvents(), and totalWeight().

◆ m_tof_max

const float Mantid::DataHandling::ProcessBankCompressed::m_tof_max
private

Definition at line 90 of file ProcessBankCompressed.h.

Referenced by addEvent().

◆ m_tof_min

const float Mantid::DataHandling::ProcessBankCompressed::m_tof_min
private

Definition at line 88 of file ProcessBankCompressed.h.

Referenced by addEvent().


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