ctkPluginFrameworkContextPrivate_p.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #ifndef CTKPLUGINFRAMEWORKCONTEXTPRIVATE_P_H
  2. #define CTKPLUGINFRAMEWORKCONTEXTPRIVATE_P_H
  3. #include <QDebug>
  4. #include <QMutex>
  5. #include "ctkPluginFrameworkContext.h"
  6. namespace ctk {
  7. class Plugin;
  8. class PluginFrameworkContextPrivate {
  9. private:
  10. /**
  11. * All plugins in this framework.
  12. */
  13. //Plugins plugins;
  14. /**
  15. * All registered services in this framework.
  16. */
  17. //Services services;
  18. /**
  19. * System bundle
  20. */
  21. //SystemPlugin systemPlugin;
  22. /**
  23. * Framework id.
  24. */
  25. int id;
  26. public:
  27. /**
  28. * global lock.
  29. */
  30. static QMutex globalFwLock;
  31. /**
  32. * Id to use for next instance of plugin framework.
  33. */
  34. static int globalId;
  35. PluginFrameworkContext::Properties props;
  36. /**
  37. * Contruct a framework context
  38. *
  39. */
  40. PluginFrameworkContextPrivate(const PluginFrameworkContext::Properties& initProps);
  41. /**
  42. * Initialize the framework
  43. *
  44. */
  45. void init();
  46. /**
  47. * Undo as much as possible of what init() does.
  48. *
  49. */
  50. void uninit();
  51. /**
  52. *
  53. */
  54. int getId();
  55. /**
  56. * Check that the plugin belongs to this framework instance.
  57. *
  58. */
  59. void checkOurPlugin(Plugin* b);
  60. /**
  61. * Log message for debugging framework
  62. *
  63. */
  64. QDebug log();
  65. };
  66. }
  67. #endif // CTKPLUGINFRAMEWORKCONTEXTPRIVATE_P_H