Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
berryIEvaluationContext.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 #ifndef BERRYIEVALUATIONCONTEXT_H_
18 #define BERRYIEVALUATIONCONTEXT_H_
19 
20 #include <berryMacros.h>
21 #include <berryObject.h>
22 
24 
25 namespace berry {
26 
41 {
42 
44 
45 
50  static Object::ConstPointer UNDEFINED_VARIABLE;
51 
52  virtual ~IEvaluationContext();
53 
60  virtual IEvaluationContext* GetParent() const = 0;
61 
67  virtual IEvaluationContext* GetRoot() const = 0;
68 
80  virtual void SetAllowPluginActivation(bool value) = 0;
81 
91  virtual bool GetAllowPluginActivation() const = 0;
92 
99  virtual Object::ConstPointer GetDefaultVariable() const = 0;
100 
109  virtual void AddVariable(const QString& name, const Object::ConstPointer& value) = 0;
110 
119  virtual Object::ConstPointer RemoveVariable(const QString& name) = 0;
120 
128  virtual Object::ConstPointer GetVariable(const QString& name) const = 0;
129 
144  virtual Object::ConstPointer ResolveVariable(const QString& name, const QList<Object::Pointer>& args) const = 0;
145 };
146 
147 } // namespace berry
148 
149 #endif /*BERRYIEVALUATIONCONTEXT_H_*/
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:78
#define berryObjectMacro(...)
Definition: berryMacros.h:37