Blender  V3.3
GHOST_IXrContext.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #pragma once
8 
9 #include "GHOST_Types.h"
10 
11 class GHOST_XrSession;
12 
14  public:
15  virtual ~GHOST_IXrContext() = default;
16 
17  virtual void startSession(const GHOST_XrSessionBeginInfo *begin_info) = 0;
18  virtual void endSession() = 0;
19  virtual bool isSessionRunning() const = 0;
20  virtual void drawSessionViews(void *draw_customdata) = 0;
21 
22  /* Needed for the GHOST C api. */
23  virtual GHOST_XrSession *getSession() = 0;
24  virtual const GHOST_XrSession *getSession() const = 0;
25 
26  virtual void dispatchErrorMessage(const class GHOST_XrException *) const = 0;
27 
28  virtual void setGraphicsContextBindFuncs(GHOST_XrGraphicsContextBindFn bind_fn,
29  GHOST_XrGraphicsContextUnbindFn unbind_fn) = 0;
30  virtual void setDrawViewFunc(GHOST_XrDrawViewFn draw_view_fn) = 0;
31 
32  virtual bool needsUpsideDownDrawing() const = 0;
33 };
virtual void endSession()=0
virtual void startSession(const GHOST_XrSessionBeginInfo *begin_info)=0
virtual GHOST_XrSession * getSession()=0
virtual bool needsUpsideDownDrawing() const =0
virtual ~GHOST_IXrContext()=default
virtual const GHOST_XrSession * getSession() const =0
virtual void setGraphicsContextBindFuncs(GHOST_XrGraphicsContextBindFn bind_fn, GHOST_XrGraphicsContextUnbindFn unbind_fn)=0
virtual void drawSessionViews(void *draw_customdata)=0
virtual bool isSessionRunning() const =0
virtual void setDrawViewFunc(GHOST_XrDrawViewFn draw_view_fn)=0
virtual void dispatchErrorMessage(const class GHOST_XrException *) const =0