IPPL (Independent Parallel Particle Layer)
IPPL
Loading...
Searching...
No Matches
ippl::increment_type Struct Reference

#include <ParticleSpatialLayout.hpp>

Collaboration diagram for ippl::increment_type:

Public Member Functions

KOKKOS_FUNCTION void init ()
KOKKOS_INLINE_FUNCTION increment_typeoperator+= (bool *values)
KOKKOS_INLINE_FUNCTION increment_typeoperator+= (increment_type values)

Public Attributes

size_t count [2]

Detailed Description

We need this struct since Kokkos parallel_scan only accepts one variable of type ReturnType where to perform the reduction operation. For more details, see https://kokkos.github.io/kokkos-core-wiki/API/core/parallel-dispatch/parallel_scan.html.

Definition at line 39 of file ParticleSpatialLayout.hpp.

Member Function Documentation

◆ init()

KOKKOS_FUNCTION void ippl::increment_type::init ( )
inline

Definition at line 42 of file ParticleSpatialLayout.hpp.

References count.

Referenced by ippl::ParticleSpatialLayout< T, Dim, Mesh, PositionProperties... >::locateParticles(), and ippl::ParticleSpatialOverlapLayout< T, Dim, Mesh, PositionProperties >::locateParticles().

Here is the caller graph for this function:

◆ operator+=() [1/2]

KOKKOS_INLINE_FUNCTION increment_type & ippl::increment_type::operator+= ( bool * values)
inline

Definition at line 47 of file ParticleSpatialLayout.hpp.

References count.

◆ operator+=() [2/2]

KOKKOS_INLINE_FUNCTION increment_type & ippl::increment_type::operator+= ( increment_type values)
inline

Definition at line 53 of file ParticleSpatialLayout.hpp.

References count.

Member Data Documentation

◆ count


The documentation for this struct was generated from the following file: