From de2a5b6bb1c3f777e84f8cdc2d26efbe4fd6aac9 Mon Sep 17 00:00:00 2001
From: Fabian Reister <fabian.reister@kit.edu>
Date: Tue, 13 Jul 2021 17:16:06 +0200
Subject: [PATCH] ArvizDrawerBase: uses ScopedClient

---
 .../ArViz/Client/drawer/ArVizDrawerBase.cpp   | 16 ++++++++++-----
 .../ArViz/Client/drawer/ArVizDrawerBase.h     | 20 ++++++++++---------
 2 files changed, 22 insertions(+), 14 deletions(-)

diff --git a/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.cpp b/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.cpp
index a19032cd0..9d2c8e7ed 100644
--- a/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.cpp
+++ b/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.cpp
@@ -6,21 +6,27 @@
 namespace armarx
 {
 
-    ArVizDrawerBase::ArVizDrawerBase(armarx::viz::Client &arviz) : arvizClient(arviz) {}
+    ArVizDrawerBase::ArVizDrawerBase(armarx::viz::Client& arviz) : arvizClient(arviz) {}
 
     ArVizDrawerBase::~ArVizDrawerBase() = default;
 
-    viz::Client &ArVizDrawerBase::arviz() { return arvizClient; }
+    viz::ScopedClient& ArVizDrawerBase::arviz()
+    {
+        return arvizClient;
+    }
 
-    const viz::Client &ArVizDrawerBase::arviz() const { return arvizClient; }
+    const viz::ScopedClient& ArVizDrawerBase::arviz() const
+    {
+        return arvizClient;
+    }
 
-    void ArVizDrawerBase::commit(const viz::Layer &layer)
+    void ArVizDrawerBase::commit(const viz::Layer& layer)
     {
         std::lock_guard guard{layerMtx};
         arvizClient.commit(layer);
     }
 
-    void ArVizDrawerBase::commit(const std::vector<viz::Layer> &layers)
+    void ArVizDrawerBase::commit(const std::vector<viz::Layer>& layers)
     {
         std::lock_guard guard{layerMtx};
         arvizClient.commit(layers);
diff --git a/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.h b/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.h
index f7c813be7..e302acc5c 100644
--- a/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.h
+++ b/source/RobotAPI/components/ArViz/Client/drawer/ArVizDrawerBase.h
@@ -24,6 +24,8 @@
 #include <mutex>
 #include <vector>
 
+#include "RobotAPI/components/ArViz/Client/ScopedClient.h"
+
 namespace armarx
 {
     // forward declaration
@@ -42,19 +44,19 @@ namespace armarx
      */
     class ArVizDrawerBase
     {
-      public:
-        ArVizDrawerBase(armarx::viz::Client &arviz);
+    public:
+        ArVizDrawerBase(armarx::viz::Client& arviz);
         virtual ~ArVizDrawerBase();
 
-      protected:
-        viz::Client &arviz();
-        const viz::Client &arviz() const;
+    protected:
+        viz::ScopedClient& arviz();
+        const viz::ScopedClient& arviz() const;
 
-        void commit(const viz::Layer &layer);
-        void commit(const std::vector<viz::Layer> &layers);
+        void commit(const viz::Layer& layer);
+        void commit(const std::vector<viz::Layer>& layers);
 
-      private:
-        viz::Client &arvizClient;
+    private:
+        viz::ScopedClient arvizClient;
 
         std::mutex layerMtx;
     };
-- 
GitLab