mirror of
				https://github.com/dolphin-emu/dolphin.git
				synced 2025-10-24 17:09:06 +00:00 
			
		
		
		
	SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			805 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			805 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright 2015 Dolphin Emulator Project
 | |
| // SPDX-License-Identifier: GPL-2.0-or-later
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #include <memory>
 | |
| 
 | |
| #include "Common/CommonTypes.h"
 | |
| #include "Common/MathUtil.h"
 | |
| 
 | |
| class AbstractTexture;
 | |
| class GLContext;
 | |
| struct WindowSystemInfo;
 | |
| 
 | |
| class SWOGLWindow
 | |
| {
 | |
| public:
 | |
|   ~SWOGLWindow();
 | |
| 
 | |
|   GLContext* GetContext() const { return m_gl_context.get(); }
 | |
|   bool IsHeadless() const;
 | |
| 
 | |
|   // Image to show, will be swapped immediately
 | |
|   void ShowImage(const AbstractTexture* image, const MathUtil::Rectangle<int>& xfb_region);
 | |
| 
 | |
|   static std::unique_ptr<SWOGLWindow> Create(const WindowSystemInfo& wsi);
 | |
| 
 | |
| private:
 | |
|   SWOGLWindow();
 | |
| 
 | |
|   bool Initialize(const WindowSystemInfo& wsi);
 | |
| 
 | |
|   u32 m_image_program = 0;
 | |
|   u32 m_image_texture = 0;
 | |
|   u32 m_image_vao = 0;
 | |
| 
 | |
|   std::unique_ptr<GLContext> m_gl_context;
 | |
| };
 |