24 #ifndef __PolyVox_Vector_H__
25 #define __PolyVox_Vector_H__
64 template <u
int32_t Size,
typename StorageType,
typename OperationType>
71 Vector(StorageType tFillValue);
73 Vector(StorageType x, StorageType y);
75 Vector(StorageType x, StorageType y, StorageType z);
77 Vector(StorageType x, StorageType y, StorageType z, StorageType w);
92 POLYVOX_DEPRECATED bool operator<(const Vector<Size,StorageType,OperationType>& rhs)
const;
109 StorageType
getX(
void)
const;
111 StorageType
getY(
void)
const;
113 StorageType
getZ(
void)
const;
115 StorageType
getW(
void)
const;
122 void setElements(StorageType x, StorageType y, StorageType z);
124 void setElements(StorageType x, StorageType y, StorageType z, StorageType w);
126 void setX(StorageType tX);
128 void setY(StorageType tY);
130 void setZ(StorageType tZ);
132 void setW(StorageType tW);
149 StorageType m_tElements[Size];
154 template <u
int32_t Size,
typename StorageType,
typename OperationType>
157 template <u
int32_t Size,
typename StorageType,
typename OperationType>
160 template <u
int32_t Size,
typename StorageType,
typename OperationType>
163 template <u
int32_t Size,
typename StorageType,
typename OperationType>
166 template <u
int32_t Size,
typename StorageType,
typename OperationType>
169 template <u
int32_t Size,
typename StorageType,
typename OperationType>
172 template <u
int32_t Size,
typename StorageType,
typename OperationType>
173 std::ostream& operator<<(std::ostream& os, const Vector<Size,StorageType,OperationType>& vector);