Canoe
Comprehensive Atmosphere N' Ocean Engine
ParticleExchanger Class Reference

Defines the class for managing buffers for transporting particles. More...

#include <particle_exchanger.hpp>

Inheritance diagram for ParticleExchanger:
[legend]

Public Member Functions

 ParticleExchanger (Particle *pg)
 
 ~ParticleExchanger ()
 
void DetachTo (std::vector< ParticleData > &buffer) override
 
bool AttachTo (std::vector< ParticleData > &container) const override
 
- Public Member Functions inherited from Exchanger< ParticleData >
 Exchanger ()
 
virtual ~Exchanger ()
 
virtual void ClearBuffer (MeshBlock const *pmb)
 Clear buffer. More...
 
void SetBoundaryStatus (int bid, BoundaryStatus status)
 Set the boundary status. More...
 
- Public Member Functions inherited from ExchangerBase
 ExchangerBase ()
 
virtual ~ExchangerBase ()
 
virtual void PackData (MeshBlock const *pmb)
 Pack data to send buffer. More...
 
virtual bool UnpackData (MeshBlock const *pmb)
 Unpack data from receive buffer. More...
 
virtual void Transfer (MeshBlock const *pmb, int n=-1)=0
 Send and receive data. More...
 

Protected Member Functions

bool checkOutOfDomain (ParticleData &p) const
 
MeshBlock const * getMeshBlock () const override
 

Protected Attributes

Particle const * pmy_particle
 
- Protected Attributes inherited from Exchanger< ParticleData >
enum BoundaryStatus status_flag_ [MessageTraits< ParticleData >::num_buffers]
 
BufferType send_buffer_ [MessageTraits< ParticleData >::num_buffers]
 
BufferType recv_buffer_ [MessageTraits< ParticleData >::num_buffers]
 

Additional Inherited Members

- Public Types inherited from Exchanger< ParticleData >
using DataType = typename MessageTraits< ParticleData >::DataType
 
using BufferType = std::vector< DataType >
 

Detailed Description

Defines the class for managing buffers for transporting particles.

Definition at line 20 of file particle_exchanger.hpp.

Constructor & Destructor Documentation

◆ ParticleExchanger()

ParticleExchanger::ParticleExchanger ( Particle *  pg)
inline

Definition at line 26 of file particle_exchanger.hpp.

◆ ~ParticleExchanger()

ParticleExchanger::~ParticleExchanger ( )
inline

Definition at line 28 of file particle_exchanger.hpp.

Member Function Documentation

◆ DetachTo()

void ParticleExchanger::DetachTo ( std::vector< ParticleData > &  buffer)
override

◆ AttachTo()

bool ParticleExchanger::AttachTo ( std::vector< ParticleData > &  container) const
override

◆ checkOutOfDomain()

bool ParticleExchanger::checkOutOfDomain ( ParticleData p) const
protected

◆ getMeshBlock()

MeshBlock const* ParticleExchanger::getMeshBlock ( ) const
inlineoverrideprotected

Definition at line 36 of file particle_exchanger.hpp.

Member Data Documentation

◆ pmy_particle

Particle const* ParticleExchanger::pmy_particle
protected

Definition at line 22 of file particle_exchanger.hpp.


The documentation for this class was generated from the following files: