36 #include "cxResourceFilterExport.h" 45 #define FilterService_iid "cx::Filter" 51 typedef boost::shared_ptr<class Filter>
FilterPtr;
71 class cxResourceFilter_EXPORT
Filter :
public QObject
82 virtual QString getUid()
const = 0;
90 virtual void initialize(QDomElement root, QString uid =
"") = 0;
94 virtual QString getType()
const = 0;
98 virtual QString getName()
const = 0;
102 virtual QString getHelp()
const = 0;
107 virtual std::vector<PropertyPtr> getOptions() = 0;
111 virtual std::vector<SelectDataStringPropertyBasePtr> getInputTypes() = 0;
115 virtual std::vector<SelectDataStringPropertyBasePtr> getOutputTypes() = 0;
120 virtual bool hasPresets() = 0;
129 virtual QDomElement generatePresetFromCurrentlySetOptions(QString name) = 0;
137 virtual void setActive(
bool on) = 0;
146 virtual bool preProcess() = 0;
154 virtual bool execute() = 0;
165 virtual bool postProcess() = 0;
171 virtual void requestSetPresetSlot(QString name) = 0;
#define FilterService_iid
boost::shared_ptr< class Filter > FilterPtr
boost::shared_ptr< class SelectDataStringPropertyBase > SelectDataStringPropertyBasePtr
boost::shared_ptr< class Presets > PresetsPtr
Namespace for all CustusX production code.