From f0189c47beb4ccfbbbb805d324d2b7bcb1092653 Mon Sep 17 00:00:00 2001 From: Alexander Chemeris Date: Sat, 18 Mar 2017 14:08:43 -0700 Subject: vector: Introduce shrink() function to shrink vector size without loosing data. Change-Id: I9c0ac2715aea1a90c9e6ebcd982522b80a547099 --- CommonLibs/Vector.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CommonLibs/Vector.h b/CommonLibs/Vector.h index 7062e17..eae674b 100644 --- a/CommonLibs/Vector.h +++ b/CommonLibs/Vector.h @@ -92,6 +92,13 @@ template class Vector { mEnd = mStart + newSize; } + /** Reduce addressable size of the Vector, keeping content. */ + void shrink(size_t newSize) + { + assert(newSize <= mEnd - mStart); + mEnd = mStart + newSize; + } + /** Release memory and clear pointers. */ void clear() { resize(0); } -- cgit v1.2.3