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 46 of file AbstractFilter.h.

Member Enumeration Documentation

◆ FilterEffectiveness

enum Isis::AbstractFilter::FilterEffectiveness

Definition at line 50 of file AbstractFilter.h.

Constructor & Destructor Documentation

◆ AbstractFilter() [1/2]

Isis::AbstractFilter::AbstractFilter ( FilterEffectivenessFlag effectiveness,
int minimumForSuccess = -1 )

Definition at line 39 of file AbstractFilter.cpp.

◆ AbstractFilter() [2/2]

Isis::AbstractFilter::AbstractFilter ( const AbstractFilter & other)

Definition at line 53 of file AbstractFilter.cpp.

◆ ~AbstractFilter()

Isis::AbstractFilter::~AbstractFilter ( )
virtual

Definition at line 69 of file AbstractFilter.cpp.

Member Function Documentation

◆ canFilterImages()

bool Isis::AbstractFilter::canFilterImages ( ) const
virtual

Definition at line 81 of file AbstractFilter.cpp.

◆ canFilterMeasures()

bool Isis::AbstractFilter::canFilterMeasures ( ) const
virtual

Definition at line 91 of file AbstractFilter.cpp.

◆ canFilterPoints()

bool Isis::AbstractFilter::canFilterPoints ( ) const
virtual

Definition at line 86 of file AbstractFilter.cpp.

◆ createEffectivenessCheckBox()

QCheckBox * Isis::AbstractFilter::createEffectivenessCheckBox ( QString text)
private

Definition at line 234 of file AbstractFilter.cpp.

◆ createWidget()

void Isis::AbstractFilter::createWidget ( )
private

Definition at line 122 of file AbstractFilter.cpp.

◆ evaluate() [1/2]

bool Isis::AbstractFilter::evaluate ( const ControlMeasure * measure,
bool(ControlMeasure::*)() const meth ) const
protectedvirtual

Definition at line 335 of file AbstractFilter.cpp.

◆ evaluate() [2/2]

bool Isis::AbstractFilter::evaluate ( const ControlPoint * point,
bool(ControlPoint::*)() const meth ) const
protectedvirtual

Definition at line 328 of file AbstractFilter.cpp.

◆ evaluateFromCount()

bool Isis::AbstractFilter::evaluateFromCount ( QList< ControlMeasure * > measures,
bool usePoints ) const
private

Definition at line 268 of file AbstractFilter.cpp.

◆ evaluateImageFromMeasureFilter()

bool Isis::AbstractFilter::evaluateImageFromMeasureFilter ( const QPair< QString, ControlNet * > * imageAndNet) const
protected

Definition at line 303 of file AbstractFilter.cpp.

◆ evaluateImageFromPointFilter()

bool Isis::AbstractFilter::evaluateImageFromPointFilter ( const QPair< QString, ControlNet * > * imageAndNet) const
protected

Definition at line 290 of file AbstractFilter.cpp.

◆ evaluatePointFromMeasureFilter()

bool Isis::AbstractFilter::evaluatePointFromMeasureFilter ( const ControlPoint * point) const
protected

Definition at line 316 of file AbstractFilter.cpp.

◆ getEffectivenessFlags()

AbstractFilter::FilterEffectivenessFlag * Isis::AbstractFilter::getEffectivenessFlags ( ) const
protected

Definition at line 251 of file AbstractFilter.cpp.

◆ getImageDescription()

QString Isis::AbstractFilter::getImageDescription ( ) const
virtual

Definition at line 96 of file AbstractFilter.cpp.

◆ getInclusiveExclusiveLayout()

QBoxLayout * Isis::AbstractFilter::getInclusiveExclusiveLayout ( ) const
protected

Definition at line 262 of file AbstractFilter.cpp.

◆ getMainLayout()

QBoxLayout * Isis::AbstractFilter::getMainLayout ( ) const
protected

Definition at line 256 of file AbstractFilter.cpp.

◆ getMeasureDescription()

QString Isis::AbstractFilter::getMeasureDescription ( ) const
virtual

Definition at line 106 of file AbstractFilter.cpp.

◆ getMinForSuccess()

int Isis::AbstractFilter::getMinForSuccess ( ) const
inlineprotected

Definition at line 84 of file AbstractFilter.h.

◆ getPointDescription()

QString Isis::AbstractFilter::getPointDescription ( ) const
virtual

Definition at line 101 of file AbstractFilter.cpp.

◆ inclusive()

bool Isis::AbstractFilter::inclusive ( ) const
protected

Definition at line 245 of file AbstractFilter.cpp.

◆ nullify()

void Isis::AbstractFilter::nullify ( )
private

Definition at line 111 of file AbstractFilter.cpp.

◆ updateEffectiveness

void Isis::AbstractFilter::updateEffectiveness ( )
privateslot

Definition at line 342 of file AbstractFilter.cpp.

◆ updateMinForSuccess

void Isis::AbstractFilter::updateMinForSuccess ( int newMin)
privateslot

Definition at line 371 of file AbstractFilter.cpp.

Member Data Documentation

◆ m_effectivenessFlags

FilterEffectivenessFlag* Isis::AbstractFilter::m_effectivenessFlags
private

Definition at line 126 of file AbstractFilter.h.

◆ m_effectivenessGroup

QButtonGroup* Isis::AbstractFilter::m_effectivenessGroup
private

Definition at line 120 of file AbstractFilter.h.

◆ m_inclusiveExclusiveGroup

QButtonGroup* Isis::AbstractFilter::m_inclusiveExclusiveGroup
private

Definition at line 119 of file AbstractFilter.h.

◆ m_inclusiveExclusiveLayout

QBoxLayout* Isis::AbstractFilter::m_inclusiveExclusiveLayout
private

Definition at line 118 of file AbstractFilter.h.

◆ m_mainLayout

QBoxLayout* Isis::AbstractFilter::m_mainLayout
private

Definition at line 117 of file AbstractFilter.h.

◆ m_minForSuccess

int Isis::AbstractFilter::m_minForSuccess
private

Definition at line 125 of file AbstractFilter.h.

◆ m_minWidget

QWidget* Isis::AbstractFilter::m_minWidget
private

Definition at line 121 of file AbstractFilter.h.

◆ m_smallFont

QFont* Isis::AbstractFilter::m_smallFont
private

Definition at line 127 of file AbstractFilter.h.


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