27 #include <boost/operators.hpp>
34 private boost::equality_comparable<Mat2>,
35 private boost::additive<Mat2>,
36 private boost::multiplicative2<Mat2, Real>
39 static Mat2 Identity();
68 Real& operator()(std::size_t r, std::size_t c)
71 throw std::out_of_range(
"row and column must be in the range [0-1]");
76 const Real& operator()(std::size_t r, std::size_t c)
const
79 throw std::out_of_range(
"row and column must be in the range [0-1]");
95 const Real*
Data()
const {
return &data_[0][0];}