#include <SMESH_LogicalFilter.hxx>

Public Types | |
| enum | { LO_OR, LO_AND, LO_NOT, LO_UNDEFINED } |
Public Member Functions | |
| SMESH_LogicalFilter (const QList< SUIT_SelectionFilter * > &, const int) | |
| virtual | ~SMESH_LogicalFilter () |
| virtual bool | isOk (const SUIT_DataOwner *) const |
| void | setFilters (const QList< SUIT_SelectionFilter * > &) |
| void | setOperation (const int) |
| const QList < SUIT_SelectionFilter * > | getFilters () const |
| int | getOperation () const |
Private Attributes | |
| QList< SUIT_SelectionFilter * > | myFilters |
| int | myOperation |
Definition at line 35 of file SMESH_LogicalFilter.hxx.
| anonymous enum |
Definition at line 38 of file SMESH_LogicalFilter.hxx.
{ LO_OR, LO_AND, LO_NOT, LO_UNDEFINED };
| SMESH_LogicalFilter::SMESH_LogicalFilter | ( | const QList< SUIT_SelectionFilter * > & | theFilters, |
| const int | theLogOp | ||
| ) |
Definition at line 32 of file SMESH_LogicalFilter.cxx.
References setFilters(), and setOperation().
{
setFilters(theFilters);
setOperation(theLogOp);
}
| SMESH_LogicalFilter::~SMESH_LogicalFilter | ( | ) | [virtual] |
Definition at line 43 of file SMESH_LogicalFilter.cxx.
{
}
| const QList< SUIT_SelectionFilter * > SMESH_LogicalFilter::getFilters | ( | ) | const |
| int SMESH_LogicalFilter::getOperation | ( | ) | const |
Definition at line 98 of file SMESH_LogicalFilter.cxx.
References myOperation.
{
return myOperation;
}
| bool SMESH_LogicalFilter::isOk | ( | const SUIT_DataOwner * | owner | ) | const [virtual] |
Definition at line 51 of file SMESH_LogicalFilter.cxx.
References LO_AND, LO_NOT, LO_OR, myFilters, and myOperation.
{
SUIT_SelectionFilter* filter;
foreach( filter, myFilters )
{
if (myOperation == LO_OR && filter->isOk(owner))
return true;
if (myOperation == LO_AND && !filter->isOk(owner))
return false;
if (myOperation == LO_NOT)
return !filter->isOk(owner);
}
return (myOperation != LO_OR);
}
| void SMESH_LogicalFilter::setFilters | ( | const QList< SUIT_SelectionFilter * > & | theFilters | ) |
Definition at line 71 of file SMESH_LogicalFilter.cxx.
References myFilters.
Referenced by SMESH_LogicalFilter().
{
myFilters = theFilters;
}
| void SMESH_LogicalFilter::setOperation | ( | const int | theLogOp | ) |
Definition at line 80 of file SMESH_LogicalFilter.cxx.
References myOperation.
Referenced by SMESH_LogicalFilter().
{
myOperation = theLogOp;
}
QList<SUIT_SelectionFilter*> SMESH_LogicalFilter.myFilters [private] |
Definition at line 52 of file SMESH_LogicalFilter.hxx.
Referenced by getFilters(), isOk(), and setFilters().
int SMESH_LogicalFilter.myOperation [private] |
Definition at line 53 of file SMESH_LogicalFilter.hxx.
Referenced by getOperation(), isOk(), and setOperation().