Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
QmitkDataStorageFilterProxyModel Class Reference

A QSortFilterProxyModel that hides data nodes matching one or more predicates. More...

#include <QmitkDataStorageFilterProxyModel.h>

Inheritance diagram for QmitkDataStorageFilterProxyModel:
Collaboration diagram for QmitkDataStorageFilterProxyModel:

Public Member Functions

 QmitkDataStorageFilterProxyModel (QObject *parent=nullptr)
 Constructs the filter proxy model. More...
 
 ~QmitkDataStorageFilterProxyModel () override
 
void AddFilterPredicate (mitk::NodePredicateBase::Pointer pred)
 Adds a filter predicate. Nodes matching this predicate will be hidden. More...
 
bool RemoveFilterPredicate (mitk::NodePredicateBase::Pointer pred)
 Removes a filter predicate from the filter list. More...
 
bool HasFilterPredicate (mitk::NodePredicateBase::Pointer pred)
 Checks whether a predicate is currently in the filter list. More...
 

Protected Types

typedef std::set< mitk::NodePredicateBase::Pointer > FilterPredicatesCollection
 

Protected Member Functions

bool filterAcceptsRow (int source_row, const QModelIndex &source_parent) const override
 

Protected Attributes

FilterPredicatesCollection m_Predicates
 

Detailed Description

A QSortFilterProxyModel that hides data nodes matching one or more predicates.

This proxy model filters rows from a source model (typically a DataStorage-backed model) by evaluating a set of mitk::NodePredicateBase instances. If any predicate returns true for a given data node, the corresponding row is hidden.

See also
QmitkAbstractDataStorageModel
QmitkDataStorageTreeModel

Definition at line 36 of file QmitkDataStorageFilterProxyModel.h.

Member Typedef Documentation

◆ FilterPredicatesCollection

typedef std::set<mitk::NodePredicateBase::Pointer> QmitkDataStorageFilterProxyModel::FilterPredicatesCollection
protected

Definition at line 72 of file QmitkDataStorageFilterProxyModel.h.

Constructor & Destructor Documentation

◆ QmitkDataStorageFilterProxyModel()

QmitkDataStorageFilterProxyModel::QmitkDataStorageFilterProxyModel ( QObject *  parent = nullptr)

Constructs the filter proxy model.

Parameters
[in]parentOptional parent QObject.

◆ ~QmitkDataStorageFilterProxyModel()

QmitkDataStorageFilterProxyModel::~QmitkDataStorageFilterProxyModel ( )
override

Member Function Documentation

◆ AddFilterPredicate()

void QmitkDataStorageFilterProxyModel::AddFilterPredicate ( mitk::NodePredicateBase::Pointer  pred)

Adds a filter predicate. Nodes matching this predicate will be hidden.

Parameters
[in]predThe predicate to add.

◆ filterAcceptsRow()

bool QmitkDataStorageFilterProxyModel::filterAcceptsRow ( int  source_row,
const QModelIndex &  source_parent 
) const
overrideprotected

◆ HasFilterPredicate()

bool QmitkDataStorageFilterProxyModel::HasFilterPredicate ( mitk::NodePredicateBase::Pointer  pred)

Checks whether a predicate is currently in the filter list.

Parameters
[in]predThe predicate to check for.
Returns
True if the predicate is present, false otherwise.

◆ RemoveFilterPredicate()

bool QmitkDataStorageFilterProxyModel::RemoveFilterPredicate ( mitk::NodePredicateBase::Pointer  pred)

Removes a filter predicate from the filter list.

Parameters
[in]predThe predicate to remove.
Returns
True if the predicate was found and removed, false otherwise.

Member Data Documentation

◆ m_Predicates

FilterPredicatesCollection QmitkDataStorageFilterProxyModel::m_Predicates
protected

Definition at line 73 of file QmitkDataStorageFilterProxyModel.h.


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