mirror of
https://github.com/isledecomp/isle-portable.git
synced 2024-11-26 17:36:12 -05:00
dc3500f631
* Add LEGO1.DLL resources * Rename smack files to lowercase This fixes casing issues with mingw on Linux Also use double quotes for #error * cmake: dxguid must come after dinput * cmake: create LEGO1.DLL instead of libLEGO1.DLL, when using mingw * act3actor.h was not including mxcore.h, and using incorrect override * g_mcoreCount seem to be signed integers * LegoCameraController: return references to static data in stub functions * Include string.h, stdlib.h and stdio.h for use of libc functions * Override MxAtomId::operator!= * Fix use of STL's std::map + std::vector * Fix template functions for mingw * iterator object is used after the for loop * IDirectDrawSurface::BltFast's first 2 arguments are x/y coordinates, not pointers * Add stub ViewLODListManager::Lookup * Fixes * Format * Remove unnecessary COMPAT_CONST use --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
36 lines
871 B
C++
36 lines
871 B
C++
#ifndef MXATOMID_H
|
|
#define MXATOMID_H
|
|
|
|
#include "mxatomidcounter.h"
|
|
#include "mxtypes.h"
|
|
|
|
enum LookupMode {
|
|
LookupMode_Exact = 0,
|
|
LookupMode_LowerCase = 1,
|
|
LookupMode_UpperCase = 2,
|
|
LookupMode_LowerCase2 = 3
|
|
};
|
|
|
|
class MxAtomId {
|
|
public:
|
|
__declspec(dllexport) MxAtomId(const char*, LookupMode);
|
|
__declspec(dllexport) MxAtomId& operator=(const MxAtomId& p_atomId);
|
|
__declspec(dllexport) ~MxAtomId();
|
|
|
|
MxAtomId() { this->m_internal = 0; }
|
|
|
|
inline MxBool operator==(const MxAtomId& p_atomId) const { return this->m_internal == p_atomId.m_internal; }
|
|
inline MxBool operator!=(const MxAtomId& p_atomId) const { return this->m_internal != p_atomId.m_internal; }
|
|
|
|
void Clear();
|
|
|
|
const char* GetInternal() const { return m_internal; }
|
|
|
|
private:
|
|
MxAtomIdCounter* GetCounter(const char*, LookupMode);
|
|
void Destroy();
|
|
|
|
const char* m_internal;
|
|
};
|
|
|
|
#endif // MXATOMID_H
|