Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
berryIEvaluationService.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 BlueBerry Platform
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 
18 #ifndef BERRYIEVALUATIONSERVICE_H
19 #define BERRYIEVALUATIONSERVICE_H
20 
22 
24 
25 namespace berry {
26 
27 struct IEvaluationContext;
28 struct IEvaluationReference;
29 struct IPropertyChangeListener;
30 
31 class Expression;
32 
81 {
83 
84 
87  static const QString RESULT; // = "org.blueberry.ui.services.result";
88 
92  static const QString PROP_NOTIFYING; // = "org.blueberry.ui.services.notifying";
93 
109  virtual void AddServiceListener(IPropertyChangeListener* listener) = 0;
110 
118  virtual void RemoveServiceListener(IPropertyChangeListener* listener) = 0;
119 
138  virtual SmartPointer<IEvaluationReference> AddEvaluationListener(
139  const SmartPointer<Expression>& expression,
140  IPropertyChangeListener* listener,
141  const QString& property) = 0;
142 
162  virtual void AddEvaluationReference(const SmartPointer<IEvaluationReference>& ref) = 0;
163 
170  virtual void RemoveEvaluationListener(const SmartPointer<IEvaluationReference>& ref) = 0;
171 
183  virtual SmartPointer<IEvaluationContext> GetCurrentState() const = 0;
184 
206  virtual void RequestEvaluation(const QString& propertyName) = 0;
207 };
208 
209 }
210 
211 Q_DECLARE_INTERFACE(berry::IEvaluationService, "org.blueberry.ui.IEvaluationService")
212 
213 #endif // BERRYIEVALUATIONSERVICE_H
static const QString PROP_NOTIFYING
Implements transparent reference counting.
#define berryObjectMacro(...)
Definition: berryMacros.h:37
#define BERRY_UI_QT