Skip to content

Commit 0088dad

Browse files
committed
Use value semantics for device lambdas
1 parent fbc411c commit 0088dad

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

source/pbat/gpu/impl/geometry/SweepAndPrune.cuh

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,14 @@ class SweepAndPrune
4040
* @param aabbs
4141
*/
4242
template <class FOnOverlapDetected>
43-
void SortAndSweep(Aabb<kDims>& aabbs, FOnOverlapDetected&& fOnOverlapDetected);
43+
void SortAndSweep(Aabb<kDims>& aabbs, FOnOverlapDetected fOnOverlapDetected);
4444

4545
private:
4646
common::Buffer<GpuIndex> inds; ///< Box indices
4747
};
4848

4949
template <class FOnOverlapDetected>
50-
inline void SweepAndPrune::SortAndSweep(Aabb<kDims>& aabbs, FOnOverlapDetected&& fOnOverlapDetected)
50+
inline void SweepAndPrune::SortAndSweep(Aabb<kDims>& aabbs, FOnOverlapDetected fOnOverlapDetected)
5151
{
5252
PBAT_PROFILE_NAMED_CUDA_HOST_SCOPE_START(
5353
ctx,
@@ -124,11 +124,10 @@ inline void SweepAndPrune::SortAndSweep(Aabb<kDims>& aabbs, FOnOverlapDetected&&
124124
[nBoxes,
125125
saxis,
126126
axis,
127+
fOnOverlapDetected,
127128
b = b.Raw(),
128129
e = e.Raw(),
129-
inds = inds.Raw(),
130-
fOnOverlapDetected =
131-
std::forward<FOnOverlapDetected>(fOnOverlapDetected)] PBAT_DEVICE(GpuIndex i) mutable {
130+
inds = inds.Raw()] PBAT_DEVICE(GpuIndex i) mutable {
132131
for (auto j = i + 1; (j < nBoxes) and (e[saxis][i] >= b[saxis][j]); ++j)
133132
{
134133
// NOTE:

0 commit comments

Comments
 (0)