X-Git-Url: http://git.tdb.fi/?p=libs%2Fvr.git;a=blobdiff_plain;f=source%2Fstereocombiner.h;h=41c5a56945080b2edea0e0503b06128b62ee67b8;hp=10179309c6d0f3d81de53807997a30588a498353;hb=b17410965e84e378c4cc85ffb732365552edc584;hpb=43579020c5709b589b2404414c489b0e6be3227d diff --git a/source/stereocombiner.h b/source/stereocombiner.h index 1017930..41c5a56 100644 --- a/source/stereocombiner.h +++ b/source/stereocombiner.h @@ -1,32 +1,35 @@ -#ifndef MSP_GL_STEREOCOMBINER_H_ -#define MSP_GL_STEREOCOMBINER_H_ +#ifndef MSP_VR_STEREOCOMBINER_H_ +#define MSP_VR_STEREOCOMBINER_H_ -namespace Msp { -namespace GL { +#include +#include -class Texture2D; +namespace Msp { +namespace VR { class StereoCombiner { protected: - unsigned width_div; - unsigned height_div; - bool keep_aspect; - float fov; + float width_factor; + float height_factor; + float aspect_factor; + Geometry::Angle fov; + float frustum_skew; StereoCombiner(); public: virtual ~StereoCombiner() { } - unsigned get_width_divisor() const { return width_div; } - unsigned get_height_divisor() const { return height_div; } - bool is_aspect_kept() const { return keep_aspect; } - float get_field_of_view() const { return fov; } + float get_width_factor() const { return width_factor; } + float get_height_factor() const { return height_factor; } + float get_aspect_factor() const { return aspect_factor; } + const Geometry::Angle &get_field_of_view() const { return fov; } + float get_frustum_skew() const { return frustum_skew; } - virtual void render(const Texture2D &, const Texture2D &) const = 0; + virtual void render(const GL::Texture2D &, const GL::Texture2D &) const = 0; }; -} // namespace GL +} // namespace VR } // namespace Msp #endif