From a7dc546cd2ae6e139a035e38cee285ce6afb986a Mon Sep 17 00:00:00 2001
From: Andrei <andrei.herdt@inrialpes.fr>
Date: Mon, 10 Jan 2011 09:10:04 +0100
Subject: [PATCH] Struct for linear inequality sets

- Compressed matrices x.D and y.D and dense vector dc
- clear() method for zeroing
---
 src/privatepgtypes.cpp |  7 +++++++
 src/privatepgtypes.h   | 22 ++++++++++++++++++++++
 2 files changed, 29 insertions(+)

diff --git a/src/privatepgtypes.cpp b/src/privatepgtypes.cpp
index 7b49a313..3d323fe6 100644
--- a/src/privatepgtypes.cpp
+++ b/src/privatepgtypes.cpp
@@ -178,4 +178,11 @@ namespace PatternGeneratorJRL
         }
     }
 
+  void linear_inequality_t::clear()
+  {
+    x.D.clear();
+    y.D.clear();
+    dc.clear();
+  }
+
 }
diff --git a/src/privatepgtypes.h b/src/privatepgtypes.h
index de92018d..e8f04ed2 100644
--- a/src/privatepgtypes.h
+++ b/src/privatepgtypes.h
@@ -31,6 +31,7 @@
 
 #include <jrl/mal/matrixabstractlayer.hh>
 #include <boost/numeric/ublas/matrix_sparse.hpp>
+#include <boost/numeric/ublas/matrix_proxy.hpp>
 
 namespace PatternGeneratorJRL
 {
@@ -186,6 +187,27 @@ namespace PatternGeneratorJRL
 
   };
   typedef struct convex_hull_s convex_hull_t;
+
+
+  /// \brief Linear inequalities set
+  struct linear_inequality_s
+  {
+    struct coordinate_s
+    {
+      boost_ublas::compressed_matrix<double, boost_ublas::column_major> D;
+    };
+    struct coordinate_s x, y;
+
+    boost_ublas::vector<double> dc;
+
+    int type;
+
+    void clear();
+  };
+  typedef struct linear_inequality_s
+    linear_inequality_t;
+
+
 }
 
 #endif /* _PATTERN_GENERATOR_INTERNAL_PRIVATE_H_ */
-- 
GitLab