From d3cf128aaa27a76dc7f3e566159079eb6c8909cc Mon Sep 17 00:00:00 2001
From: Moritz Maxeiner <mm@ucw.sh>
Date: Wed, 3 Aug 2022 13:45:49 +0200
Subject: [PATCH] Replace std::shared_ptr<cv::Mat> with cv::Mat

cv::Mat is already reference counted.
---
 Src/Interfaces/IBioTrackerPlugin.h              | 8 ++++----
 Src/Interfaces/IModel/IModelTrackingAlgorithm.h | 3 +--
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/Src/Interfaces/IBioTrackerPlugin.h b/Src/Interfaces/IBioTrackerPlugin.h
index e98547d..e940cf3 100644
--- a/Src/Interfaces/IBioTrackerPlugin.h
+++ b/Src/Interfaces/IBioTrackerPlugin.h
@@ -45,7 +45,7 @@ private:
     virtual void connectInterfaces();
 
 Q_SIGNALS:
-    void emitCvMat(std::shared_ptr<cv::Mat> mat, QString name);
+    void emitCvMat(cv::Mat mat, QString name);
     /**
      * Will be sent when tracking is doen to multiple components of the core
      * app An example is the visualisation which is then updated
@@ -55,8 +55,8 @@ Q_SIGNALS:
     void emitCorePermission(std::pair<ENUMS::COREPERMISSIONS, bool>);
 
 public Q_SLOTS:
-    virtual void receiveCurrentFrameFromMainApp(std::shared_ptr<cv::Mat> mat,
-                                                uint frameNumber) = 0;
+    virtual void receiveCurrentFrameFromMainApp(cv::Mat mat,
+                                                uint    frameNumber) = 0;
     /**
      * Recieves area descriptor data for rectification (px to cm) and for
      * tracking arena boundary
@@ -64,7 +64,7 @@ public Q_SLOTS:
     virtual void receiveAreaDescriptor(IModelAreaDescriptor* areaDescr);
 
     // private Q_SLOTS:
-    //    virtual void receiveCvMatFromController(std::shared_ptr<cv::Mat> mat,
+    //    virtual void receiveCvMatFromController(cv::Mat mat,
     //    QString name) = 0;
 };
 
diff --git a/Src/Interfaces/IModel/IModelTrackingAlgorithm.h b/Src/Interfaces/IModel/IModelTrackingAlgorithm.h
index 8621ae1..5957672 100644
--- a/Src/Interfaces/IModel/IModelTrackingAlgorithm.h
+++ b/Src/Interfaces/IModel/IModelTrackingAlgorithm.h
@@ -9,8 +9,7 @@ class BT_INTERFACES_API IModelTrackingAlgorithm : public IModel
 public:
     IModelTrackingAlgorithm(QObject* parent = 0);
 
-    virtual void doTracking(std::shared_ptr<cv::Mat> image,
-                            uint                     frameNumber) = 0;
+    virtual void doTracking(cv::Mat image, uint frameNumber) = 0;
 
 signals:
     void emitTrackingDone();
-- 
GitLab