WarpX
Loading...
Searching...
No Matches
ComputeParticleDiagFunctor.H
Go to the documentation of this file.
1/* Copyright 2021 Revathi Jambunathan
2 *
3 * This file is part of WarpX.
4 *
5 * License: BSD-3-Clause-LBNL
6 */
7#ifndef WARPX_COMPUTEPARTICLEDIAGFUNCTOR_H_
8#define WARPX_COMPUTEPARTICLEDIAGFUNCTOR_H_
9
12#include <AMReX.H>
13#include <AMReX_AmrParticles.H>
14
19{
20public:
21
24 virtual ~ComputeParticleDiagFunctor() = default;
25
31
48 virtual void PrepareFunctorData ( int i_buffer, bool ZSliceInDomain,
49 amrex::Real old_z_boost,
50 amrex::Real current_z_boost, amrex::Real t_lab,
51 int snapshot_full)
52 {
53 amrex::ignore_unused(i_buffer,
54 ZSliceInDomain, old_z_boost,
55 current_z_boost, t_lab, snapshot_full);
56 }
57
62 virtual void operator () (PinnedMemoryParticleContainer& pc_dst, int &totalParticlesInBuffer, int i_buffer = 0) const = 0;
63 virtual void InitData () {}
64};
65
66#endif // WARPX_COMPUTEPARTICLEDIAGFUNCTOR_H_
amrex::ParticleContainerPureSoA< PIdx::nattribs, 0, amrex::PinnedArenaAllocator > PinnedMemoryParticleContainer
Definition PinnedMemoryParticleContainer.H:6
ComputeParticleDiagFunctor & operator=(const ComputeParticleDiagFunctor &)=default
ComputeParticleDiagFunctor(ComputeParticleDiagFunctor &&)=default
virtual ~ComputeParticleDiagFunctor()=default
ComputeParticleDiagFunctor()=default
ComputeParticleDiagFunctor & operator=(ComputeParticleDiagFunctor &&)=default
virtual void operator()(PinnedMemoryParticleContainer &pc_dst, int &totalParticlesInBuffer, int i_buffer=0) const =0
virtual void PrepareFunctorData(int i_buffer, bool ZSliceInDomain, amrex::Real old_z_boost, amrex::Real current_z_boost, amrex::Real t_lab, int snapshot_full)
Prepare data required to back-transform particle attributes for lab-frame snapshot,...
Definition ComputeParticleDiagFunctor.H:48
ComputeParticleDiagFunctor(const ComputeParticleDiagFunctor &)=default
virtual void InitData()
Definition ComputeParticleDiagFunctor.H:63
__host__ __device__ void ignore_unused(const Ts &...)