From 8997bb000f42efe2adf14fbc536b5e75601578e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Tue, 23 Feb 2021 09:56:22 -0500
Subject: [PATCH] CallFactory: forward-declare VideoGenerator

Change-Id: Idb36ee1a0ac04c577ae454a855280d9bd63f3245
---
 src/call.h        | 9 +++++----
 src/sip/sipcall.h | 4 ++--
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/call.h b/src/call.h
index bdf4ca5524..48d74cbb48 100644
--- a/src/call.h
+++ b/src/call.h
@@ -56,6 +56,10 @@ class Call;
 
 using CallMap = std::map<std::string, std::shared_ptr<Call>>;
 
+namespace video {
+class VideoGenerator;
+}
+
 /*
  * @file call.h
  * @brief A call is the base class for protocol-based calls
@@ -64,9 +68,6 @@ using CallMap = std::map<std::string, std::shared_ptr<Call>>;
 class Call : public Recordable, public PeerRecorder, public std::enable_shared_from_this<Call>
 {
 public:
-    // Opaque type to pass video receiver instances.
-    typedef void* VideoReceiverOpq;
-
     // A map to pass media attributes between the daemon and the clients.
     using MediaMap = std::map<std::string, std::string>;
     /**
@@ -337,7 +338,7 @@ public: // media management
 
     virtual void enterConference(const std::string& confId) = 0;
     virtual void exitConference() = 0;
-    virtual VideoReceiverOpq getVideoReceiver() = 0;
+    virtual video::VideoGenerator* getVideoReceiver() = 0;
 
     std::vector<std::map<std::string, std::string>> getConferenceInfos() const
     {
diff --git a/src/sip/sipcall.h b/src/sip/sipcall.h
index e3ba523946..76e63cc8bb 100644
--- a/src/sip/sipcall.h
+++ b/src/sip/sipcall.h
@@ -121,9 +121,9 @@ public:
 
     void enterConference(const std::string& confId) override;
     void exitConference() override;
-    VideoReceiverOpq getVideoReceiver() override
+    video::VideoGenerator* getVideoReceiver() override
     {
-        return reinterpret_cast<VideoReceiverOpq>(videortp_->getVideoReceive().get());
+        return videortp_->getVideoReceive().get();
     }
 
     // Overrides of Recordable base class.
-- 
GitLab