From 6e3bcac25dc66a7e853d504880b9a19ac4993f37 Mon Sep 17 00:00:00 2001 From: Lynix Date: Mon, 12 Feb 2018 21:26:14 +0100 Subject: [PATCH] Physics3D/PhysWorld3D: Take BodyIterator by const reference --- include/Nazara/Physics3D/PhysWorld3D.hpp | 2 +- src/Nazara/Physics3D/PhysWorld3D.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/Nazara/Physics3D/PhysWorld3D.hpp b/include/Nazara/Physics3D/PhysWorld3D.hpp index 76d4c09b4..cae9e4178 100644 --- a/include/Nazara/Physics3D/PhysWorld3D.hpp +++ b/include/Nazara/Physics3D/PhysWorld3D.hpp @@ -37,7 +37,7 @@ namespace Nz int CreateMaterial(Nz::String name = Nz::String()); - void ForEachBodyInAABB(const Nz::Boxf& box, BodyIterator iterator); + void ForEachBodyInAABB(const Nz::Boxf& box, const BodyIterator& iterator); Vector3f GetGravity() const; NewtonWorld* GetHandle() const; diff --git a/src/Nazara/Physics3D/PhysWorld3D.cpp b/src/Nazara/Physics3D/PhysWorld3D.cpp index 2a01a27e0..cc7ab7208 100644 --- a/src/Nazara/Physics3D/PhysWorld3D.cpp +++ b/src/Nazara/Physics3D/PhysWorld3D.cpp @@ -37,16 +37,16 @@ namespace Nz return materialId; } - void PhysWorld3D::ForEachBodyInAABB(const Nz::Boxf& box, BodyIterator iterator) + void PhysWorld3D::ForEachBodyInAABB(const Nz::Boxf& box, const BodyIterator& iterator) { auto NewtonCallback = [](const NewtonBody* const body, void* const userdata) -> int { - BodyIterator& iterator = *static_cast(userdata); + const BodyIterator& iterator = *static_cast(userdata); RigidBody3D* nzBody = static_cast(NewtonBodyGetUserData(body)); return iterator(*nzBody); }; - NewtonWorldForEachBodyInAABBDo(m_world, box.GetMinimum(), box.GetMaximum(), NewtonCallback, &iterator); + NewtonWorldForEachBodyInAABBDo(m_world, box.GetMinimum(), box.GetMaximum(), NewtonCallback, const_cast(static_cast(&iterator))); } Vector3f PhysWorld3D::GetGravity() const