mirror of
				https://github.com/isledecomp/isle.git
				synced 2025-10-25 09:24:17 +00:00 
			
		
		
		
	 909c44b679
			
		
	
	909c44b679
	
	
	
		
			
			* Add vtable comparison to reccmp * Add missing scalar deleting destructors * Fix some vtables --------- 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);
 | |
| 	virtual ~MxTickleThread() {}
 | |
| 
 | |
| 	MxResult Run() override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x100b8c20
 | |
| 	// MxTickleThread::`scalar deleting destructor'
 | |
| 
 | |
| private:
 | |
| 	MxS32 m_frequencyMS; // 0x1c
 | |
| };
 | |
| 
 | |
| #endif // MXTHREAD_H
 |