浏览代码

More small performance tweaks for the plugin fw.

Sascha Zelzer 12 年之前
父节点
当前提交
fa067c5e31

+ 5 - 2
Libs/PluginFramework/ctkPluginFrameworkListeners.cpp

@@ -113,12 +113,15 @@ QSet<ctkServiceSlotEntry> ctkPluginFrameworkListeners::getMatchingServiceSlots(
   QMutexLocker lock(&mutex); Q_UNUSED(lock);
   QMutexLocker lock(&mutex); Q_UNUSED(lock);
 
 
   QSet<ctkServiceSlotEntry> set;
   QSet<ctkServiceSlotEntry> set;
+  set.reserve(serviceSet.size());
   // Check complicated or empty listener filters
   // Check complicated or empty listener filters
   int n = 0;
   int n = 0;
-  foreach (ctkServiceSlotEntry sse, complicatedListeners)
+  ctkLDAPExpr expr;
+  foreach (const ctkServiceSlotEntry& sse, complicatedListeners)
   {
   {
     ++n;
     ++n;
-    if (sse.getLDAPExpr().isNull() || sse.getLDAPExpr().evaluate(sr.d_func()->getProperties(), false))
+    expr = sse.getLDAPExpr();
+    if (expr.isNull() || expr.evaluate(sr.d_func()->getProperties(), false))
     {
     {
       set.insert(sse);
       set.insert(sse);
     }
     }

+ 1 - 1
Libs/PluginFramework/ctkServiceRegistration.h

@@ -144,7 +144,7 @@ public:
    * @see ctkPluginContext#ungetService
    * @see ctkPluginContext#ungetService
    * @see ctkServiceFactory#ungetService
    * @see ctkServiceFactory#ungetService
    */
    */
-  virtual void unregister();
+  void unregister();
 
 
   bool operator<(const ctkServiceRegistration& o) const;
   bool operator<(const ctkServiceRegistration& o) const;