Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::NodePredicateAnd Class Reference

Composite predicate that forms a logical AND (conjunction) from its child predicates. More...

#include <mitkNodePredicateAnd.h>

Inheritance diagram for mitk::NodePredicateAnd:
Collaboration diagram for mitk::NodePredicateAnd:

Public Member Functions

 mitkClassMacro (NodePredicateAnd, NodePredicateCompositeBase)
 
 mitkNewMacro2Param (NodePredicateAnd, const NodePredicateBase *, const NodePredicateBase *)
 
 mitkNewMacro3Param (NodePredicateAnd, const NodePredicateBase *, const NodePredicateBase *, const NodePredicateBase *)
 
 ~NodePredicateAnd () override
 Destructor. More...
 
bool CheckNode (const DataNode *node) const override
 Check whether the node satisfies all child predicates (logical AND). More...
 
- Public Member Functions inherited from mitk::NodePredicateCompositeBase
 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...
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 NodePredicateAnd ()
 Protected constructor, use static instantiation functions instead. More...
 
 NodePredicateAnd (const NodePredicateBase *p1, const NodePredicateBase *p2)
 Convenience constructor that adds p1 and p2 to list of child predicates Protected constructor, use static instantiation functions instead. More...
 
 NodePredicateAnd (const NodePredicateBase *p1, const NodePredicateBase *p2, const NodePredicateBase *p3)
 Convenience constructor that adds p1, p2 and p3 to list of child predicates Protected constructor, use static instantiation functions instead. More...
 

Additional Inherited Members

- Public Types inherited from mitk::NodePredicateCompositeBase
typedef std::list< NodePredicateBase::ConstPointer > ChildPredicates
 List type for storing child predicate smart pointers. More...
 
- Protected Attributes inherited from mitk::NodePredicateCompositeBase
ChildPredicates m_ChildPredicates
 List of child predicates managed by this composite. More...
 

Detailed Description

Composite predicate that forms a logical AND (conjunction) from its child predicates.

A node passes the check if and only if all child predicates return true. Child predicates are evaluated in order; evaluation short-circuits on the first false result.

NodePredicateDataType::New("Image"),
NodePredicateProperty::New("visible", BoolProperty::New(true)));
auto visibleImages = dataStorage->GetSubset(pred);
static Pointer New()
See also
NodePredicateOr, NodePredicateNot, NodePredicateCompositeBase

Definition at line 36 of file mitkNodePredicateAnd.h.

Constructor & Destructor Documentation

◆ ~NodePredicateAnd()

mitk::NodePredicateAnd::~NodePredicateAnd ( )
override

Destructor.

◆ NodePredicateAnd() [1/3]

mitk::NodePredicateAnd::NodePredicateAnd ( )
protected

Protected constructor, use static instantiation functions instead.

◆ NodePredicateAnd() [2/3]

mitk::NodePredicateAnd::NodePredicateAnd ( const NodePredicateBase *  p1,
const NodePredicateBase *  p2 
)
protected

Convenience constructor that adds p1 and p2 to list of child predicates Protected constructor, use static instantiation functions instead.

◆ NodePredicateAnd() [3/3]

mitk::NodePredicateAnd::NodePredicateAnd ( const NodePredicateBase *  p1,
const NodePredicateBase *  p2,
const NodePredicateBase *  p3 
)
protected

Convenience constructor that adds p1, p2 and p3 to list of child predicates Protected constructor, use static instantiation functions instead.

Member Function Documentation

◆ CheckNode()

bool mitk::NodePredicateAnd::CheckNode ( const DataNode *  node) const
overridevirtual

Check whether the node satisfies all child predicates (logical AND).

Parameters
[in]nodeThe DataNode to evaluate. Must not be nullptr.
Returns
true if all child predicates return true for the node.
Exceptions
std::invalid_argumentif no child predicates have been added or node is nullptr.

Implements mitk::NodePredicateBase.

◆ mitkClassMacro()

mitk::NodePredicateAnd::mitkClassMacro ( NodePredicateAnd  ,
NodePredicateCompositeBase   
)

◆ mitkNewMacro2Param()

mitk::NodePredicateAnd::mitkNewMacro2Param ( NodePredicateAnd  ,
const NodePredicateBase *  ,
const NodePredicateBase *   
)

◆ mitkNewMacro3Param()

mitk::NodePredicateAnd::mitkNewMacro3Param ( NodePredicateAnd  ,
const NodePredicateBase *  ,
const NodePredicateBase *  ,
const NodePredicateBase *   
)

◆ New()

static Pointer mitk::NodePredicateAnd::New ( )
static

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