From d57c4317ac886ce8474ebc2a7c73fe47379c5588 Mon Sep 17 00:00:00 2001 From: Yong-Dian Jian Date: Wed, 1 Dec 2010 14:42:06 +0000 Subject: [PATCH] add a struct --- gtsam/linear/VectorValues.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gtsam/linear/VectorValues.h b/gtsam/linear/VectorValues.h index 3b360bcea..5fac71ab5 100644 --- a/gtsam/linear/VectorValues.h +++ b/gtsam/linear/VectorValues.h @@ -291,5 +291,22 @@ inline VectorValues::const_mapped_type VectorValues::operator[](Index variable) boost::numeric::ublas::range(varStarts_[variable], varStarts_[variable+1])); } +struct DimSpec: public std::vector { + + typedef std::vector Base ; + typedef boost::shared_ptr shared_ptr; + + DimSpec ():Base() {} + DimSpec (size_t n):Base(n) {} + DimSpec (size_t n, size_t init) : Base(n,init) {} + DimSpec (const VectorValues &V) : Base(V.size()) { + const size_t n = V.size() ; + for ( size_t i = 0 ; i < n ; ++i ) { + (*this)[i] = V[i].size() ; + } + } +} ; + + }