Isis 3 Programmer Reference
Isis::AbstractFilter Class Referenceabstract

Base class for control net filters. More...

#include <AbstractFilter.h>

Inheritance diagram for Isis::AbstractFilter:
Inheritance graph
Collaboration diagram for Isis::AbstractFilter:
Collaboration graph

Public Types

enum  FilterEffectiveness { Images = 1, Points = 2, Measures = 4 }
 

Signals

void filterChanged ()
 

Public Member Functions

 AbstractFilter (FilterEffectivenessFlag, int minimumForSuccess=-1)
 
 AbstractFilter (const AbstractFilter &other)
 
virtual bool canFilterImages () const
 
virtual bool canFilterPoints () const
 
virtual bool canFilterMeasures () const
 
virtual bool evaluate (const QPair< QString, ControlNet *> *) const =0
 
virtual bool evaluate (const ControlPoint *) const =0
 
virtual bool evaluate (const ControlMeasure *) const =0
 
virtual AbstractFilterclone () const =0
 
virtual QString getImageDescription () const
 
virtual QString getPointDescription () const
 
virtual QString getMeasureDescription () const
 

Protected Member Functions

bool inclusive () const
 
int getMinForSuccess () const
 
AbstractFilter::FilterEffectivenessFlag * getEffectivenessFlags () const
 
QBoxLayout * getMainLayout () const
 
QBoxLayout * getInclusiveExclusiveLayout () const
 
bool evaluateImageFromPointFilter (const QPair< QString, ControlNet *> *) const
 
bool evaluateImageFromMeasureFilter (const QPair< QString, ControlNet *> *) const
 
bool evaluatePointFromMeasureFilter (const ControlPoint *) const
 
virtual bool evaluate (const ControlPoint *, bool(ControlPoint::*)() const) const
 
virtual bool evaluate (const ControlMeasure *, bool(ControlMeasure::*)() const) const
 

Private Slots

void updateEffectiveness ()
 
void updateMinForSuccess (int)
 

Private Member Functions

void createWidget ()
 
bool evaluateFromCount (QList< ControlMeasure * >, bool) const
 
void nullify ()
 
QCheckBox * createEffectivenessCheckBox (QString)
 

Private Attributes

QBoxLayout * m_mainLayout
 
QBoxLayout * m_inclusiveExclusiveLayout
 
QButtonGroup * m_inclusiveExclusiveGroup
 
QButtonGroup * m_effectivenessGroup
 
QWidgetm_minWidget
 
int m_minForSuccess
 
FilterEffectivenessFlag * m_effectivenessFlags
 
QFont * m_smallFont
 

Detailed Description

Base class for control net filters.

This class is the base class that all other filters derive from. It encompasses both the widget and the filter functionality itself. See the cneteditor architecture document for further information about the filtering system.

Author
????-??-?? Eric Hyer
History:

2012-09-28 Kimberly Oyama - Changed member variables to be prefixed with "m_".

2017-07-25 Summer Stapleton - Removed the CnetViz namespace. Fixes #5054.

2018-06-01 Jesse Mapel - Changed ControlCubeGraphNode to image serial number. References #5434.

2018-09-28 Kaitlyn Lee - Changed the declaration of QPair from class to struct. Fixes build warning on MacOS 10.13. References #5520.

Definition at line 38 of file AbstractFilter.h.


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