spiegel-keyman/common/windows/cpp/include/keymansentry.h
Marc Durdin d8f3a5598a chore(windows): move various headers to common
* moved ConvertUTF.h -> common/windows/cpp/include
* moved crc32.h -> common/windows/cpp/include
* moved keymansentry.h -> common/windows/cpp/include
* moved registry.h -> common/windows/cpp/include
* moved unicode.h -> common/windows/cpp/include
* moved xstring.h -> common/windows/cpp/include

and updated corresponding references. Deleted a bunch of old references
to missing headers from .vcxproj files. Updated vkeys.h and vkeys.cpp
references in .vcxproj to use $(KEYMAN_ROOT) instead of relative paths.
2022-06-12 13:18:45 +10:00

39 lines
1.4 KiB
C

#pragma once
/*
* Map of Sentry levels for events and breadcrumbs.
*/
typedef enum keyman_sentry_level_e {
KEYMAN_SENTRY_LEVEL_DEBUG = -1,
KEYMAN_SENTRY_LEVEL_INFO = 0,
KEYMAN_SENTRY_LEVEL_WARNING = 1,
KEYMAN_SENTRY_LEVEL_ERROR = 2,
KEYMAN_SENTRY_LEVEL_FATAL = 3,
} keyman_sentry_level_t;
#define KEYMAN_SENTRY_LOGGER_DEVELOPER_TOOLS "KeymanDeveloper.Tools"
#define KEYMAN_SENTRY_LOGGER_DEVELOPER_IDE "KeymanDeveloper.IDE"
#define KEYMAN_SENTRY_LOGGER_DESKTOP "KeymanWindows"
#define KEYMAN_SENTRY_LOGGER_DESKTOP_ENGINE "KeymanWindows.Engine"
int keyman_sentry_init(bool is_keyman_developer, const char *logger);
void keyman_sentry_shutdown();
// recommended wrapper function - sets up exception handling, etc
int keyman_sentry_main(bool is_keyman_developer, const char *logger, int argc, char *argv[], int(*run)(int, char**));
int keyman_sentry_wmain(bool is_keyman_developer, const char *logger, int argc, wchar_t *argv[], int(*run)(int, wchar_t**));
void keyman_sentry_setexceptionfilter();
void keyman_sentry_report_message(keyman_sentry_level_t level, const char *message, bool includeStack = false);
void keyman_sentry_report_start();
//
// With this function, we throw a test crash event to make sure that:
// a) exception hooking is in place
// b) events are correctly sent through
// c) symbolication is working
// d) privacy options are correctly checked
//
void keyman_sentry_test_crash();