Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::NodePredicateCompositeBase Class Referenceabstract

Abstract base class for composite predicates that contain child predicates (e.g., AND, OR, NOT). More...

#include <mitkNodePredicateCompositeBase.h>

Inheritance diagram for mitk::NodePredicateCompositeBase:
Collaboration diagram for mitk::NodePredicateCompositeBase:

Public Types

typedef std::list< NodePredicateBase::ConstPointer > ChildPredicates
 List type for storing child predicate smart pointers. More...
 

Public Member Functions

 mitkClassMacro (NodePredicateCompositeBase, NodePredicateBase)
 
 ~NodePredicateCompositeBase () override=0
 Pure virtual destructor (with implementation) making this class abstract. More...
 
virtual void AddPredicate (const NodePredicateBase *p)
 Add a child predicate to this composite. More...
 
virtual void RemovePredicate (const NodePredicateBase *p)
 Remove a child predicate from this composite. More...
 
virtual ChildPredicates GetPredicates () const
 Return all child predicates (immutable copy). More...
 
- Public Member Functions inherited from mitk::NodePredicateBase
 mitkClassMacroItkParent (NodePredicateBase, itk::Object)
 
 ~NodePredicateBase () override
 Virtual destructor. More...
 
virtual bool CheckNode (const mitk::DataNode *node) const =0
 Evaluate whether the given node satisfies this predicate's condition. More...
 

Protected Attributes

ChildPredicates m_ChildPredicates
 List of child predicates managed by this composite. More...
 

Detailed Description

Abstract base class for composite predicates that contain child predicates (e.g., AND, OR, NOT).

This class provides methods to add, remove, and retrieve child predicates. It serves as the foundation for predicates that combine multiple conditions, such as NodePredicateAnd, NodePredicateOr, and NodePredicateNot.

See also
NodePredicateAnd, NodePredicateOr, NodePredicateNot, NodePredicateBase

Definition at line 31 of file mitkNodePredicateCompositeBase.h.

Member Typedef Documentation

◆ ChildPredicates

typedef std::list<NodePredicateBase::ConstPointer> mitk::NodePredicateCompositeBase::ChildPredicates

List type for storing child predicate smart pointers.

Definition at line 37 of file mitkNodePredicateCompositeBase.h.

Constructor & Destructor Documentation

◆ ~NodePredicateCompositeBase()

mitk::NodePredicateCompositeBase::~NodePredicateCompositeBase ( )
overridepure virtual

Pure virtual destructor (with implementation) making this class abstract.

Member Function Documentation

◆ AddPredicate()

virtual void mitk::NodePredicateCompositeBase::AddPredicate ( const NodePredicateBase *  p)
virtual

Add a child predicate to this composite.

Parameters
[in]pThe child predicate to add. Must not be nullptr.
See also
RemovePredicate, GetPredicates

Reimplemented in mitk::NodePredicateNot.

◆ GetPredicates()

virtual ChildPredicates mitk::NodePredicateCompositeBase::GetPredicates ( ) const
virtual

Return all child predicates (immutable copy).

Returns
A copy of the list of child predicates.

◆ mitkClassMacro()

mitk::NodePredicateCompositeBase::mitkClassMacro ( NodePredicateCompositeBase  ,
NodePredicateBase   
)

◆ RemovePredicate()

virtual void mitk::NodePredicateCompositeBase::RemovePredicate ( const NodePredicateBase *  p)
virtual

Remove a child predicate from this composite.

Parameters
[in]pThe child predicate to remove.
See also
AddPredicate

Member Data Documentation

◆ m_ChildPredicates

ChildPredicates mitk::NodePredicateCompositeBase::m_ChildPredicates
protected

List of child predicates managed by this composite.

Definition at line 69 of file mitkNodePredicateCompositeBase.h.


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