Logo Search packages:      
Sourcecode: 3depict version File versions  Download package

Filter Class Reference

#include <filter.h>

Inheritance diagram for Filter:

BoundingBoxFilter CompositionProfileFilter ExternalProgramFilter IonClipFilter IonColourFilter IonDownsampleFilter RangeFileFilter SpatialAnalysisFilter SpectrumPlotFilter TransformFilter

List of all members.


Detailed Description

Abstract base filter class.

Definition at line 310 of file filter.h.


Public Member Functions

virtual bool canBeHazardous () const
 Can this filter perform actions that are potentially a security concern?
virtual void clearCache ()
 Erase cache.
virtual FiltercloneUncached () const =0
 Duplicate filter contents, excluding cache.
virtual std::string getErrString (unsigned int code) const =0
 Get the human readable error string associated with a particular error code during refresh(...).
unsigned int getNumOutput (unsigned int streamType) const
 Get the number of outputs for the specified type during the filter's last refresh.
void getOutputData (std::vector< FilterStreamData * > *&getOut)
 Get the filter output data from this filter.
virtual void getProperties (FilterProperties &propertyList) const =0
 Get the properties of the filter, in key-value form. First vector is for each output.
void getSelectionDevices (vector< SelectionDevice * > &devices)
 Get the selection devices for this filter. MUST be called after refresh().
virtual unsigned int getType () const =0
 return type ID
virtual std::string getUserString () const
 Return a user-specified string, or just the typestring if user set string not active.
bool haveCache () const
 Have cached output data?
bool isEnabled () const
virtual size_t numBytesForCache (size_t nObjects) const =0
 Get (approx) number of bytes required for cache.
virtual bool readState (xmlNodePtr &n)=0
 Read state from XML stream, using xml format.
virtual unsigned int refresh (const std::vector< const FilterStreamData * > &dataIn, std::vector< const FilterStreamData * > &dataOut, unsigned int &progress, bool(*callback)(void))=0
 Apply filter to new data, updating cache as needed. Vector of returned pointers must be deleted manually, first checking ->cached.
void setCaching (bool enableCache)
 Enable/disable caching for this filter.
virtual bool setProperty (unsigned int set, unsigned int key, const std::string &value, bool &needUpdate)=0
virtual void setPropFromBinding (const SelectionBinding &b)=0
 Set the binding value for a float.
virtual void setUserString (const std::string &str)
 Set a user-specified string.
virtual std::string typeString () const =0
 Return filter type as std::string.
void updateOutputInfo (const std::vector< const FilterStreamData * > &dataOut)
 Update the output informaiton for this filter.
virtual bool writeState (std::ofstream &f, unsigned int format, unsigned int depth=0) const =0
 Dump state to output stream, using specified format.

Protected Attributes

bool cache
bool cacheOK
std::vector< SelectionDevice * > devices
 User interaction "Devices" associated with this filter.
bool enabled
 Is this filter active?
std::vector< FilterStreamData * > filterOutputs
unsigned int numStreamsLastRefresh [NUM_STREAM_TYPES]
 Array of the number of streams propagated on last refresh.
unsigned int progress
std::string userString
 User settable labelling string (human readable ID, etc etc).

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index