Mantid
Loading...
Searching...
No Matches
Framework
DataHandling
inc
MantidDataHandling
AlignAndFocusPowderSlim
ProcessBankTask.h
Go to the documentation of this file.
1
// Mantid Repository : https://github.com/mantidproject/mantid
2
//
3
// Copyright © 2025 ISIS Rutherford Appleton Laboratory UKRI,
4
// NScD Oak Ridge National Laboratory, European Spallation Source,
5
// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6
// SPDX - License - Identifier: GPL - 3.0 +
7
8
#pragma once
9
10
#include "
MantidAPI/MatrixWorkspace.h
"
11
#include "
MantidAPI/Progress.h
"
12
#include "
MantidDataHandling/AlignAndFocusPowderSlim/BankCalibration.h
"
13
#include "
MantidDataHandling/AlignAndFocusPowderSlim/NexusLoader.h
"
14
#include "
MantidDataHandling/AlignAndFocusPowderSlim/ProcessBankTaskBase.h
"
15
#include "
MantidDataHandling/AlignAndFocusPowderSlim/SpectraProcessingData.h
"
16
#include "
MantidGeometry/IDTypes.h
"
17
#include <H5Cpp.h>
18
#include <map>
19
#include <set>
20
#include <tbb/tbb.h>
21
#include <vector>
22
23
namespace
Mantid::DataHandling::AlignAndFocusPowderSlim
{
24
25
class
ProcessBankTask
:
public
ProcessBankTaskBase
{
26
public
:
27
ProcessBankTask
(std::vector<std::string> &bankEntryNames, H5::H5File &h5file, std::shared_ptr<NexusLoader> loader,
28
SpectraProcessingData
&processingData,
const
BankCalibrationFactory
&calibFactory,
29
const
size_t
events_per_chunk,
const
size_t
grainsize_event,
30
std::shared_ptr<API::Progress> &progress);
31
32
void
operator()
(
const
tbb::blocked_range<size_t> &range)
const
;
33
34
private
:
35
H5::H5File
m_h5file
;
36
SpectraProcessingData
&
m_processingData
;
38
const
size_t
m_events_per_chunk
;
40
const
size_t
m_grainsize_event
;
41
std::shared_ptr<API::Progress>
m_progress
;
42
};
43
}
// namespace Mantid::DataHandling::AlignAndFocusPowderSlim
BankCalibration.h
IDTypes.h
MatrixWorkspace.h
NexusLoader.h
ProcessBankTaskBase.h
Progress.h
SpectraProcessingData.h
Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibrationFactory
Definition
BankCalibration.h:49
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTaskBase
Definition
ProcessBankTaskBase.h:16
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask
Definition
ProcessBankTask.h:25
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::m_grainsize_event
const size_t m_grainsize_event
number of events to histogram in a single thread
Definition
ProcessBankTask.h:40
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::m_events_per_chunk
const size_t m_events_per_chunk
number of events to read from disk at one time
Definition
ProcessBankTask.h:38
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::m_processingData
SpectraProcessingData & m_processingData
Definition
ProcessBankTask.h:36
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::operator()
void operator()(const tbb::blocked_range< size_t > &range) const
Definition
ProcessBankTask.cpp:32
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::m_h5file
H5::H5File m_h5file
Definition
ProcessBankTask.h:35
Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessBankTask::m_progress
std::shared_ptr< API::Progress > m_progress
Definition
ProcessBankTask.h:41
Mantid::DataHandling::AlignAndFocusPowderSlim
Definition
AlignAndFocusPowderSlim.h:20
Mantid::DataHandling::AlignAndFocusPowderSlim::SpectraProcessingData
Definition
SpectraProcessingData.h:13
Generated by
1.9.8