Index: trunk/lib/FlairCore/src/DoubleSpinBox.cpp
===================================================================
--- trunk/lib/FlairCore/src/DoubleSpinBox.cpp	(revision 435)
+++ trunk/lib/FlairCore/src/DoubleSpinBox.cpp	(revision 437)
@@ -24,5 +24,5 @@
 
 DoubleSpinBox::DoubleSpinBox(const LayoutPosition *position, string name,
-                             double min, double max, double step, int decimals,
+                             double min, double max, double step, uint16_t decimals,
                              double default_value)
     : Box(position, name, "DoubleSpinBox") {
@@ -46,5 +46,5 @@
 DoubleSpinBox::DoubleSpinBox(const LayoutPosition *position, string name,
                              string suffix, double min, double max, double step,
-                             int decimals, double default_value)
+                             uint16_t decimals, double default_value)
     : Box(position, name, "DoubleSpinBox") {
   // update value from xml file
Index: trunk/lib/FlairCore/src/DoubleSpinBox.h
===================================================================
--- trunk/lib/FlairCore/src/DoubleSpinBox.h	(revision 435)
+++ trunk/lib/FlairCore/src/DoubleSpinBox.h	(revision 437)
@@ -43,5 +43,5 @@
   */
   DoubleSpinBox(const LayoutPosition *position, std::string name, double min,
-                double max, double step, int decimals = 2,
+                double max, double step, uint16_t decimals = 2,
                 double default_value = 0);
 
@@ -63,5 +63,5 @@
   DoubleSpinBox(const LayoutPosition *position, std::string name,
                 std::string suffix, double min, double max, double step,
-                int decimals = 2, double default_value = 0);
+                uint16_t decimals = 2, double default_value = 0);
 
   /*!
Index: trunk/lib/FlairCore/src/SendData.cpp
===================================================================
--- trunk/lib/FlairCore/src/SendData.cpp	(revision 435)
+++ trunk/lib/FlairCore/src/SendData.cpp	(revision 437)
@@ -30,5 +30,5 @@
 
 SendData::SendData(const LayoutPosition *position, string name, string type,
-                   uint16_t default_periodms, bool default_enabled)
+                   uint16_t default_periodms, bool default_enabled, uint16_t default_nb_buffering)
     : Widget(position->getLayout(), name, type) {
   pimpl_ = new SendData_impl();
@@ -39,4 +39,5 @@
   pimpl_->send_period = default_periodms;
   pimpl_->is_enabled = default_enabled;
+  pimpl_->nb_buffering = default_nb_buffering;
 
   SetVolatileXmlProp("row", position->Row());
@@ -46,4 +47,6 @@
   GetPersistentXmlProp("enabled", pimpl_->is_enabled);
   SetPersistentXmlProp("enabled", pimpl_->is_enabled);
+  GetPersistentXmlProp("nb_buf", pimpl_->nb_buffering);
+  SetPersistentXmlProp("nb_buf", pimpl_->nb_buffering);
 
   delete position;
@@ -67,13 +70,17 @@
 
 void SendData::XmlEvent(void) {
-  uint16_t send_period;
+  uint16_t send_period,nb_buffering;
   bool is_enabled;
   bool something_changed = false;
 
-  if (GetPersistentXmlProp("period", send_period) &&
-      GetPersistentXmlProp("enabled", is_enabled)) {
+  if (GetPersistentXmlProp("period", send_period) && GetPersistentXmlProp("enabled", is_enabled) && GetPersistentXmlProp("nb_buf", nb_buffering)) {
     if (send_period != SendPeriod())
       something_changed = true;
     if (is_enabled != IsEnabled())
+      something_changed = true;
+  }
+  
+  if (GetPersistentXmlProp("nb_buf", nb_buffering)) {
+    if (nb_buffering != NbBuffering())
       something_changed = true;
   }
@@ -84,4 +91,5 @@
     SetSendPeriod(send_period);
     SetEnabled(is_enabled);
+    SetNbBuffering(nb_buffering);
 
     getFrameworkManager()->UpdateSendData(this);
@@ -91,4 +99,5 @@
     SetVolatileXmlProp("period", send_period);
     SetVolatileXmlProp("enabled", is_enabled);
+    SetVolatileXmlProp("nb_buf", nb_buffering);
     SendXml();
 
@@ -102,4 +111,6 @@
 
 uint16_t SendData::SendPeriod(void) const { return pimpl_->send_period; }
+
+uint16_t SendData::NbBuffering(void) const { return pimpl_->nb_buffering; }
 
 bool SendData::IsEnabled(void) const { return pimpl_->is_enabled; }
@@ -116,4 +127,6 @@
 void SendData::SetSendPeriod(uint16_t value) { pimpl_->send_period = value; }
 
+void SendData::SetNbBuffering(uint16_t value) { pimpl_->nb_buffering = value; }
+
 } // end namespace core
 } // end namespace flair
Index: trunk/lib/FlairCore/src/SendData.h
===================================================================
--- trunk/lib/FlairCore/src/SendData.h	(revision 435)
+++ trunk/lib/FlairCore/src/SendData.h	(revision 437)
@@ -34,5 +34,5 @@
   */
   SendData(const LayoutPosition *position, std::string name, std::string type,
-           uint16_t default_periodms = 100, bool default_enabled = false);
+           uint16_t default_periodms = 100, bool default_enabled = false, uint16_t default_nb_buffering=1);
 
   /*!
@@ -54,4 +54,5 @@
   uint16_t SendPeriod(void) const; // in ms
   bool IsEnabled(void) const;
+  uint16_t NbBuffering(void) const;
 
 protected:
@@ -88,4 +89,5 @@
 
   void SetSendPeriod(uint16_t value);
+  void SetNbBuffering(uint16_t value);
   void SetEnabled(bool value);
 
Index: trunk/lib/FlairCore/src/Vector3DSpinBox.cpp
===================================================================
--- trunk/lib/FlairCore/src/Vector3DSpinBox.cpp	(revision 435)
+++ trunk/lib/FlairCore/src/Vector3DSpinBox.cpp	(revision 437)
@@ -26,5 +26,5 @@
 Vector3DSpinBox::Vector3DSpinBox(const LayoutPosition *position, string name,
                                  double min, double max, double step,
-                                 int decimals, core::Vector3Df default_value)
+                                 uint16_t decimals, core::Vector3Df default_value)
     : Box(position, name, "Vector3DSpinBox") {
   // update value from xml file
Index: trunk/lib/FlairCore/src/Vector3DSpinBox.h
===================================================================
--- trunk/lib/FlairCore/src/Vector3DSpinBox.h	(revision 435)
+++ trunk/lib/FlairCore/src/Vector3DSpinBox.h	(revision 437)
@@ -43,5 +43,5 @@
   */
   Vector3DSpinBox(const LayoutPosition *position, std::string name, double min,
-                  double max, double step, int decimals = 2,
+                  double max, double step, uint16_t decimals = 2,
                   core::Vector3Df default_value = core::Vector3Df(0, 0, 0));
 
Index: trunk/lib/FlairCore/src/unexported/SendData_impl.h
===================================================================
--- trunk/lib/FlairCore/src/unexported/SendData_impl.h	(revision 435)
+++ trunk/lib/FlairCore/src/unexported/SendData_impl.h	(revision 437)
@@ -30,4 +30,5 @@
   size_t send_size;
   uint16_t send_period;
+  uint16_t nb_buffering;
 };
 
