Medical Imaging Interaction Toolkit  2021.10.99-1c4db16f
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 
72 {
73 
74  virtual ~IExtensionRegistry();
75 
86  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
87  const QString& extensionPointId) const = 0;
88 
101  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
102  const QString& namespaze, const QString& extensionPointName) const = 0;
103 
117  virtual QList<SmartPointer<IConfigurationElement> > GetConfigurationElementsFor(
118  const QString& namespaze, const QString& extensionPointName, const QString& extensionId) const = 0;
119 
128  virtual SmartPointer<IExtension> GetExtension(const QString& extensionId) const = 0;
129 
142  virtual SmartPointer<IExtension> GetExtension(const QString& extensionPointId,
143  const QString& extensionId) const = 0;
144 
159  virtual SmartPointer<IExtension> GetExtension(const QString& namespaze,
160  const QString& extensionPointName,
161  const QString& extensionId) const = 0;
162 
172  virtual SmartPointer<IExtensionPoint> GetExtensionPoint(const QString& extensionPointId) const = 0;
173 
185  virtual SmartPointer<IExtensionPoint> GetExtensionPoint(const QString& namespaze,
186  const QString& extensionPointName) const = 0;
187 
194  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints() const = 0;
195 
204  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints(const QString& namespaze) const = 0;
205 
215  virtual QList<SmartPointer<IExtensionPoint> > GetExtensionPoints(
216  const SmartPointer<IContributor>& contributor) const = 0;
217 
226  virtual QList<SmartPointer<IExtension> > GetExtensions(const QString& namespaze) const = 0;
227 
235  virtual QList<SmartPointer<IExtension> > GetExtensions(const SmartPointer<IContributor>& contributor) const = 0;
236 
249  virtual QList<QString> GetNamespaces() const = 0;
250 
279  virtual bool AddContribution(QIODevice* is, const SmartPointer<IContributor>& contributor,
280  bool persist, const QString& name, QTranslator* translationBundle, QObject* token) = 0;
281 
296  virtual bool RemoveExtension(const SmartPointer<IExtension>& extension, QObject* token) = 0;
297 
313  virtual bool RemoveExtensionPoint(const SmartPointer<IExtensionPoint>& extensionPoint, QObject* token) = 0;
314 
325  virtual void Stop(QObject* token) = 0;
326 
347  virtual void AddListener(IRegistryEventListener* listener, const QString& extensionPointId = QString()) = 0;
348 
368  virtual void AddListener(IRegistryEventListener *listener, const IExtensionPointFilter& filter) = 0;
369 
378  virtual void RemoveListener(IRegistryEventListener* listener) = 0;
379 
389  virtual bool IsMultiLanguage() const = 0;
390 };
391 
392 }
393 
394 Q_DECLARE_INTERFACE(berry::IExtensionRegistry, "org.blueberry.service.IExtensionRegistry")
395 
396 #endif // BERRYIEXTENSIONREGISTRY_H
Implements transparent reference counting.
#define org_blueberry_core_runtime_EXPORT