From f68a002e1844575e089315785490c49856e49133 Mon Sep 17 00:00:00 2001
From: Marc Dalmasso <marc.dalmasso@upc.edu>
Date: Thu, 15 Jun 2023 16:56:45 +0200
Subject: [PATCH] Add queue_size param read at startup

---
 cfg/ImageLocalBinarization.cfg            | 2 ++
 src/image_local_binarization_alg_node.cpp | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/cfg/ImageLocalBinarization.cfg b/cfg/ImageLocalBinarization.cfg
index 8f3f577..0851b6c 100755
--- a/cfg/ImageLocalBinarization.cfg
+++ b/cfg/ImageLocalBinarization.cfg
@@ -41,5 +41,7 @@ gen = ParameterGenerator()
 #gen.add("velocity_scale_factor",  double_t,  0,                               "Maximum velocity scale factor",  0.5,      0.0,  1.0)
 gen.add(           "window_size",     int_t,  0,                                  "Local threshold window size",   15,       3,  500)
 gen.add(                     "k",  double_t,  0,                 "Multiplicative constant for local deviation",   0.06,      0,  0.5)
+#not reconfigurable
+#gen.add(           "queue size",     int_t,  0,                                  "subscriber queue size for image_transport",   10,       1,  100)
 
 exit(gen.generate(PACKAGE, "ImageLocalBinarizationAlgorithm", "ImageLocalBinarization"))
diff --git a/src/image_local_binarization_alg_node.cpp b/src/image_local_binarization_alg_node.cpp
index b05eca5..56c22bf 100644
--- a/src/image_local_binarization_alg_node.cpp
+++ b/src/image_local_binarization_alg_node.cpp
@@ -9,8 +9,10 @@ ImageLocalBinarizationAlgNode::ImageLocalBinarizationAlgNode(void) :
   // [init publishers]
   this->image_out_publisher_ = this->it.advertiseCamera("image_out/image_raw", 1);
   
+  int queue_size=10;
+  this->private_node_handle_.getParam("queue_size", queue_size);
   // [init subscribers]
-  this->image_in_subscriber_ = this->it.subscribeCamera("image_in/image_raw", 1, &ImageLocalBinarizationAlgNode::image_in_callback,this);
+  this->image_in_subscriber_ = this->it.subscribeCamera("image_in/image_raw", queue_size, &ImageLocalBinarizationAlgNode::image_in_callback,this);
   pthread_mutex_init(&this->image_in_mutex_,NULL);
 
   
-- 
GitLab