mirror of
				https://github.com/isledecomp/isle.git
				synced 2025-10-25 09:24:17 +00:00 
			
		
		
		
	 4a50a9ff56
			
		
	
	4a50a9ff56
	
	
	
		
			
			* MxNotificationManager initial work. * Add .swp files to .gitignore. * Checkpoint before anything too crazy with param * Cleanup and add MxParam. * Checkpoint for everything except MxNotificationManager::Register. * Add int return type to MxCore::GetId instead of relying on implicit function nonsense. * Add stlcompat.h so this can still be built on modern compilers, fix affected type size asserts. * Switch to Mx types * Add BUILD_COMPAT option to CMake so the project can still be built with modern compilers. * Change vtable14 and vtable18 to Register and Unregister in MxTickleManager. * Remove last unsigned int reference to id type. * Remove MxList, use one inherited class per type. Improves accuracy again. * Address compiler compatibility code review. * Match MxNotificationManager::Register. * Re-enable MxNotificationManager DECOMP_SIZE_ASSERT.
		
			
				
	
	
		
			45 lines
		
	
	
		
			762 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			762 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef MXCORE_H
 | |
| #define MXCORE_H
 | |
| 
 | |
| #include <string.h>
 | |
| 
 | |
| #include "compat.h"
 | |
| #include "mxtypes.h"
 | |
| 
 | |
| class MxParam;
 | |
| 
 | |
| // VTABLE 0x100dc0f8
 | |
| // SIZE 0x8
 | |
| class MxCore
 | |
| {
 | |
| public:
 | |
|   __declspec(dllexport) MxCore();
 | |
|   __declspec(dllexport) virtual ~MxCore(); // vtable+00
 | |
|   __declspec(dllexport) virtual MxResult Notify(MxParam &p); // vtable+04
 | |
|   virtual MxResult Tickle(); // vtable+08
 | |
| 
 | |
|   // OFFSET: LEGO1 0x100144c0
 | |
|   inline virtual const char *ClassName() const // vtable+0c
 | |
|   {
 | |
|     // 0x100f007c
 | |
|     return "MxCore";
 | |
|   }
 | |
| 
 | |
|   // OFFSET: LEGO1 0x100140d0
 | |
|   inline virtual MxBool IsA(const char *name) const // vtable+10
 | |
|   {
 | |
|     return !strcmp(name, MxCore::ClassName());
 | |
|   }
 | |
| 
 | |
|   inline MxU32 GetId()
 | |
|   {
 | |
|     return m_id;
 | |
|   }
 | |
| 
 | |
| private:
 | |
|   MxU32 m_id;
 | |
| 
 | |
| };
 | |
| 
 | |
| #endif // MXCORE_H
 |