This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Alexander Chemeris gerrit-no-reply at lists.osmocom.orgHello Harald Welte, Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/2156
to look at the new patch set (#2).
vector: Introduce segmentMove() method to move data inside of a vector.
Change-Id: I2f3f4267b4137a0bc031f27e0f896fba9b9f3433
---
M CommonLibs/Vector.h
1 file changed, 15 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/56/2156/2
diff --git a/CommonLibs/Vector.h b/CommonLibs/Vector.h
index 38dc8d5..7062e17 100644
--- a/CommonLibs/Vector.h
+++ b/CommonLibs/Vector.h
@@ -222,6 +222,21 @@
memcpy(other.mStart,base,span*sizeof(T));
}
+ /**
+ Move (copy) a segment of this vector into a different position in the vector
+ @param from Start point from which to copy.
+ @param to Start point to which to copy.
+ @param span The number of elements to copy.
+ */
+ void segmentMove(size_t from, size_t to, size_t span)
+ {
+ const T* baseFrom = mStart + from;
+ T* baseTo = mStart + to;
+ assert(baseFrom+span<=mEnd);
+ assert(baseTo+span<=mEnd);
+ memmove(baseTo,baseFrom,span*sizeof(T));
+ }
+
void fill(const T& val)
{
T* dp=mStart;
--
To view, visit https://gerrit.osmocom.org/2156
To unsubscribe, visit https://gerrit.osmocom.org/settings
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I2f3f4267b4137a0bc031f27e0f896fba9b9f3433
Gerrit-PatchSet: 2
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Owner: Alexander Chemeris <Alexander.Chemeris at gmail.com>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Tom Tsou <tom at tsou.cc>