diff --git a/Code/Mantid/Framework/Algorithms/CMakeLists.txt b/Code/Mantid/Framework/Algorithms/CMakeLists.txt index 5e90d8ae502d..bea0d1e11a91 100644 --- a/Code/Mantid/Framework/Algorithms/CMakeLists.txt +++ b/Code/Mantid/Framework/Algorithms/CMakeLists.txt @@ -170,6 +170,7 @@ set ( SRC_FILES src/Rebunch.cpp src/RecordPythonScript.cpp src/ReflectometryReductionOne.cpp + src/ReflectometryWorkflowBase.cpp src/Regroup.cpp src/RemoveBins.cpp src/RemoveExpDecay.cpp @@ -394,6 +395,7 @@ set ( INC_FILES inc/MantidAlgorithms/Rebunch.h inc/MantidAlgorithms/RecordPythonScript.h inc/MantidAlgorithms/ReflectometryReductionOne.h + inc/MantidAlgorithms/ReflectometryWorkflowBase.h inc/MantidAlgorithms/Regroup.h inc/MantidAlgorithms/RemoveBins.h inc/MantidAlgorithms/RemoveExpDecay.h diff --git a/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/CreateTransmissionWorkspace.h b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/CreateTransmissionWorkspace.h index 598a9dabf694..ae7860037086 100644 --- a/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/CreateTransmissionWorkspace.h +++ b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/CreateTransmissionWorkspace.h @@ -2,7 +2,7 @@ #define MANTID_ALGORITHMS_CREATETRANSMISSIONWORKSPACE_H_ #include "MantidKernel/System.h" -#include "MantidAPI/DataProcessorAlgorithm.h" +#include "MantidAlgorithms/ReflectometryWorkflowBase.h" namespace Mantid { @@ -31,7 +31,7 @@ namespace Algorithms File change history is stored at: Code Documentation is available at: */ - class DLLExport CreateTransmissionWorkspace : public API::DataProcessorAlgorithm + class DLLExport CreateTransmissionWorkspace : public ReflectometryWorkflowBase { public: CreateTransmissionWorkspace(); diff --git a/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryReductionOne.h b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryReductionOne.h index 22d53d41c4f9..8948fa9948a3 100644 --- a/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryReductionOne.h +++ b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryReductionOne.h @@ -2,11 +2,11 @@ #define MANTID_ALGORITHMS_REFLECTOMETRYREDUCTIONONE_H_ #include "MantidKernel/System.h" -#include "MantidAPI/DataProcessorAlgorithm.h" #include "MantidAPI/MatrixWorkspace.h" #include "MantidGeometry/Instrument.h" #include "MantidGeometry/IComponent.h" #include "MantidGeometry/IDetector.h" +#include "MantidAlgorithms/ReflectometryWorkflowBase.h" #include #include #include @@ -38,7 +38,7 @@ namespace Mantid File change history is stored at: Code Documentation is available at: */ - class DLLExport ReflectometryReductionOne: public API::DataProcessorAlgorithm + class DLLExport ReflectometryReductionOne: public ReflectometryWorkflowBase { public: diff --git a/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryWorkflowBase.h b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryWorkflowBase.h new file mode 100644 index 000000000000..cde2f802e3a1 --- /dev/null +++ b/Code/Mantid/Framework/Algorithms/inc/MantidAlgorithms/ReflectometryWorkflowBase.h @@ -0,0 +1,51 @@ +#ifndef MANTID_ALGORITHMS_REFLECTOMETRYWORKFLOWBASE_H_ +#define MANTID_ALGORITHMS_REFLECTOMETRYWORKFLOWBASE_H_ + +#include "MantidKernel/System.h" +#include "MantidAPI/DataProcessorAlgorithm.h" + +namespace Mantid +{ +namespace Algorithms +{ + + /** ReflectometryWorkflowBase : Abstract workflow algortithm base class containing common implementation functionality usable + * by concrete reflectometry workflow algorithms. + + Copyright © 2013 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory + + This file is part of Mantid. + + Mantid is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + Mantid is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + + File change history is stored at: + Code Documentation is available at: + */ + class DLLExport ReflectometryWorkflowBase : public API::DataProcessorAlgorithm + { + public: + ReflectometryWorkflowBase(); + virtual ~ReflectometryWorkflowBase(); + + + //protected: + + + }; + + +} // namespace Algorithms +} // namespace Mantid + +#endif /* MANTID_ALGORITHMS_REFLECTOMETRYWORKFLOWBASE_H_ */ diff --git a/Code/Mantid/Framework/Algorithms/src/ReflectometryWorkflowBase.cpp b/Code/Mantid/Framework/Algorithms/src/ReflectometryWorkflowBase.cpp new file mode 100644 index 000000000000..8ddee29bd5bc --- /dev/null +++ b/Code/Mantid/Framework/Algorithms/src/ReflectometryWorkflowBase.cpp @@ -0,0 +1,30 @@ +/*WIKI* +TODO: Enter a full wiki-markup description of your algorithm here. You can then use the Build/wiki_maker.py script to generate your full wiki page. +*WIKI*/ + +#include "MantidAlgorithms/ReflectometryWorkflowBase.h" + +namespace Mantid +{ +namespace Algorithms +{ + + //---------------------------------------------------------------------------------------------- + /** Constructor + */ + ReflectometryWorkflowBase::ReflectometryWorkflowBase() + { + } + + //---------------------------------------------------------------------------------------------- + /** Destructor + */ + ReflectometryWorkflowBase::~ReflectometryWorkflowBase() + { + } + + + + +} // namespace Algorithms +} // namespace Mantid