11#include "SpaceBox.hpp"
13#define INVALID_GHOST 9223372036854775807
38template<
unsigned int dim,
typename T>
63 Ghost(std::initializer_list<T>
p1, std::initializer_list<T>
p2)
70 for (
size_t i = 0 ; i < dim ; i++)
80 for (
size_t i = 0 ; i < dim ; i++)
108 for (
size_t i = 0 ; i < dim ; i++)
110 if (this->
getLow(i) == -INVALID_GHOST)
return true;
111 if (this->
getHigh(i) == INVALID_GHOST)
return true;
125template<
unsigned int dim>
135 Padding(std::initializer_list<long int>
p1, std::initializer_list<long int>
p2)
This class represent an N-dimensional box.
Box< dim, T > & operator/=(const Point< dim, T > &p)
Divide component wise each box points with a point.
__device__ __host__ T getLow(int i) const
get the i-coordinate of the low bound interval of the box
static const unsigned int p1
Low point.
__device__ __host__ T getHigh(int i) const
get the high interval of the box
void set(std::initializer_list< T > p1, std::initializer_list< T > p2)
Constructor from initializer list.
__device__ __host__ void setHigh(int i, T val)
set the high interval of the box
static const unsigned int p2
High point.
__device__ __host__ void setLow(int i, T val)
set the low interval of the box
Ghost< dim, T > & operator/=(const Point< dim, T > &p)
Divide component wise the ghost box with a point.
bool isInvalidGhost()
check if the Ghost is valid
Ghost(std::initializer_list< T > p1, std::initializer_list< T > p2)
Constructor from initializer list.
Class that contain Padding information on each direction positive and Negative direction.
Padding(std::initializer_list< long int > p1, std::initializer_list< long int > p2)
Constructor from initializer list.
This class implement the point shape in an N-dimensional space.