From: Jiri Vlasak Date: Fri, 8 Nov 2019 16:58:35 +0000 (+0100) Subject: Add deinit methods X-Git-Tag: v0.3.0~4^2~4 X-Git-Url: https://rtime.felk.cvut.cz/gitweb/hubacji1/rrts.git/commitdiff_plain/6dc4d91fc57fa0c7cbeb1687356d04978aa928ba Add deinit methods This will be used when reset of planner is needed. --- diff --git a/CHANGELOG.md b/CHANGELOG.md index 8506220..7579874 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ The format is based on [Keep a Changelog][] and this project adheres to - Compound extensions. - JSON output. - Should continue method. +- Deinit method -- get ready for planner reset. [cute c2]: https://github.com/RandyGaul/cute_headers/blob/master/cute_c2.h diff --git a/src/rrtext2.cc b/src/rrtext2.cc index e90f3eb..38b1905 100644 --- a/src/rrtext2.cc +++ b/src/rrtext2.cc @@ -35,6 +35,8 @@ void RRTExt2::init() void RRTExt2::deinit() { + this->c2_obstacles().clear(); + RRTS::deinit(); } std::tuple diff --git a/src/rrts.cc b/src/rrts.cc index 024952a..18dbcca 100644 --- a/src/rrts.cc +++ b/src/rrts.cc @@ -260,6 +260,14 @@ void RRTS::init() void RRTS::deinit() { + this->nodes().clear(); + this->samples().clear(); + this->steered().clear(); + this->store_node(RRTNode()); // root + this->icnt_ = 0; + this->scnt_ = 0; + this->pcnt_ = 0; + this->gf_ = false; } std::vector RRTS::path()