X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=os.hpp;h=8e487b502937f02c5e80ae0a292c9c7fd0e7d7d0;hb=ed40bc699e44f810d27c7e50d396f7749c8cc9c2;hp=eaf571db0926f0097c5ccbae6f22c450b8be5bb5;hpb=9a3984ee426e09de1a7588d0224574c97dba5d72;p=apitrace diff --git a/os.hpp b/os.hpp index eaf571d..8e487b5 100644 --- a/os.hpp +++ b/os.hpp @@ -59,7 +59,29 @@ void ReleaseMutex(void); bool GetProcessName(char *str, size_t size); bool GetCurrentDir(char *str, size_t size); -void DebugMessage(const char *format, ...); +void DebugMessage(const char *format, ...) +#ifdef __GNUC__ + __attribute__ ((format (printf, 1, 2))) +#endif +; + +#if defined _WIN32 || defined __CYGWIN__ + /* We always use .def files on windows for now */ + #if 0 + #define PUBLIC __declspec(dllexport) + #else + #define PUBLIC + #endif + #define PRIVATE +#else + #if __GNUC__ >= 4 + #define PUBLIC __attribute__ ((visibility("default"))) + #define PRIVATE __attribute__ ((visibility("hidden"))) + #else + #define PUBLIC + #define PRIVATE + #endif +#endif /** * Get the current time in microseconds from an unknown base. @@ -68,6 +90,9 @@ long long GetTime(void); void Abort(void); +void SetExceptionCallback(void (*callback)(void)); +void ResetExceptionCallback(void); + } /* namespace OS */ #endif /* _OS_HPP_ */