#ifndef __QUATERNION_H__
#define __QUATERNION_H__

#include "tuple.h"

namespace xrt
{
	class Matrix;
	class Quaternion: public Tuple
	{
	public:
		Quaternion() {}
		Quaternion(float x, float y, float z, float w);
		Quaternion(const Matrix&);
		Matrix toMatrix() const;
	};
	Quaternion slerp(float, const Quaternion&, const Quaternion&);
}
#endif //!__QUATERNION_H__!