13#include "MantidDataHandling/DllConfig.h"
19#include <nexus/NeXusFile.hpp>
20#include <nexus/NeXusException.hpp>
24namespace DataHandling {
40 const std::string
name()
const override {
return "SaveToSNSHistogramNexus"; };
42 const std::string
summary()
const override {
43 return "Saves a workspace into SNS histogrammed NeXus format, using an "
44 "original file as the starting point. This only works for "
45 "instruments with Rectangular Detectors.";
49 int version()
const override {
return 1; };
50 const std::vector<std::string>
seeAlso()
const override {
return {
"SaveNexus"}; }
52 const std::string
category()
const override {
return "DataHandling\\Nexus"; }
85 char current_path[1024];
89 int add_path(
const char *path);
90 int remove_path(
const char *path);
92 int WriteGroup(
int is_definition);
93 int WriteAttributes(
int is_definition);
94 int copy_file(
const char *inFile,
int nx_read_access,
const char *outFile,
int nx_write_access);
97 const char *field_name,
const char *errors_field_name,
bool doErrors,
bool doBoth,
98 int is_definition,
const std::string &bank);
100 int WriteDataGroup(
const std::string &bank,
int is_definition);
Base class from which all concrete algorithm classes should be derived.
Save a Workspace2D or an EventWorkspace into a NeXus file whose format corresponds to that expected a...
API::MatrixWorkspace_const_sptr m_inputWorkspace
Pointer to the local workspace.
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
std::string m_outputFilename
The name and path of the output file.
const std::string name() const override
Algorithm's name for identification overriding a virtual method.
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.
std::string m_inputFilename
The name and path of the input file.
int version() const override
Algorithm's version for identification overriding a virtual method.
std::unique_ptr< API::Progress > m_progress
std::shared_ptr< const MatrixWorkspace > MatrixWorkspace_const_sptr
shared pointer to the matrix workspace base class (const version)
std::shared_ptr< const RectangularDetector > RectangularDetector_const_sptr
Helper class which provides the Collimation Length for SANS instruments.
std::unordered_map< detid_t, size_t > detid2index_map
Map with key = detector ID, value = workspace index.