Go to the documentation of this file.
20 #ifndef __triple_hpp__
21 #define __triple_hpp__
85 this->x_ =
static_cast<T
>(rhs.
x_);
86 this->y_ =
static_cast<T
>(rhs.
y_);
87 this->z_ =
static_cast<T
>(rhs.
z_);
94 :
x_(static_cast<T>(src.
x_)),
95 y_(static_cast<T>(src.
y_)),
96 z_(static_cast<T>(src.
z_))
120 return makeUnique<triple<T>>(*this);
226 <T>(
const triple<T>& oprnd1,
const T& oprnd2);
229 <T>(
const T& oprnd1,
const triple<T>& oprnd2);
236 <T>(
const triple<T>& oprnd1,
const T& oprnd2);
239 <T>(
const T& oprnd1,
const triple<T>& oprnd2);
246 <T>(
const triple<T>& oprnd1,
const T& oprnd2);
249 <T>(
const T& oprnd1,
const triple<T>& oprnd2);
256 <T>(
const triple<T>& oprnd1,
const T& oprnd2);
259 <T>(
const T& oprnd1,
const triple<T>& oprnd2);
304 equal(
const triple<T>& opr1,
const triple<T>& opr2);
309 return equal(opr1.
x(), opr2.
x(), tol) &&
equal(opr1.
y(), opr2.
y(), tol) &&
310 equal(opr1.
z(), opr2.
z(), tol);
const INLINE_FUNCTION_HD T & y() const
access component
INLINE_FUNCTION_HD void operator+=(const triple &oprnd2)
INLINE_FUNCTION_HD void operator*=(const triple &oprnd2)
INLINE_FUNCTION uniquePtr< triple< T > > clone() const
clone
INLINE_FUNCTION_HD triple()=default
Initilize to zero.
INLINE_FUNCTION_HD T & comp3()
access component
INLINE_FUNCTION_HD bool equal(const box &b1, const box &b2, real tol=smallValue)
INLINE_FUNCTION_HD triple(const T &v)
Construct from v.
INLINE_FUNCTION_HD triple(const T &x, const T &y, const T &z)
Construct from x, y, z.
INLINE_FUNCTION_HD T & y()
access component
const INLINE_FUNCTION_HD T & x() const
access component
const INLINE_FUNCTION_HD T & comp3() const
access component
Interface class for any input stream
INLINE_FUNCTION triple< T > * clonePtr() const
INLINE_FUNCTION_HD triple operator-() const
unary negate operator
const INLINE_FUNCTION_HD T & z() const
access component
INLINE_FUNCTION_HD ~triple()=default
INLINE_FUNCTION_HD void operator-=(const triple &oprnd2)
INLINE_FUNCTION_HD triple(const triple< T2 > &src)
Type casting through copy constructor.
const INLINE_FUNCTION_HD T & comp1() const
access component
const INLINE_FUNCTION_HD T & comp2() const
access component
INLINE_FUNCTION_HD void normalize()
Normalize the vector.
INLINE_FUNCTION_HD T & comp1()
access component
INLINE_FUNCTION_HD T & z()
access component
INLINE_FUNCTION_HD triple< T > & operator=(const triple< T2 > &rhs)
Type conversion trough assignment.
TripleTypeInfoNV(T)
Type info for triple.
INLINE_FUNCTION_HD T & x()
access component
#define INLINE_FUNCTION_HD
A set of 3 variables that can be used for vector variables.
Interface class for any output stream.
INLINE_FUNCTION_HD triple operator+() const
unary plus operator
INLINE_FUNCTION_HD void operator/=(const triple &oprnd2)
INLINE_FUNCTION_HD T & comp2()
access component
INLINE_FUNCTION_HD T length() const
Length of the vector.