21template<
unsigned int dim,
typename T>
33 for (
int i = 0 ; i < dim ; i++)
40 for (
int i = 0 ; i < dim ; i++)
55 for (
int i = 0 ; i < dim ; i++)
65 for (
int i = 0 ; i < dim ; i++)
88 for (
int i = 0 ; i < dim ; i++)
90 if (
k[i] != key_t.
k[i])
101 template<
typename a,
typename ...T>
void set(a v, T...t)
127 mem_id
get(
size_t i)
const
145 std::cerr <<
"grid_key_dx error: " << __FILE__ <<
" " << __LINE__ <<
" try to access dimension " << i <<
" on a grid_key_dx of size " << dim <<
"\n";
167 template<
typename a,
typename ...T>
void invert_assign(a v)
grid_key_dx is the key to access any element in the grid
void set_d(size_t i, mem_id id)
Set the i index.
space_key_dx()
Constructor.
void invalid()
Set to invalid the key.
void invert_assign(a v, T...t)
Recursively invert the assignment.
space_key_dx(T(&k)[dim])
Constructor from buffer.
mem_id get(size_t i) const
Get the i index.
space_key_dx(const T(&k)[dim])
Constructor from buffer.
void set(a v, T...t)
set the grid key from a list of numbers
mem_id k[dim]
structure that store all the index
void zero()
Set to zero the key.
space_key_dx(const T v, const T...t)
Construct a grid key from a list of numbers.
mem_id value(size_t i) const
Get the i index.