Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkPropertyFilter.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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef mitkPropertyFilter_h
18 #define mitkPropertyFilter_h
19 
20 #include <MitkCoreExports.h>
21 #include <map>
22 #include <mitkBaseProperty.h>
23 #include <string>
24 
25 namespace mitk
26 {
35  {
36  public:
39  enum List
40  {
42  Whitelist
43  };
44 
46  ~PropertyFilter();
47 
48  PropertyFilter(const PropertyFilter &other);
49  PropertyFilter &operator=(PropertyFilter other);
50 
56  void AddEntry(const std::string &propertyName, List list);
57 
63  std::map<std::string, BaseProperty::Pointer> Apply(
64  const std::map<std::string, BaseProperty::Pointer> &propertyMap) const;
65 
72  bool HasEntry(const std::string &propertyName, List list) const;
73 
78  bool IsEmpty() const;
79 
84  void RemoveAllEntries(List list);
85 
91  void RemoveEntry(const std::string &propertyName, List list);
92 
93  private:
94  class Impl;
95  Impl *m_Impl;
96  };
97 }
98 
99 #endif
#define MITKCORE_EXPORT
List
Specifies the type of a filter entry.
DataCollection - Class to facilitate loading/accessing structured data.
Consists of blacklist and whitelist entries.