EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
EBGeometry::CSGOps::RepetitionView< T > Struct Template Reference

A finite repetition read from an array of 15 parameters (period, low and high counts, the object's box corners), as the Tape stores it. More...

#include <EBGeometry_CSGOps.hpp>

Public Member Functions

T period (const size_t a_dir) const noexcept
 Period along an axis.
 
T low (const size_t a_dir) const noexcept
 Tiles in the decreasing direction of an axis.
 
T high (const size_t a_dir) const noexcept
 Tiles in the increasing direction of an axis.
 
T boxLow (const size_t a_dir) const noexcept
 Low corner of the object's box along an axis.
 
T boxHigh (const size_t a_dir) const noexcept
 High corner of the object's box along an axis.
 

Public Attributes

const T * m_params
 The parameters.
 

Detailed Description

template<class T>
struct EBGeometry::CSGOps::RepetitionView< T >

A finite repetition read from an array of 15 parameters (period, low and high counts, the object's box corners), as the Tape stores it.

It reads the array whenever repetition() asks, rather than copying it, so that the search keeps few values alive across the calls into the object, which a Tape's sub-program call is: copied, they made a device kernel's every function need more registers.

Template Parameters
TFloating-point precision.

Member Function Documentation

◆ boxHigh()

template<class T >
T EBGeometry::CSGOps::RepetitionView< T >::boxHigh ( const size_t  a_dir) const
inlinenoexcept

High corner of the object's box along an axis.

Parameters
[in]a_dirAxis.
Returns
The coordinate.

◆ boxLow()

template<class T >
T EBGeometry::CSGOps::RepetitionView< T >::boxLow ( const size_t  a_dir) const
inlinenoexcept

Low corner of the object's box along an axis.

Parameters
[in]a_dirAxis.
Returns
The coordinate.

◆ high()

template<class T >
T EBGeometry::CSGOps::RepetitionView< T >::high ( const size_t  a_dir) const
inlinenoexcept

Tiles in the increasing direction of an axis.

Parameters
[in]a_dirAxis.
Returns
The count.

◆ low()

template<class T >
T EBGeometry::CSGOps::RepetitionView< T >::low ( const size_t  a_dir) const
inlinenoexcept

Tiles in the decreasing direction of an axis.

Parameters
[in]a_dirAxis.
Returns
The count.

◆ period()

template<class T >
T EBGeometry::CSGOps::RepetitionView< T >::period ( const size_t  a_dir) const
inlinenoexcept

Period along an axis.

Parameters
[in]a_dirAxis.
Returns
The period.

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