Files
tp/include/JSystem/JSupport/JSupport.h
T
kipcode66 1d2a0d9568 Add guards around std library headers (#3013)
* Last fix for standard compiler error

* adding define guards around headers

* rename cmath.h and climits.h to cmath and climits respectively

* renaming cstdarg.h to cstdarg

* renaming cstdlib.h to cstdlib

* renaming cstring.h to cstring

* renaming cstdio.h to cstdio

* renaming cmath locale ctype

* renaming stdarg string and va_list

* renaming cstddef

* renaming stdio stddef stdlib

* renaming algorithm, functional, iterator, memory, and utility

* renaming bitset, cstdint, limits, and stdint

* renaming new and type_traits

* update quote includes for standard library headers to angle bracket includes
2026-01-05 03:50:45 -08:00

49 lines
904 B
C++

#ifndef JSUPPORT_H
#define JSUPPORT_H
#include <dolphin/dolphin.h>
#include <stdint>
/**
* @ingroup jsystem-jsupport
*
*/
template <typename T>
T* JSUConvertOffsetToPtr(const void* ptr, uintptr_t offset) {
return offset == 0 ? NULL : (T*)((intptr_t)ptr + (intptr_t)offset);
}
/**
* @ingroup jsystem-jsupport
*
*/
template <typename T>
T* JSUConvertOffsetToPtr(const void* ptr, const void* offset) {
T* ret;
if (offset == NULL) {
ret = NULL;
} else {
ret = (T*)((intptr_t)ptr + (intptr_t)offset);
}
return ret;
}
inline u8 JSULoNibble(u8 param_0) { return param_0 & 0x0f; }
inline u8 JSUHiNibble(u8 param_0) {return param_0 >> 4; }
inline u8 JSULoByte(u16 in) {
return in & 0xff;
}
inline u8 JSUHiByte(u16 in) {
return in >> 8;
}
inline u16 JSUHiHalf(u32 in) {
return (in >> 16);
}
inline u16 JSULoHalf(u32 param_0) {return param_0; }
#endif