diff options
author | 2016-09-12 10:30:53 -0700 | |
---|---|---|
committer | 2016-09-12 10:30:53 -0700 | |
commit | a618094b6269f2d5ab9be4ba6f01cb839e1f006f (patch) | |
tree | 207e1088851ddc4022fa02ceaf959786b72bf64c /unsupported/Eigen/CXX11/src | |
parent | 87a8a1975e3663254e05528900d6984f3f4c51f4 (diff) |
Added a resize method to MaxSizeVector
Diffstat (limited to 'unsupported/Eigen/CXX11/src')
-rw-r--r-- | unsupported/Eigen/CXX11/src/util/MaxSizeVector.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h b/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h index 961456f10..4bc3dd1ba 100644 --- a/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +++ b/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h @@ -55,6 +55,17 @@ class MaxSizeVector { internal::aligned_free(data_); } + void resize(size_t n) { + eigen_assert(n <= reserve_); + for (size_t i = size_; i < n; ++i) { + new (&data_[i]) T; + } + for (size_t i = n; i < size_; ++i) { + data_[i].~T(); + } + size_ = n; + } + // Append new elements (up to reserved size). EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void push_back(const T& t) { |