mirror of
				https://github.com/isledecomp/isle.git
				synced 2025-10-26 01:44:19 +00:00 
			
		
		
		
	 9e686e2a87
			
		
	
	9e686e2a87
	
	
	
		
			
			* cmake+ci: run clang-tidy
* Remove DESCRIPTION from LEGO1/LegoOmni.mingw.def
* Add initial .clang-tidy and fixes
* fix file perms
* Comment out DESCRIPTION
* Remove LegoEntity::~LegoEntity and MxPresenter::~MxPresenter from mingw's LEGO1.def
* Looks like clang is allergic to the libs in the directx5 SDK
* Update .clang-tidy
* Fix typo in .clang-tidy
* Attempt to generate an action error
* Revert "Attempt to generate an action error"
This reverts commit 96c4c65fed.
* cmake: test with -Wparentheses + optionally with -Werror
* ci: -k0 is a Ninja argument
* Use -Werror only for msys2 builds
* cmake: only emit warnings for specific warnings
* cmake: and don't do -Werror/-WX anymore
* Fix warnings
* Fix mingw warnings
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
		
	
		
			
				
	
	
		
			60 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef MXVIDEOMANAGER_H
 | |
| #define MXVIDEOMANAGER_H
 | |
| 
 | |
| #include "mxdisplaysurface.h"
 | |
| #include "mxmediamanager.h"
 | |
| #include "mxrect32.h"
 | |
| #include "mxregion.h"
 | |
| #include "mxvideoparam.h"
 | |
| 
 | |
| #include <d3d.h>
 | |
| 
 | |
| // VTABLE: LEGO1 0x100dc810
 | |
| // SIZE 0x64
 | |
| class MxVideoManager : public MxMediaManager {
 | |
| public:
 | |
| 	MxVideoManager();
 | |
| 	~MxVideoManager() override;
 | |
| 
 | |
| 	MxResult Tickle() override; // vtable+0x08
 | |
| 	void Destroy() override;    // vtable+0x18
 | |
| 	virtual MxResult VTable0x28(
 | |
| 		MxVideoParam& p_videoParam,
 | |
| 		LPDIRECTDRAW p_pDirectDraw,
 | |
| 		LPDIRECT3D2 p_pDirect3D,
 | |
| 		LPDIRECTDRAWSURFACE p_ddSurface1,
 | |
| 		LPDIRECTDRAWSURFACE p_ddSurface2,
 | |
| 		LPDIRECTDRAWCLIPPER p_ddClipper,
 | |
| 		MxU32 p_frequencyMS,
 | |
| 		MxBool p_createThread
 | |
| 	);                                                                                               // vtable+0x28
 | |
| 	virtual MxResult Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread); // vtable+0x2c
 | |
| 
 | |
| 	void InvalidateRect(MxRect32&);
 | |
| 	virtual MxResult RealizePalette(MxPalette*);                                  // vtable+0x30
 | |
| 	virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height); // vtable+0x34
 | |
| 
 | |
| 	MxResult Init();
 | |
| 	void Destroy(MxBool p_fromDestructor);
 | |
| 	void SortPresenterList();
 | |
| 	void UpdateRegion();
 | |
| 
 | |
| 	inline MxVideoParam& GetVideoParam() { return this->m_videoParam; }
 | |
| 	inline LPDIRECTDRAW GetDirectDraw() { return this->m_pDirectDraw; }
 | |
| 	inline MxDisplaySurface* GetDisplaySurface() { return this->m_displaySurface; }
 | |
| 	inline MxRegion* GetRegion() { return this->m_region; }
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x100be280
 | |
| 	// MxVideoManager::`scalar deleting destructor'
 | |
| 
 | |
| protected:
 | |
| 	MxVideoParam m_videoParam;          // 0x2c
 | |
| 	LPDIRECTDRAW m_pDirectDraw;         // 0x50
 | |
| 	LPDIRECT3D2 m_pDirect3D;            // 0x54
 | |
| 	MxDisplaySurface* m_displaySurface; // 0x58
 | |
| 	MxRegion* m_region;                 // 0x5c
 | |
| 	MxBool m_unk0x60;                   // 0x60
 | |
| };
 | |
| 
 | |
| #endif // MXVIDEOMANAGER_H
 |