Page MenuHomePhabricator

Provide standard NodePredicates
Open, WishlistPublic

Description

Frequently used node predicates, e.g. for filtering Images / Segmentations, non-helper-nodes etc. are used at different locations. It might make sense to find these locations and provide a global location for standard node predicates.
Using classes for node predicate definition instead of string would be preferred, so we need to clarify where to put the node predicates such that all required classes are known (e.g. mitk::TNodePredicateDataType<mitk::Image>::New() instead of mitk::NodePredicateDataType::New("Image")).

Event Timeline

kalali triaged this task as Wishlist priority.Feb 11 2020, 12:13 PM
kalali created this task.
kalali edited projects, added MITK (v2022.04), Restricted Project; removed MITK.Nov 18 2021, 1:48 PM

I would like to discuss the possibilities again since this it is a common thing that the same node predicates are defined over and over again in different classes.
Maybe someone can take the time and invest in some research to find possible solutions:

Main problem here (also mentioned partially in T27133#226601): If we want to have type NodePredicates (e.g. mitk::TNodePredicateDataType<mitk::Image>::New() instead of mitk::NodePredicateDataType::New("Image") - see task description), we need to have the dependencies to the required data type.

It might be helpful to create a list of data taypes used for NodePredicates inside MITK and list in which modules these data types are located.