240 } |
240 } |
241 |
241 |
242 QDataStream& operator<<(QDataStream&, const glm::vec3&); |
242 QDataStream& operator<<(QDataStream&, const glm::vec3&); |
243 QDataStream& operator>>(QDataStream&, glm::vec3&); |
243 QDataStream& operator>>(QDataStream&, glm::vec3&); |
244 |
244 |
245 template<int X, int Y, typename T, glm::qualifier Q, typename Fn> |
245 template<int X, int Y, typename T, glm::qualifier Q> |
246 QDataStream& operator<<(QDataStream& stream, const glm::mat<X, Y, T, Q>& mat) |
246 QDataStream& operator<<(QDataStream& stream, const glm::mat<X, Y, T, Q>& mat) |
247 { |
247 { |
248 iter_matrix(mat, [&stream](int, int, float x) |
248 iter_matrix(mat, [&stream](int, int, float x) |
249 { |
249 { |
250 stream << x; |
250 stream << x; |
251 }); |
251 }); |
252 return stream; |
252 return stream; |
253 } |
253 } |
254 |
254 |
255 template<int X, int Y, typename T, glm::qualifier Q, typename Fn> |
255 template<int X, int Y, typename T, glm::qualifier Q> |
256 QDataStream& operator>>(QDataStream& stream, glm::mat<X, Y, T, Q>& mat) |
256 QDataStream& operator>>(QDataStream& stream, glm::mat<X, Y, T, Q>& mat) |
257 { |
257 { |
258 iter_matrix(mat, [&stream](int, int, float x) |
258 iter_matrix(mat, [&stream](int, int, float x) |
259 { |
259 { |
260 stream >> x; |
260 stream >> x; |