Mantid
Loading...
Searching...
No Matches
Framework
DataHandling
inc
MantidDataHandling
LoadILLPolarizedDiffraction.h
Go to the documentation of this file.
1
// Mantid Repository : https://github.com/mantidproject/mantid
2
//
3
// Copyright © 2017 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
#pragma once
8
9
#include "
MantidAPI/IFileLoader.h
"
10
#include "
MantidAPI/WorkspaceGroup_fwd.h
"
11
#include "MantidDataHandling/DllConfig.h"
12
#include "
MantidKernel/DateAndTime.h
"
13
#include "
MantidNexus/NexusClasses_fwd.h
"
14
#include "
MantidNexus/NexusDescriptor.h
"
15
16
#include <utility>
17
18
namespace
Mantid
{
19
namespace
DataHandling {
20
26
class
MANTID_DATAHANDLING_DLL
LoadILLPolarizedDiffraction
:
public
API::IFileLoader
<Nexus::NexusDescriptor> {
27
public
:
28
const
std::string
name
()
const override
;
29
int
version()
const override
;
30
const
std::vector<std::string>
seeAlso
()
const override
{
return
{
"LoadNexus"
}; }
31
const
std::string category()
const override
;
32
const
std::string summary()
const override
;
33
int
confidence(
Nexus::NexusDescriptor
&)
const override
;
34
LoadILLPolarizedDiffraction
();
35
36
private
:
37
void
init()
override
;
38
std::map<std::string, std::string> validateInputs()
override
;
39
void
exec()
override
;
40
41
API::MatrixWorkspace_sptr
initStaticWorkspace(
const
Nexus::NXEntry
&);
42
43
void
loadData();
44
void
loadMetaData();
45
API::WorkspaceGroup_sptr
sortPolarisations();
46
std::vector<double> loadTwoThetaDetectors(
const
API::MatrixWorkspace_sptr
&,
const
Nexus::NXEntry
&,
const
int
);
47
std::vector<double> loadBankParameters(
const
API::MatrixWorkspace_sptr
&,
const
int
);
48
void
moveTwoTheta(
const
Nexus::NXEntry
&,
const
API::MatrixWorkspace_sptr
&);
49
std::vector<double> prepareAxes(
const
Nexus::NXEntry
&);
50
51
API::MatrixWorkspace_sptr
convertSpectrumAxis(
API::MatrixWorkspace_sptr
);
52
API::MatrixWorkspace_sptr
transposeMonochromatic(
const
API::MatrixWorkspace_sptr
&);
53
54
size_t
m_numberOfChannels
;
// number of channels data
55
size_t
m_acquisitionMode
;
// acquisition mode of measurement, 0 -
56
// monochromatic, 1 - TOF
57
58
std::string
m_instName
;
59
std::string
m_fileName
;
60
61
double
m_wavelength
;
// wavelength value is read from the YIG IPF
62
63
std::vector<API::MatrixWorkspace_sptr>
m_outputWorkspaceGroup
;
64
};
65
66
}
// namespace DataHandling
67
}
// namespace Mantid
name
std::string name
Definition
Run.cpp:60
IFileLoader.h
DateAndTime.h
NexusClasses_fwd.h
NexusDescriptor.h
WorkspaceGroup_fwd.h
Mantid::API::IFileLoader
Defines an interface to an algorithm that loads a file so that it can take part in the automatic sele...
Definition
IFileLoader.h:19
Mantid::DataHandling::LoadILLPolarizedDiffraction
LoadILLPolarizedDiffraction : Loads ILL polarized diffraction nexus files from instrument D7.
Definition
LoadILLPolarizedDiffraction.h:26
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_acquisitionMode
size_t m_acquisitionMode
Definition
LoadILLPolarizedDiffraction.h:55
Mantid::DataHandling::LoadILLPolarizedDiffraction::seeAlso
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
Definition
LoadILLPolarizedDiffraction.h:30
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_instName
std::string m_instName
instrument name to load the IDF
Definition
LoadILLPolarizedDiffraction.h:58
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_fileName
std::string m_fileName
file name to load
Definition
LoadILLPolarizedDiffraction.h:59
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_outputWorkspaceGroup
std::vector< API::MatrixWorkspace_sptr > m_outputWorkspaceGroup
vector with output workspaces
Definition
LoadILLPolarizedDiffraction.h:63
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_numberOfChannels
size_t m_numberOfChannels
Definition
LoadILLPolarizedDiffraction.h:54
Mantid::DataHandling::LoadILLPolarizedDiffraction::m_wavelength
double m_wavelength
Definition
LoadILLPolarizedDiffraction.h:61
Mantid::Nexus::NXEntry
Implements NXentry Nexus class.
Definition
NexusClasses.h:667
Mantid::Nexus::NexusDescriptor
Definition
NexusDescriptor.h:23
Mantid::API::WorkspaceGroup_sptr
std::shared_ptr< WorkspaceGroup > WorkspaceGroup_sptr
shared pointer to Mantid::API::WorkspaceGroup
Definition
WorkspaceGroup_fwd.h:20
Mantid::API::MatrixWorkspace_sptr
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
Definition
MatrixWorkspace.h:585
Mantid
Helper class which provides the Collimation Length for SANS instruments.
Definition
AbsorptionCorrection.h:18
Generated by
1.9.8