Medical Imaging Interaction Toolkit  2018.4.99-0d336d68
Medical Imaging Interaction Toolkit
berryISourceProvider.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 
14 #ifndef BERRYISOURCEPROVIDER_H_
15 #define BERRYISOURCEPROVIDER_H_
16 
17 #include <berryObject.h>
18 
19 #include <QHash>
20 #include <QStringList>
21 
22 #include <QObject>
23 
24 namespace berry {
25 
26 struct ISourceProviderListener;
27 
43 struct ISourceProvider : public virtual Object
44 {
45 
47 
48  typedef QHash<QString, Object::ConstPointer> StateMapType;
49 
50  ~ISourceProvider() override;
51 
52 
60  virtual void AddSourceProviderListener(ISourceProviderListener* listener) = 0;
61 
76  virtual StateMapType GetCurrentState() const = 0;
77 
86  virtual QList<QString> GetProvidedSourceNames() const = 0;
87 
95  virtual void RemoveSourceProviderListener(ISourceProviderListener* listener) = 0;
96 };
97 
98 }
99 
100 Q_DECLARE_INTERFACE(berry::ISourceProvider, "org.blueberry.ui.ISourceProvider")
101 
102 #endif /* BERRYISOURCEPROVIDER_H_ */
berryObjectMacro(berry::ISourceProvider)
virtual QList< QString > GetProvidedSourceNames() const =0
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:72
~ISourceProvider() override
virtual void RemoveSourceProviderListener(ISourceProviderListener *listener)=0
QHash< QString, Object::ConstPointer > StateMapType
virtual StateMapType GetCurrentState() const =0
virtual void AddSourceProviderListener(ISourceProviderListener *listener)=0