10cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan#ifndef ANDROID_DVR_MATRIX_HELPERS_H_
20cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan#define ANDROID_DVR_MATRIX_HELPERS_H_
30cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
40cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan#include <private/dvr/eigen.h>
50cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan#include <private/dvr/types.h>
60cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
70cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikannamespace android {
80cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikannamespace dvr {
90cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
100cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan// A helper function for creating a mat4 directly.
110cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikaninline mat4 MakeMat4(float m00, float m01, float m02, float m03, float m10,
120cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan                     float m11, float m12, float m13, float m20, float m21,
130cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan                     float m22, float m23, float m30, float m31, float m32,
140cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan                     float m33) {
150cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan  Eigen::Matrix4f matrix;
160cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
170cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan  matrix << m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30,
180cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan      m31, m32, m33;
190cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
200cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan  return mat4(matrix);
210cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan}
220cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
230cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan}  // namespace dvr
240cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan}  // namespace android
250cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan
260cb05c60d539e55884e2686fe8981fdc1e9cc057Okan Arikan#endif  // ANDROID_DVR_LOG_HELPERS_H_
27