Medical Imaging Interaction Toolkit  2018.4.99-e1268d66
Medical Imaging Interaction Toolkit
berryIPropertyTester.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 BERRYIPROPERTYTESTER_H_
14 #define BERRYIPROPERTYTESTER_H_
15 
16 #include <berryMacros.h>
17 #include <berryObject.h>
18 
20 
21 #include <Poco/Any.h>
22 
23 #include <string>
24 #include <vector>
25 
26 #include <QObject>
27 
28 namespace berry {
29 
39 {
40 
42 
43  ~IPropertyTester() override;
44 
54  virtual bool Handles(const QString& namespaze, const QString& property) = 0;
55 
63  virtual bool IsInstantiated() = 0;
64 
72  virtual bool IsDeclaringPluginActive() = 0;
73 
82  virtual IPropertyTester* Instantiate() = 0;
83 
99  virtual bool Test(Object::ConstPointer receiver, const QString& property,
100  const QList<Object::Pointer>& args, Object::Pointer expectedValue) = 0;
101 
102 };
103 
104 } // namespace berry
105 
106 Q_DECLARE_INTERFACE(berry::IPropertyTester, "org.blueberry.IPropertyTester")
107 
108 #endif /*BERRYIPROPERTYTESTER_H_*/
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:72
#define berryObjectMacro(...)
Definition: berryMacros.h:33