Medical Imaging Interaction Toolkit  2024.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkNodePredicateBase.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkNodePredicateBase_h
14 #define mitkNodePredicateBase_h
15 
16 #include "itkObject.h"
17 #include <MitkCoreExports.h>
18 #include <mitkCommon.h>
19 
20 namespace mitk
21 {
22  class DataNode;
23  //##Documentation
24  //## @brief Interface for evaluation conditions used in the DataStorage class GetSubset() method
25  //##
26  //## Classes that inherit this interface can be used as predicates in the GetSubset() method
27  //## of mitk::DataStorage. By combining different predicate objects, the user can form complex
28  //## queries like "give me all nodes that either contain a surface object or a binary segmentation
29  //## and that are tagged as Organtype == 'Liver'".
30  //## @warning NodePredicates are now derived from itk::Object and make thus use of the smart pointer concept.
31  //## As a result predicates should only store raw pointers because for one thing they are not owners
32  //## of these objects and should not keep them alive.
33  //##
34  //## @ingroup DataStorage
35  class MITKCORE_EXPORT NodePredicateBase : public itk::Object
36  {
37  public:
39 
40  //##Documentation
41  //## @brief Standard Destructor
42  ~NodePredicateBase() override;
43 
44  //##Documentation
45  //## @brief This method will be used to evaluate the node. Has to be overwritten in subclasses
46  virtual bool CheckNode(const mitk::DataNode *node) const = 0;
47  };
48 
49 } // namespace mitk
50 
51 #endif
mitk::NodePredicateBase
Interface for evaluation conditions used in the DataStorage class GetSubset() method.
Definition: mitkNodePredicateBase.h:35
mitkClassMacroItkParent
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:45
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
MitkCoreExports.h
mitkCommon.h
MITKCORE_EXPORT
#define MITKCORE_EXPORT
Definition: MitkCoreExports.h:15
mitk::DataNode
Class for nodes of the DataTree.
Definition: mitkDataNode.h:63