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>
		
	
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef MXTHREAD_H
 | |
| #define MXTHREAD_H
 | |
| 
 | |
| #include "compat.h"
 | |
| #include "mxsemaphore.h"
 | |
| #include "mxtypes.h"
 | |
| 
 | |
| class MxCore;
 | |
| 
 | |
| // VTABLE: LEGO1 0x100dc860
 | |
| // SIZE 0x1c
 | |
| class MxThread {
 | |
| public:
 | |
| 	// Note: Comes before virtual destructor
 | |
| 	virtual MxResult Run();
 | |
| 
 | |
| 	MxResult Start(MxS32 p_stack, MxS32 p_flag);
 | |
| 
 | |
| 	void Terminate();
 | |
| 	void Sleep(MxS32 p_milliseconds);
 | |
| 
 | |
| 	inline MxBool IsRunning() { return m_running; }
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x100bf580
 | |
| 	// MxThread::`scalar deleting destructor'
 | |
| 
 | |
| protected:
 | |
| 	MxThread();
 | |
| 
 | |
| public:
 | |
| 	virtual ~MxThread();
 | |
| 
 | |
| private:
 | |
| 	static unsigned ThreadProc(void* p_thread);
 | |
| 
 | |
| 	MxULong m_hThread;       // 0x04
 | |
| 	MxU32 m_threadId;        // 0x08
 | |
| 	MxBool m_running;        // 0x0c
 | |
| 	MxSemaphore m_semaphore; // 0x10
 | |
| 
 | |
| protected:
 | |
| 	MxCore* m_target; // 0x18
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100dc6d8
 | |
| // SIZE 0x20
 | |
| class MxTickleThread : public MxThread {
 | |
| public:
 | |
| 	MxTickleThread(MxCore* p_target, MxS32 p_frequencyMS);
 | |
| 	~MxTickleThread() override {}
 | |
| 
 | |
| 	MxResult Run() override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x100b8c20
 | |
| 	// MxTickleThread::`scalar deleting destructor'
 | |
| 
 | |
| private:
 | |
| 	MxS32 m_frequencyMS; // 0x1c
 | |
| };
 | |
| 
 | |
| #endif // MXTHREAD_H
 |