3Depict
|
Abstract base filter class. More...
#include <filter.h>
Public Member Functions | |
Filter () | |
virtual | ~Filter () |
virtual Filter * | cloneUncached () const =0 |
Duplicate filter contents, excluding cache. More... | |
virtual unsigned int | refresh (const std::vector< const FilterStreamData *> &dataIn, std::vector< const FilterStreamData *> &dataOut, ProgressData &progress)=0 |
Apply filter to new data, updating cache as needed. Vector of returned pointers must be deleted manually, first checking ->cached. More... | |
virtual void | clearCache () |
Erase cache. More... | |
virtual void | clearDevices () |
Erase any active devices. More... | |
virtual size_t | numBytesForCache (size_t nObjects) const =0 |
Get (approx) number of bytes required for cache. More... | |
virtual unsigned int | getType () const =0 |
return type ID More... | |
virtual std::string | typeString () const =0 |
Return filter type as std::string. More... | |
virtual void | getProperties (FilterPropGroup &propertyList) const =0 |
Get the properties of the filter, in key-value form. First vector is for each output. More... | |
virtual bool | setProperty (unsigned int key, const std::string &value, bool &needUpdate)=0 |
std::string | getErrString (unsigned int code) const |
Get the human readable error string associated with a particular error code during refresh(...). Do not override this for specific filter errors. Override getSpecificErrString. More... | |
virtual bool | writeState (std::ostream &f, unsigned int format, unsigned int depth=0) const =0 |
Dump state to output stream, using specified format. More... | |
virtual bool | readState (xmlNodePtr &n, const std::string &packDir="")=0 |
Read state from XML stream, using xml format. More... | |
virtual unsigned int | getRefreshBlockMask () const =0 |
Get the bitmask encoded list of filterStreams that this filter blocks from propagation. More... | |
virtual unsigned int | getRefreshEmitMask () const =0 |
Get the bitmask encoded list of filterstreams that this filter emits from ::refresh. More... | |
virtual unsigned int | getRefreshUseMask () const =0 |
Mask of filter streams that will be examined by the filter in its computation. More... | |
std::string | trueName () const |
Return the unique name for a given filter – DO NOT TRANSLATE. More... | |
virtual void | initFilter (const std::vector< const FilterStreamData *> &dataIn, std::vector< const FilterStreamData *> &dataOut) |
Initialise the filter's internal state using limited filter stream data propagation. More... | |
virtual void | getStateOverrides (std::vector< std::string > &overrides) const |
Return the XML elements that refer to external entities (i.e. files) which do not move with the XML files. At this time, only files are supported. These will be looked for on the filesystem and moved as needed. More... | |
void | setCaching (bool enableCache) |
Enable/disable caching for this filter. More... | |
bool | haveCache () const |
Have cached output data? More... | |
virtual std::string | getUserString () const |
Return a user-specified string, or just the typestring if user set string not active. More... | |
virtual void | setUserString (const std::string &str) |
Set a user-specified string return value is. More... | |
virtual bool | writePackageState (std::ostream &f, unsigned int format, const std::vector< std::string > &valueOverrides, unsigned int depth=0) const |
Modified version of writeState for packaging. By default simply calls writeState. More... | |
void | getSelectionDevices (std::vector< SelectionDevice *> &devices) const |
Get the selection devices for this filter. MUST be called after refresh() More... | |
void | updateOutputInfo (const std::vector< const FilterStreamData *> &dataOut) |
Update the output statistics for this filter (num items of streams of each type output) More... | |
virtual void | setPropFromBinding (const SelectionBinding &b)=0 |
Set the binding value for a float. More... | |
virtual void | setPropFromRegion (unsigned int method, unsigned int regionID, float newPos) |
Set a region update. More... | |
virtual bool | canBeHazardous () const |
Can this filter perform actions that are potentially a security concern? More... | |
unsigned int | getNumOutput (unsigned int streamType) const |
Get the number of outputs for the specified type during the filter's last refresh. More... | |
void | getConsoleStrings (std::vector< std::string > &v) const |
Get the filter messages from the console. To erase strings, either call erase, or erase cahche. More... | |
void | clearConsole () |
virtual bool | monitorNeedsRefresh () const |
virtual bool | isPureDataSource () const |
virtual bool | isUsefulAsAppend () const |
template<> | |
bool | applyPropertyNow (bool &prop, const std::string &val, bool &needUp) |
template<> | |
bool | applyPropertyNow (Point3D &prop, const std::string &val, bool &needUp) |
template<> | |
bool | applyPropertyNow (std::string &prop, const std::string &val, bool &needUp) |
Static Public Member Functions | |
static void | setStrongRandom (bool strongRand) |
Should filters use strong randomisation (where applicable) or not? More... | |
template<typename T > | |
static void | getStreamsOfType (const std::vector< const FilterStreamData *> &vec, std::vector< const T *> &dataOut) |
Static Public Attributes | |
static ATOMIC_BOOL * | wantAbort = 0 |
Protected Member Functions | |
void | convertFileStringToAbsolute (const string &basePath, std::string &s) const |
void | propagateCache (std::vector< const FilterStreamData *> &dataOut) const |
Propagate the cache into output. More... | |
template<class T > | |
bool | applyPropertyNow (T &oldProp, const std::string &newVal, bool &needUp) |
void | cacheAsNeeded (FilterStreamData *s) |
virtual std::string | getSpecificErrString (unsigned int errCode) const =0 |
Get the per-filter error codes. More... | |
Static Protected Member Functions | |
static unsigned int | collateIons (const std::vector< const FilterStreamData *> &dataIn, std::vector< IonHit > &outVector, ProgressData &prog, size_t totalDataSize=(size_t) -1) |
static unsigned int | collateIons (const std::vector< const FilterStreamData *> &dataIn, std::vector< Point3D > &outVector, ProgressData &prog, size_t totalDataSize=(size_t) -1) |
static void | propagateStreams (const std::vector< const FilterStreamData *> &dataIn, std::vector< const FilterStreamData *> &dataOut, size_t mask=STREAMTYPE_MASK_ALL, bool invertMask=false) |
Propagate the given input data to an output vector. More... | |
static std::string | getBaseErrString (unsigned int errCode) |
Get the generic (applies to any filter) error codes. More... | |
template<class T > | |
static unsigned int | extendDataVector (std::vector< T > &dest, const std::vector< IonHit > &vIonData, unsigned int &progress, size_t offset) |
Extend a point data vector using some ion data. More... | |
template<class T > | |
static size_t | buildSplitPoints (const vector< const FilterStreamData *> &dataIn, ProgressData &progress, size_t totalDataSize, const RangeFile *rngF, const vector< bool > &pSourceEnabled, const vector< bool > &pTargetEnabled, vector< T > &pSource, vector< T > &pTarget) |
static unsigned int | getIonstreamIonID (const IonStreamData *d, const RangeFile *r) |
static void | demuxKey (unsigned int key, unsigned int &keyType, unsigned int &ionOffset) |
Hack to merge/extract two bits of information into a single property key. More... | |
static unsigned int | muxKey (unsigned int keyType, unsigned int ionOffset) |
Protected Attributes | |
bool | cache |
bool | cacheOK |
unsigned int | numStreamsLastRefresh [NUM_STREAM_TYPES] |
Array of the number of streams propagated on last refresh. More... | |
std::vector< std::string > | consoleOutput |
Temporary console output. Should be only nonzero size if messages are present. More... | |
std::string | userString |
User settable labelling string (human readable ID, etc etc) More... | |
std::vector< FilterStreamData * > | filterOutputs |
std::vector< SelectionDevice * > | devices |
User interaction "Devices" associated with this filter. More... | |
Static Protected Attributes | |
static bool | strongRandom = false |
Abstract base filter class.
Filter::Filter | ( | ) |
References COMPILE_ASSERT, NUM_STREAM_TYPES, numStreamsLastRefresh, STREAM_NAMES, and THREEDEP_ARRAYSIZE.
|
virtual |
References cacheOK, clearCache(), and clearDevices().
bool Filter::applyPropertyNow | ( | bool & | prop, |
const std::string & | val, | ||
bool & | needUp | ||
) |
References boolStrDec(), and clearCache().
bool Filter::applyPropertyNow | ( | Point3D & | prop, |
const std::string & | val, | ||
bool & | needUp | ||
) |
References clearCache(), and Point3D::parse().
bool Filter::applyPropertyNow | ( | std::string & | prop, |
const std::string & | val, | ||
bool & | needUp | ||
) |
References clearCache().
|
protected |
References stream_cast(), and stripWhite().
Referenced by getStreamsOfType(), IonClipFilter::setProperty(), IonColourFilter::setProperty(), ExternalProgramFilter::setProperty(), TransformFilter::setProperty(), BoundingBoxFilter::setProperty(), SpectrumPlotFilter::setProperty(), IonDownsampleFilter::setProperty(), AnnotateFilter::setProperty(), IonInfoFilter::setProperty(), RangeFileFilter::setProperty(), ProfileFilter::setProperty(), VoxeliseFilter::setProperty(), DataLoadFilter::setProperty(), ClusterAnalysisFilter::setProperty(), and SpatialAnalysisFilter::setProperty().
|
inlinestaticprotected |
References ASSERT, assignIonData(), IonStreamData::data, FILTER_ERR_ABORT, RangeFile::getIonID(), getIonstreamIonID(), RangeFile::getNumIons(), FilterStreamData::getStreamType(), and STREAM_TYPE_IONS.
Referenced by SpatialAnalysisFilter::setPropFromBinding().
|
protected |
References cache, FilterStreamData::cached, cacheOK, and filterOutputs.
Referenced by IonClipFilter::refresh(), IonColourFilter::refresh(), TransformFilter::refresh(), SpectrumPlotFilter::refresh(), IonDownsampleFilter::refresh(), RangeFileFilter::refresh(), ProfileFilter::refresh(), DataLoadFilter::refresh(), ClusterAnalysisFilter::refresh(), SpatialAnalysisFilter::refresh(), and SpatialAnalysisFilter::setPropFromBinding().
|
inlinevirtual |
Can this filter perform actions that are potentially a security concern?
Reimplemented in ExternalProgramFilter.
References FilterStreamData::streamType.
Referenced by PrefDialog::OnResetFilterAllButton(), and ConfigFile::read().
|
virtual |
Erase cache.
Reimplemented in VoxeliseFilter.
References ASSERT, cacheOK, and filterOutputs.
Referenced by applyPropertyNow(), VoxeliseFilter::clearCache(), DataLoadFilter::refresh(), IonClipFilter::setProperty(), IonColourFilter::setProperty(), ExternalProgramFilter::setProperty(), TransformFilter::setProperty(), SpectrumPlotFilter::setProperty(), BoundingBoxFilter::setProperty(), IonDownsampleFilter::setProperty(), RangeFileFilter::setProperty(), ProfileFilter::setProperty(), VoxeliseFilter::setProperty(), DataLoadFilter::setProperty(), ClusterAnalysisFilter::setProperty(), SpatialAnalysisFilter::setProperty(), IonClipFilter::setPropFromBinding(), TransformFilter::setPropFromBinding(), ProfileFilter::setPropFromBinding(), SpatialAnalysisFilter::setPropFromBinding(), RangeFileFilter::setPropFromRegion(), RangeFileFilter::setRangeData(), SpectrumPlotFilter::setUserString(), ProfileFilter::setUserString(), SpatialAnalysisFilter::setUserString(), and ~Filter().
|
inline |
|
virtual |
Erase any active devices.
References devices.
Referenced by IonClipFilter::refresh(), AnnotateFilter::refresh(), ProfileFilter::refresh(), FilterTree::refreshFilterTree(), and ~Filter().
|
pure virtual |
Duplicate filter contents, excluding cache.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, RangeFileFilter, BoundingBoxFilter, SpectrumPlotFilter, ExternalProgramFilter, IonDownsampleFilter, TransformFilter, IonColourFilter, and IonClipFilter.
Referenced by filterCloneTests().
|
staticprotected |
References ASSERT, IonStreamData::data, FILTER_ERR_ABORT, numElements(), STREAM_TYPE_IONS, and wantAbort.
Referenced by SpatialAnalysisFilter::refresh(), and SpatialAnalysisFilter::setPropFromBinding().
|
staticprotected |
|
protected |
Referenced by RangeFileFilter::readState(), DataLoadFilter::readState(), and SpatialAnalysisFilter::readState().
|
staticprotected |
Hack to merge/extract two bits of information into a single property key.
Referenced by VoxeliseFilter::setProperty(), and SpatialAnalysisFilter::setProperty().
|
inlinestaticprotected |
Extend a point data vector using some ion data.
References assignIonData(), NUM_CALLBACK, and wantAbort.
Referenced by collateIons().
|
staticprotected |
Get the generic (applies to any filter) error codes.
References ASSERT, FilterProperty::checkSelfConsistent(), FILTER_ERR_ABORT, Point3D::parse(), ColourRGBA::parse(), PROPERTY_TYPE_BOOL, PROPERTY_TYPE_CHOICE, PROPERTY_TYPE_COLOUR, PROPERTY_TYPE_ENUM_END, PROPERTY_TYPE_INTEGER, PROPERTY_TYPE_POINT3D, PROPERTY_TYPE_REAL, stream_cast(), TRANS, and WARN.
Referenced by getErrString().
|
inline |
Get the filter messages from the console. To erase strings, either call erase, or erase cahche.
Referenced by IonInfoFilter::needsUnrangedData(), and FilterTree::refreshFilterTree().
std::string Filter::getErrString | ( | unsigned int | code | ) | const |
Get the human readable error string associated with a particular error code during refresh(...). Do not override this for specific filter errors. Override getSpecificErrString.
References getBaseErrString(), and getSpecificErrString().
Referenced by MainWindowFrame::OnComboFilter().
|
inlinestaticprotected |
References IonStreamData::data, and RangeFile::getIonID().
Referenced by VoxeliseFilter::refresh(), and SpatialAnalysisFilter::setPropFromBinding().
unsigned int Filter::getNumOutput | ( | unsigned int | streamType | ) | const |
Get the number of outputs for the specified type during the filter's last refresh.
References ASSERT, NUM_STREAM_TYPES, and numStreamsLastRefresh.
|
pure virtual |
Get the properties of the filter, in key-value form. First vector is for each output.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, RangeFileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, BoundingBoxFilter, SpectrumPlotFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by affectedBySampling(), filterAffectedByComposition(), filterAltersComposition(), filterIsSampling(), ExportAnimationDialog::OnFilterGridCellSelected(), ProgressData::operator=(), ExportAnimationDialog::prepare(), and updateFilterPropertyGrid().
|
pure virtual |
Get the bitmask encoded list of filterStreams that this filter blocks from propagation.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, RangeFileFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by FilterTreeAnalyse::analyse().
|
pure virtual |
Get the bitmask encoded list of filterstreams that this filter emits from ::refresh.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, RangeFileFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by FilterTree::contains().
|
pure virtual |
Mask of filter streams that will be examined by the filter in its computation.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, RangeFileFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by FilterTreeAnalyse::analyse().
void Filter::getSelectionDevices | ( | std::vector< SelectionDevice *> & | devices | ) | const |
Get the selection devices for this filter. MUST be called after refresh()
References ASSERT, and devices.
Referenced by FilterTree::contains(), and FilterTree::refreshFilterTree().
|
protectedpure virtual |
Get the per-filter error codes.
Implemented in SpatialAnalysisFilter, DataLoadFilter, ClusterAnalysisFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, RangeFileFilter, AnnotateFilter, IonDownsampleFilter, BoundingBoxFilter, SpectrumPlotFilter, TransformFilter, ExternalProgramFilter, IonClipFilter, and IonColourFilter.
Referenced by getErrString().
|
inlinevirtual |
Return the XML elements that refer to external entities (i.e. files) which do not move with the XML files. At this time, only files are supported. These will be looked for on the filesystem and moved as needed.
Reimplemented in SpatialAnalysisFilter, DataLoadFilter, and RangeFileFilter.
|
static |
References applyPropertyNow(), and FilterStreamData::getStreamType().
Referenced by doFitBackground().
|
pure virtual |
return type ID
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, RangeFileFilter, BoundingBoxFilter, SpectrumPlotFilter, TransformFilter, ExternalProgramFilter, IonDownsampleFilter, IonColourFilter, and IonClipFilter.
Referenced by affectedBySampling(), FilterTreeAnalyse::analyse(), filterAffectedByComposition(), filterAltersComposition(), filterIsSampling(), needsRangeParent(), needsUnrangedData(), RangeEditorDialog::setPlotWrapper(), and PlotWrapper::switchOutRegionParent().
|
virtual |
Return a user-specified string, or just the typestring if user set string not active.
References typeString(), and userString.
Referenced by ExportRngDialog::addRangeData(), FilterTree::contains(), filterCloneTests(), ExportAnimationDialog::prepare(), ExternalProgramFilter::refresh(), SpectrumPlotFilter::refresh(), ProfileFilter::refresh(), FilterTree::refreshFilterTree(), and SpatialAnalysisFilter::setPropFromBinding().
bool Filter::haveCache | ( | ) | const |
Have cached output data?
References cacheOK.
Referenced by FilterTree::contains(), and FilterTree::refreshFilterTree().
|
virtual |
Initialise the filter's internal state using limited filter stream data propagation.
Reimplemented in SpatialAnalysisFilter, ClusterAnalysisFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, RangeFileFilter, and IonDownsampleFilter.
|
inlinevirtual |
Reimplemented in DataLoadFilter.
Referenced by MainWindowFrame::OnTreeEndDrag().
|
inlinevirtual |
Reimplemented in DataLoadFilter, and AnnotateFilter.
Referenced by FilterTreeAnalyse::analyse().
|
inlinevirtual |
Reimplemented in DataLoadFilter.
|
staticprotected |
Referenced by VoxeliseFilter::getProperties(), SpatialAnalysisFilter::getProperties(), and SpatialAnalysisFilter::setPropFromBinding().
|
pure virtual |
Get (approx) number of bytes required for cache.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, RangeFileFilter, IonDownsampleFilter, SpectrumPlotFilter, BoundingBoxFilter, ExternalProgramFilter, TransformFilter, IonColourFilter, and IonClipFilter.
Referenced by FilterTree::refreshFilterTree().
|
protected |
Propagate the cache into output.
References ASSERT, filterOutputs, and propagateStreams().
Referenced by IonColourFilter::refresh(), ExternalProgramFilter::refresh(), TransformFilter::refresh(), SpectrumPlotFilter::refresh(), IonDownsampleFilter::refresh(), RangeFileFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), DataLoadFilter::refresh(), ClusterAnalysisFilter::refresh(), and SpatialAnalysisFilter::refresh().
|
staticprotected |
Propagate the given input data to an output vector.
Referenced by propagateCache(), IonColourFilter::refresh(), TransformFilter::refresh(), BoundingBoxFilter::refresh(), IonDownsampleFilter::refresh(), AnnotateFilter::refresh(), RangeFileFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), DataLoadFilter::refresh(), and SpatialAnalysisFilter::refresh().
|
pure virtual |
Read state from XML stream, using xml format.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, RangeFileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by filterCloneTests(), FilterTree::loadXML(), and ConfigFile::read().
|
pure virtual |
Apply filter to new data, updating cache as needed. Vector of returned pointers must be deleted manually, first checking ->cached.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, RangeFileFilter, IonDownsampleFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonClipFilter, and IonColourFilter.
Referenced by FilterTree::refreshFilterTree().
|
inline |
Enable/disable caching for this filter.
Referenced by computeMatrixEntries(), IonColourFilter::getRefreshUseMask(), ExternalProgramFilter::getRefreshUseMask(), BoundingBoxFilter::getRefreshUseMask(), IonDownsampleFilter::getRefreshUseMask(), VoxeliseFilter::getRefreshUseMask(), DataLoadFilter::monitorNeedsRefresh(), SpectrumPlotFilter::needsUnrangedData(), IonInfoFilter::needsUnrangedData(), FilterTree::refreshFilterTree(), IonClipFilter::setPropFromBinding(), TransformFilter::setPropFromBinding(), AnnotateFilter::setPropFromBinding(), ProfileFilter::setPropFromBinding(), SpatialAnalysisFilter::setPropFromBinding(), and RangeFileFilter::writePackageState().
|
pure virtual |
Set the properties for the nth filter, needUpdate tells us if filter output changes due to property set
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, RangeFileFilter, IonInfoFilter, AnnotateFilter, IonDownsampleFilter, BoundingBoxFilter, SpectrumPlotFilter, TransformFilter, ExternalProgramFilter, IonColourFilter, and IonClipFilter.
Referenced by filterRefreshNoOut(), PrefDialog::OnFilterCellChange(), ProgressData::operator=(), and FilterTree::setFilterProperty().
|
pure virtual |
Set the binding value for a float.
Implemented in SpatialAnalysisFilter, DataLoadFilter, ClusterAnalysisFilter, VoxeliseFilter, ProfileFilter, RangeFileFilter, IonInfoFilter, AnnotateFilter, SpectrumPlotFilter, BoundingBoxFilter, IonDownsampleFilter, TransformFilter, ExternalProgramFilter, IonClipFilter, and IonColourFilter.
|
virtual |
Set a region update.
Reimplemented in RangeFileFilter.
References ASSERT.
Referenced by PlotRegion::updateParent().
|
inlinestatic |
Should filters use strong randomisation (where applicable) or not?
Referenced by MainWindowFrame::OnCheckWeakRandom().
|
inlinevirtual |
Set a user-specified string return value is.
Reimplemented in SpatialAnalysisFilter, ProfileFilter, and SpectrumPlotFilter.
Referenced by filterTreeTests(), and TreeState::setFilterString().
|
inline |
Return the unique name for a given filter – DO NOT TRANSLATE.
References FILTER_NAMES.
Referenced by makeFilter(), IonColourFilter::writeState(), IonClipFilter::writeState(), ExternalProgramFilter::writeState(), TransformFilter::writeState(), BoundingBoxFilter::writeState(), SpectrumPlotFilter::writeState(), IonDownsampleFilter::writeState(), AnnotateFilter::writeState(), RangeFileFilter::writeState(), IonInfoFilter::writeState(), ProfileFilter::writeState(), VoxeliseFilter::writeState(), DataLoadFilter::writeState(), ClusterAnalysisFilter::writeState(), and SpatialAnalysisFilter::writeState().
|
pure virtual |
Return filter type as std::string.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, AnnotateFilter, RangeFileFilter, IonDownsampleFilter, BoundingBoxFilter, SpectrumPlotFilter, TransformFilter, ExternalProgramFilter, IonClipFilter, and IonColourFilter.
Referenced by FilterTreeAnalyse::analyse(), getUserString(), makeFilterFromDefUserString(), MainWindowFrame::OnUpdateTimer(), and PrefDialog::~PrefDialog().
void Filter::updateOutputInfo | ( | const std::vector< const FilterStreamData *> & | dataOut | ) |
Update the output statistics for this filter (num items of streams of each type output)
References ASSERT, getBitNum(), NUM_STREAM_TYPES, and numStreamsLastRefresh.
Referenced by FilterTree::refreshFilterTree().
|
inlinevirtual |
Modified version of writeState for packaging. By default simply calls writeState.
Reimplemented in SpatialAnalysisFilter, DataLoadFilter, and RangeFileFilter.
|
pure virtual |
Dump state to output stream, using specified format.
Implemented in SpatialAnalysisFilter, ClusterAnalysisFilter, DataLoadFilter, VoxeliseFilter, ProfileFilter, IonInfoFilter, RangeFileFilter, AnnotateFilter, IonDownsampleFilter, SpectrumPlotFilter, BoundingBoxFilter, TransformFilter, ExternalProgramFilter, IonClipFilter, and IonColourFilter.
Referenced by filterCloneTests().
|
protected |
Referenced by AnnotateFilter::AnnotateFilter(), BoundingBoxFilter::BoundingBoxFilter(), cacheAsNeeded(), IonClipFilter::cloneUncached(), IonColourFilter::cloneUncached(), TransformFilter::cloneUncached(), ExternalProgramFilter::cloneUncached(), IonDownsampleFilter::cloneUncached(), BoundingBoxFilter::cloneUncached(), SpectrumPlotFilter::cloneUncached(), RangeFileFilter::cloneUncached(), AnnotateFilter::cloneUncached(), IonInfoFilter::cloneUncached(), ProfileFilter::cloneUncached(), VoxeliseFilter::cloneUncached(), DataLoadFilter::cloneUncached(), ClusterAnalysisFilter::cloneUncached(), SpatialAnalysisFilter::cloneUncached(), ClusterAnalysisFilter::ClusterAnalysisFilter(), DataLoadFilter::DataLoadFilter(), ExternalProgramFilter::ExternalProgramFilter(), IonColourFilter::IonColourFilter(), IonDownsampleFilter::IonDownsampleFilter(), IonInfoFilter::IonInfoFilter(), IonColourFilter::refresh(), RangeFileFilter::refresh(), VoxeliseFilter::refresh(), ClusterAnalysisFilter::refresh(), RangeFileFilter::setProperty(), SpatialAnalysisFilter::SpatialAnalysisFilter(), TransformFilter::TransformFilter(), and VoxeliseFilter::VoxeliseFilter().
|
protected |
Referenced by AnnotateFilter::AnnotateFilter(), BoundingBoxFilter::BoundingBoxFilter(), cacheAsNeeded(), clearCache(), IonClipFilter::cloneUncached(), IonColourFilter::cloneUncached(), TransformFilter::cloneUncached(), ExternalProgramFilter::cloneUncached(), IonDownsampleFilter::cloneUncached(), BoundingBoxFilter::cloneUncached(), SpectrumPlotFilter::cloneUncached(), RangeFileFilter::cloneUncached(), AnnotateFilter::cloneUncached(), IonInfoFilter::cloneUncached(), ProfileFilter::cloneUncached(), VoxeliseFilter::cloneUncached(), DataLoadFilter::cloneUncached(), ClusterAnalysisFilter::cloneUncached(), SpatialAnalysisFilter::cloneUncached(), ClusterAnalysisFilter::ClusterAnalysisFilter(), ExternalProgramFilter::ExternalProgramFilter(), haveCache(), IonColourFilter::IonColourFilter(), IonDownsampleFilter::IonDownsampleFilter(), IonInfoFilter::IonInfoFilter(), DataLoadFilter::monitorNeedsRefresh(), IonColourFilter::refresh(), IonClipFilter::refresh(), ExternalProgramFilter::refresh(), TransformFilter::refresh(), SpectrumPlotFilter::refresh(), IonDownsampleFilter::refresh(), RangeFileFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), DataLoadFilter::refresh(), ClusterAnalysisFilter::refresh(), SpatialAnalysisFilter::refresh(), SpectrumPlotFilter::setProperty(), IonInfoFilter::setProperty(), RangeFileFilter::setProperty(), VoxeliseFilter::setProperty(), DataLoadFilter::setProperty(), SpatialAnalysisFilter::setProperty(), SpectrumPlotFilter::setUserString(), SpatialAnalysisFilter::SpatialAnalysisFilter(), TransformFilter::TransformFilter(), VoxeliseFilter::VoxeliseFilter(), and ~Filter().
|
protected |
Temporary console output. Should be only nonzero size if messages are present.
Referenced by SpectrumPlotFilter::refresh(), IonInfoFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), DataLoadFilter::refresh(), ClusterAnalysisFilter::refresh(), ClusterAnalysisFilter::setPropFromBinding(), and SpatialAnalysisFilter::setPropFromBinding().
|
protected |
User interaction "Devices" associated with this filter.
Referenced by clearDevices(), getSelectionDevices(), IonClipFilter::refresh(), TransformFilter::refresh(), AnnotateFilter::refresh(), ProfileFilter::refresh(), and VoxeliseFilter::refresh().
|
protected |
Referenced by cacheAsNeeded(), clearCache(), propagateCache(), IonClipFilter::refresh(), IonColourFilter::refresh(), ExternalProgramFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), ClusterAnalysisFilter::refresh(), SpectrumPlotFilter::setProperty(), RangeFileFilter::setProperty(), VoxeliseFilter::setProperty(), DataLoadFilter::setProperty(), ClusterAnalysisFilter::setProperty(), SpatialAnalysisFilter::setProperty(), and SpatialAnalysisFilter::setPropFromBinding().
|
protected |
Array of the number of streams propagated on last refresh.
Referenced by Filter(), getNumOutput(), and updateOutputInfo().
|
staticprotected |
Referenced by IonDownsampleFilter::refresh(), and DataLoadFilter::refresh().
|
protected |
User settable labelling string (human readable ID, etc etc)
Referenced by IonClipFilter::cloneUncached(), IonColourFilter::cloneUncached(), TransformFilter::cloneUncached(), ExternalProgramFilter::cloneUncached(), IonDownsampleFilter::cloneUncached(), SpectrumPlotFilter::cloneUncached(), BoundingBoxFilter::cloneUncached(), RangeFileFilter::cloneUncached(), AnnotateFilter::cloneUncached(), IonInfoFilter::cloneUncached(), ProfileFilter::cloneUncached(), VoxeliseFilter::cloneUncached(), DataLoadFilter::cloneUncached(), ClusterAnalysisFilter::cloneUncached(), SpatialAnalysisFilter::cloneUncached(), getUserString(), IonClipFilter::readState(), IonColourFilter::readState(), ExternalProgramFilter::readState(), TransformFilter::readState(), BoundingBoxFilter::readState(), SpectrumPlotFilter::readState(), IonDownsampleFilter::readState(), AnnotateFilter::readState(), IonInfoFilter::readState(), RangeFileFilter::readState(), ProfileFilter::readState(), VoxeliseFilter::readState(), DataLoadFilter::readState(), ClusterAnalysisFilter::readState(), SpatialAnalysisFilter::readState(), SpectrumPlotFilter::setUserString(), ProfileFilter::setUserString(), SpatialAnalysisFilter::setUserString(), IonColourFilter::writeState(), IonClipFilter::writeState(), ExternalProgramFilter::writeState(), TransformFilter::writeState(), BoundingBoxFilter::writeState(), SpectrumPlotFilter::writeState(), IonDownsampleFilter::writeState(), AnnotateFilter::writeState(), RangeFileFilter::writeState(), IonInfoFilter::writeState(), ProfileFilter::writeState(), VoxeliseFilter::writeState(), DataLoadFilter::writeState(), ClusterAnalysisFilter::writeState(), and SpatialAnalysisFilter::writeState().
|
static |
Referenced by collateIons(), computeConvexHull(), countPoints(), extendDataVector(), getRectilinearBounds(), IonColourFilter::refresh(), ExternalProgramFilter::refresh(), TransformFilter::refresh(), BoundingBoxFilter::refresh(), SpectrumPlotFilter::refresh(), IonDownsampleFilter::refresh(), RangeFileFilter::refresh(), ProfileFilter::refresh(), VoxeliseFilter::refresh(), ClusterAnalysisFilter::refresh(), SpatialAnalysisFilter::refresh(), FilterTree::refreshFilterTree(), CropHelper::runFilter(), ClusterAnalysisFilter::setPropFromBinding(), and SpatialAnalysisFilter::setPropFromBinding().