Medical Imaging Interaction Toolkit  2018.4.99-bd7b41ba
Medical Imaging Interaction Toolkit
mitkIPropertyFilters.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 mitkIPropertyFilters_h
14 #define mitkIPropertyFilters_h
15 
16 #include <MitkCoreExports.h>
17 #include <map>
18 #include <mitkBaseProperty.h>
19 #include <mitkServiceInterface.h>
20 #include <string>
21 
22 namespace mitk
23 {
24  class PropertyFilter;
25 
35  {
36  public:
37  virtual ~IPropertyFilters();
38 
46  virtual bool AddFilter(const PropertyFilter &filter, const std::string &className = "", bool overwrite = false) = 0;
47 
54  virtual std::map<std::string, BaseProperty::Pointer> ApplyFilter(
55  const std::map<std::string, BaseProperty::Pointer> &propertyMap, const std::string &className = "") const = 0;
56 
62  virtual PropertyFilter GetFilter(const std::string &className = "") const = 0;
63 
69  virtual bool HasFilter(const std::string &className = "") const = 0;
70 
73  virtual void RemoveAllFilters() = 0;
74 
79  virtual void RemoveFilter(const std::string &className = "") = 0;
80  };
81 }
82 
83 MITK_DECLARE_SERVICE_INTERFACE(mitk::IPropertyFilters, "org.mitk.IPropertyFilters")
84 
85 #endif
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
#define MITKCORE_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
Interface of property filters service.
Consists of blacklist and whitelist entries.