OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA > Class Template Reference

Wrapper for a local heterogeneous block communication request. More...

#include <communicator.h>

+ Inheritance diagram for olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >:
+ Collaboration diagram for olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >:

Public Member Functions

 HeterogeneousCopyTask (const std::vector< std::type_index > &fields, const std::vector< CellID > &targetCells, ConcreteBlockLattice< T, DESCRIPTOR, Platform::GPU_CUDA > &target, const std::vector< CellID > &sourceCells, ConcreteBlockLattice< T, DESCRIPTOR, SOURCE > &source)
 
 ~HeterogeneousCopyTask ()
 
void copy () override
 
void wait () override
 
- Public Member Functions inherited from olb::ConcreteBlockCommunicator< ConcreteBlockLattice< T, DESCRIPTOR, Platform::GPU_CUDA > >::CopyTask
virtual ~CopyTask ()
 

Detailed Description

template<typename T, typename DESCRIPTOR, Platform SOURCE>
class olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >

Wrapper for a local heterogeneous block communication request.

Definition at line 55 of file communicator.h.

Constructor & Destructor Documentation

◆ HeterogeneousCopyTask()

template<typename T , typename DESCRIPTOR , Platform SOURCE>
olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >::HeterogeneousCopyTask ( const std::vector< std::type_index > & fields,
const std::vector< CellID > & targetCells,
ConcreteBlockLattice< T, DESCRIPTOR, Platform::GPU_CUDA > & target,
const std::vector< CellID > & sourceCells,
ConcreteBlockLattice< T, DESCRIPTOR, SOURCE > & source )

Definition at line 692 of file communicator.hh.

695 :
696 _impl(new HeterogeneousCopyTaskDataForGpuTarget<T,DESCRIPTOR,SOURCE>(fields,
697 targetCells, target,
698 sourceCells, source))
699{
700 OLB_ASSERT(sourceCells.size() == targetCells.size(),
701 "Source cell count must match target cell count");
702}
#define OLB_ASSERT(COND, MESSAGE)
Definition olbDebug.h:45

References OLB_ASSERT.

◆ ~HeterogeneousCopyTask()

template<typename T , typename DESCRIPTOR , Platform SOURCE>
olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >::~HeterogeneousCopyTask ( )
inline

Definition at line 65 of file communicator.h.

Member Function Documentation

◆ copy()

template<typename T , typename DESCRIPTOR , Platform SOURCE>
void olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >::copy ( )
overridevirtual

◆ wait()

template<typename T , typename DESCRIPTOR , Platform SOURCE>
void olb::HeterogeneousCopyTask< T, DESCRIPTOR, SOURCE, Platform::GPU_CUDA >::wait ( )
overridevirtual

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