1#ifndef ANDROID_DVR_TYPES_H_ 2#define ANDROID_DVR_TYPES_H_ 3 4// All basic types used by VR code. 5 6#include <private/dvr/eigen.h> 7#include <private/dvr/field_of_view.h> 8#include <private/dvr/pose.h> 9#include <private/dvr/range.h> 10 11namespace android { 12namespace dvr { 13 14enum RgbColorChannel { kRed, kGreen, kBlue }; 15 16// EyeType: 0 for left, 1 for right. 17enum EyeType { kLeftEye = 0, kRightEye = 1 }; 18 19// In the context of VR, vector types are used as much as base types. 20 21using vec2f = Eigen::Vector2f; 22using vec2d = Eigen::Vector2d; 23using vec2i = Eigen::Vector2i; 24using vec2 = vec2f; 25 26using vec3f = Eigen::Vector3f; 27using vec3d = Eigen::Vector3d; 28using vec3i = Eigen::Vector3i; 29using vec3 = vec3f; 30 31using vec4f = Eigen::Vector4f; 32using vec4d = Eigen::Vector4d; 33using vec4i = Eigen::Vector4i; 34using vec4 = vec4f; 35 36using mat3f = Eigen::AffineMatrix<float, 3>; 37using mat3d = Eigen::AffineMatrix<double, 3>; 38using mat3 = mat3f; 39 40using mat4f = Eigen::AffineMatrix<float, 4>; 41using mat4d = Eigen::AffineMatrix<double, 4>; 42using mat4 = mat4f; 43 44using quatf = Eigen::Quaternionf; 45using quatd = Eigen::Quaterniond; 46using quat = quatf; 47 48} // namespace dvr 49} // namespace android 50 51#endif // ANDROID_DVR_TYPES_H_ 52