9#include "MantidAPI/DllConfig.h"
27 virtual const std::string
id()
const {
return "IMaskWorkspace"; }
31 virtual bool isMasked(
const detid_t detectorID)
const = 0;
33 virtual bool isMasked(
const std::set<detid_t> &detectorIDs)
const = 0;
35 virtual void setMasked(
const detid_t detectorID,
const bool mask =
true) = 0;
37 virtual void setMasked(
const std::set<detid_t> &detectorIDs,
const bool mask =
true) = 0;
39 std::unique_ptr<IMaskWorkspace>
clone()
const {
return std::unique_ptr<IMaskWorkspace>(doInterfaceClone()); }
This class provides an interface to a MaskWorkspace.
virtual const std::string id() const
Return the workspace typeID.
virtual IMaskWorkspace * doInterfaceClone() const =0
returns a clone of the workspace as the interface
virtual void setMasked(const detid_t detectorID, const bool mask=true)=0
Set / remove mask of a detector.
virtual bool isMasked(const detid_t detectorID) const =0
Check if a detector is masked.
virtual std::size_t getNumberMasked() const =0
Total number of masked pixels.
IMaskWorkspace & operator=(const IMaskWorkspace &)=delete
virtual ~IMaskWorkspace()=default
virtual void setMasked(const std::set< detid_t > &detectorIDs, const bool mask=true)=0
Set / remove masks of all detectors in a set.
IMaskWorkspace(const IMaskWorkspace &other)
Protected copy constructor. May be used by childs for cloning.
virtual bool isMasked(const std::set< detid_t > &detectorIDs) const =0
Check if all detectors in a set are masked.
std::unique_ptr< IMaskWorkspace > clone() const
Returns a clone of the workspace.
std::shared_ptr< const IMaskWorkspace > IMaskWorkspace_const_sptr
shared pointer to the matrix workspace base class (const version)
std::shared_ptr< IMaskWorkspace > IMaskWorkspace_sptr
shared pointer to the matrix workspace base class
Helper class which provides the Collimation Length for SANS instruments.