39 Dim3(uint32_t
X, uint32_t
Y, uint32_t
Z) : X(X), Y(Y), Z(Z) {}
42 Dim3(
const uint32_t
Data[3]) :
X(Data[0]),
Y(Data[1]),
Z(Data[2]) {}
56 return X == D.
X &&
Y == D.
Y &&
Z == D.
Z;
67 friend std::ostream &
operator<<(std::ostream &Stream,
const Dim3 &D);
Dim3(uint32_t X, uint32_t Y, uint32_t Z)
Construct a Dim3 from specific values.
Dim3 operator%(const Dim3 &D) const
Returns the component-wise modulus of this Dim3 with D.
Dim3 operator+(const Dim3 &D) const
Returns the component-wise addition of this Dim3 with D.
Dim3()
Construct a Dim3 with values (1,1,1).
const uint32_t & operator[](unsigned i) const
Returns a const reference to the component at index i (i must be < 3).
friend std::ostream & operator<<(std::ostream &Stream, const Dim3 &D)
Allow a Dim3 to be inserted into an output stream.
bool operator==(const Dim3 &D) const
Returns true if this Dim3 is equal to D.
Dim3 operator*(const Dim3 &D) const
Returns the component-wise multiplication of this Dim3 with D.
Class representing a 3-dimensional size or ID.
uint32_t & operator[](unsigned i)
Returns a mutable reference to the component at index i (i must be < 3).
Dim3(const uint32_t Data[3])
Construct a Dim3 from an array.