27namespace DataHandling {
66 const std::string
name()
const override {
return "LoadHFIRSANS"; }
68 const std::string
summary()
const override {
69 return "Loads a SANS data file produce by the HFIR instruments at ORNL. "
70 "The instrument geometry is also loaded. The center of the detector "
71 "is placed at (0,0,D), where D is the sample-to-detector distance.";
75 int version()
const override {
return 1; }
76 const std::vector<std::string>
seeAlso()
const override {
return {
"LoadSpiceAscii",
"LoadSpiceXML2DDet"}; }
78 const std::string
category()
const override {
return "DataHandling\\Text;SANS\\DataHandling"; }
91 void setInputFileAsHandler();
92 void setSansSpiceXmlFormatVersion();
96 std::pair<int, int> parseDetectorDimensions(
const std::string &dims_str);
97 std::vector<int> readData(
const std::string &dataXpath =
"//Data");
98 void permuteTubes(std::vector<int> &data);
100 void storeValue(
int specID,
double value,
double error,
double wavelength,
double dwavelength);
102 template <
class T>
void addRunProperty(
const std::string &
name,
const T &
value,
const std::string &units =
"");
103 template <
class T>
void addRunTimeSeriesProperty(
const std::string &
name,
const T &
value);
104 void setBeamTrapRunProperty();
105 void storeMetaDataIntoWS();
106 void runLoadInstrument();
107 void rotateDetector();
108 void setDetectorDistance();
110 std::string getInstrumentStringParameter(
const std::string ¶meter);
111 double getInstrumentDoubleParameter(
const std::string ¶meter);
112 double getSourceToSampleDistance();
113 void setBeamDiameter();
117 static const int m_nMonitors = 2;
119 const std::vector<std::string> m_tags_to_ignore{
"Detector",
"DetectorWing"};
double value
The value of the point.
Defines an interface to an algorithm that loads a file so that it can take part in the automatic sele...
This algorithm loads a SPICE2D file for HFIR SANS into a workspace.
const std::string summary() const override
Summary of algorithms purpose.
const std::string category() const override
Algorithm's category for identification overriding a virtual method.
Mantid::Types::Core::DateAndTime m_startTime
DataObjects::Workspace2D_sptr m_workspace
double m_sansSpiceXmlFormatVersion
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
Mantid::DataHandling::XmlHandler m_xmlHandler
int getNumberOfMonitors() const
std::map< std::string, std::string > m_metadata
const std::string name() const override
Algorithm's name for identification overriding a virtual method.
double m_sampleDetectorDistance
int version() const override
Algorithm's version for identification overriding a virtual method.
Mantid::Types::Core::DateAndTime m_endTime
Defines a wrapper around an open file.
std::shared_ptr< T > createWorkspace(InitArgs... args)
std::shared_ptr< Workspace2D > Workspace2D_sptr
shared pointer to Mantid::DataObjects::Workspace2D
Helper class which provides the Collimation Length for SANS instruments.