40 "An output workspace.");
47 if (labelsFredrikze.empty() && labelsWildes.empty()) {
48 throw std::invalid_argument(
"At least one of the efficiencies must be set.");
51 if (!labelsFredrikze.empty() && !labelsWildes.empty()) {
52 throw std::invalid_argument(
"Efficiencies belonging to different methods cannot mix.");
56 if (!labelsFredrikze.empty()) {
67std::vector<std::string>
69 std::vector<std::string> outputLabels;
70 std::copy_if(labels.cbegin(), labels.cend(), std::back_inserter(outputLabels),
71 [
this](
const std::string &label) { return !isDefault(label); });
void declareProperty(std::unique_ptr< Kernel::Property > p, const std::string &doc="") override
Add a property to the list of managed properties.
A property class for workspaces.
static std::string const Rho
static std::string const Ap
void exec() override
Virtual method - must be overridden by concrete algorithm.
const std::string category() const override
function to return a category of the algorithm.
static std::string const P2
static std::string const Pp
Names of the efficiency properties.
static std::string const F1
std::vector< std::string > getNonDefaultProperties(std::vector< std::string > const &props) const
Get names of non-default properties out of a list of names.
virtual API::MatrixWorkspace_sptr createEfficiencies(std::vector< std::string > const &labels)=0
Create the output workspace with efficiencies.
static std::string const Alpha
void initOutputWorkspace()
static std::string const F2
static std::string const P1
IPropertyManager * setProperty(const std::string &name, const T &value)
Templated method to set the value of a PropertyWithValue.
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
@ Output
An output workspace.