All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
iOSGlDisplayService.h
1 #pragma once
2 
3 #include "Types.h"
4 #include "IiOSGlDisplayService.h"
5 #include "VectorMathDecl.h"
6 
7 @class GLKView;
8 
9 namespace Eegeo
10 {
11  namespace iOS
12  {
13  namespace Sdk
14  {
15  class iOSGlDisplayService : public IiOSGlDisplayService, private Eegeo::NonCopyable
16  {
17  public:
18  iOSGlDisplayService(GLKView* pView);
19  ~iOSGlDisplayService();
20 
21  void NotifyViewFrameChanged();
22 
23  float GetViewWidth() const;
24  float GetViewHeight() const;
25  float GetDeviceDpi() const;
26  float GetViewPixelScale() const;
27  GlDisplayServiceChangedEvent& ChangedEvent() const;
28 
29  private:
30  void BindDisplay();
31  void UpdateDisplayDimensions();
32 
33  float m_width;
34  float m_height;
35  float m_displayDpi;
36  float m_pixelScale;
37 
38  GLKView* m_pGLKView;
39  GlDisplayServiceChangedEvent* m_changedEvent;
40  };
41  }
42  }
43 }
44