VTK-m  2.2
Public Attributes | Static Public Attributes | List of all members
vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl > Struct Template Reference

#include <ParallelScanOpenMP.h>

Inheritance diagram for vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >:

Public Attributes

vtkm::Id2 Range { -1, -1 }
 
NodeWrapperParent { nullptr }
 
NodeWrapperLeft { nullptr }
 
NodeWrapperRight { nullptr }
 
bool LeftEdge { false }
 
unsigned char Padding [PaddingSize]
 

Static Public Attributes

static constexpr size_t DataSize
 
static constexpr size_t NumCacheLines = CeilDivide<size_t>(DataSize, VTKM_CACHE_LINE_SIZE)
 
static constexpr size_t PaddingSize = NumCacheLines * VTKM_CACHE_LINE_SIZE - DataSize
 

Member Data Documentation

◆ DataSize

template<typename ScanBody >
template<typename NodeImpl >
constexpr size_t vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::DataSize
staticconstexpr
Initial value:
=
sizeof(NodeImpl) + sizeof(vtkm::Id2) + 3 * sizeof(NodeWrapper*) + sizeof(bool)

◆ Left

template<typename ScanBody >
template<typename NodeImpl >
NodeWrapper* vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::Left { nullptr }

◆ LeftEdge

template<typename ScanBody >
template<typename NodeImpl >
bool vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::LeftEdge { false }

◆ NumCacheLines

template<typename ScanBody >
template<typename NodeImpl >
constexpr size_t vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::NumCacheLines = CeilDivide<size_t>(DataSize, VTKM_CACHE_LINE_SIZE)
staticconstexpr

◆ Padding

template<typename ScanBody >
template<typename NodeImpl >
unsigned char vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::Padding[PaddingSize]

◆ PaddingSize

template<typename ScanBody >
template<typename NodeImpl >
constexpr size_t vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::PaddingSize = NumCacheLines * VTKM_CACHE_LINE_SIZE - DataSize
staticconstexpr

◆ Parent

template<typename ScanBody >
template<typename NodeImpl >
NodeWrapper* vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::Parent { nullptr }

◆ Range

template<typename ScanBody >
template<typename NodeImpl >
vtkm::Id2 vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::Range { -1, -1 }

◆ Right

template<typename ScanBody >
template<typename NodeImpl >
NodeWrapper* vtkm::cont::openmp::scan::Adder< ScanBody >::NodeWrapper< NodeImpl >::Right { nullptr }

The documentation for this struct was generated from the following file:
vtkm::Vec< vtkm::Id, 2 >