Medical Imaging Interaction Toolkit  2018.4.99-b7f3afaa
Medical Imaging Interaction Toolkit
berryIExtensionRegistry.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 BERRYIEXTENSIONREGISTRY_H
15 #define BERRYIEXTENSIONREGISTRY_H
16 
18 
19 #include <berrySmartPointer.h>
20 
21 #include <QList>
22 
23 class QTranslator;
24 
25 namespace berry {
26 
27 struct IConfigurationElement;
28 struct IContributor;
29 struct IExtension;
30 struct IExtensionPoint;
31 struct IExtensionPointFilter;
32 struct IRegistryEventListener;
33 
73 {
74 
75  virtual ~IExtensionRegistry();
76 
87  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
88  const QString& extensionPointId) const = 0;
89 
102  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
103  const QString& namespaze, const QString& extensionPointName) const = 0;
104 
118  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
119  const QString& namespaze, const QString& extensionPointName, const QString& extensionId) const = 0;
120 
129  virtual SmartPointer<IExtension> GetExtension(const QString& extensionId) const = 0;
130 
143  virtual SmartPointer<IExtension> GetExtension(const QString& extensionPointId,
144  const QString& extensionId) const = 0;
145 
160  virtual SmartPointer<IExtension> GetExtension(const QString& namespaze,
161  const QString& extensionPointName,
162  const QString& extensionId) const = 0;
163 
173  virtual SmartPointer<IExtensionPoint> GetExtensionPoint(const QString& extensionPointId) const = 0;
174 
186  virtual SmartPointer<IExtensionPoint> GetExtensionPoint(const QString& namespaze,
187  const QString& extensionPointName) const = 0;
188 
195  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints() const = 0;
196 
205  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints(const QString& namespaze) const = 0;
206 
216  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints(
217  const SmartPointer<IContributor>& contributor) const = 0;
218 
227  virtual QList<SmartPointer<IExtension> > GetExtensions(const QString& namespaze) const = 0;
228 
236  virtual QList<SmartPointer<IExtension> > GetExtensions(const SmartPointer<IContributor>& contributor) const = 0;
237 
250  virtual QList<QString> GetNamespaces() const = 0;
251 
281  virtual bool AddContribution(QIODevice* is, const SmartPointer<IContributor>& contributor,
282  bool persist, const QString& name, QTranslator* translationBundle, QObject* token) = 0;
283 
299  virtual bool RemoveExtension(const SmartPointer<IExtension>& extension, QObject* token) = 0;
300 
317  virtual bool RemoveExtensionPoint(const SmartPointer<IExtensionPoint>& extensionPoint, QObject* token) = 0;
318 
330  virtual void Stop(QObject* token) = 0;
331 
352  virtual void AddListener(IRegistryEventListener* listener, const QString& extensionPointId = QString()) = 0;
353 
373  virtual void AddListener(IRegistryEventListener *listener, const IExtensionPointFilter& filter) = 0;
374 
383  virtual void RemoveListener(IRegistryEventListener* listener) = 0;
384 
394  virtual bool IsMultiLanguage() const = 0;
395 };
396 
397 }
398 
399 Q_DECLARE_INTERFACE(berry::IExtensionRegistry, "org.blueberry.service.IExtensionRegistry")
400 
401 #endif // BERRYIEXTENSIONREGISTRY_H
Implements transparent reference counting.
#define org_blueberry_core_runtime_EXPORT