CommonLibVR
Loading...
Searching...
No Matches
ErrorLogger.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSTEvent.h"
4#include "RE/B/BSTHashMap.h"
5
6namespace RE
7{
8 namespace BSScript
9 {
10 struct LogEvent;
11
12 class ErrorLogger : public BSTEventSource<LogEvent>
13 {
14 public:
15 inline static constexpr auto RTTI = RTTI_BSScript__ErrorLogger;
16 inline static constexpr auto VTABLE = VTABLE_BSScript__ErrorLogger;
17
18 enum class Severity
19 {
20 kInfo,
22 kError,
23 kFatal
24 };
25
27 {
28 public:
29 // members
30 std::uint32_t fatalCount; // 0
31 std::uint32_t errorCount; // 4
32 std::uint32_t warningCount; // 8
33 };
34 static_assert(sizeof(PerThreadErrorCounts) == 0xC);
35
36 virtual ~ErrorLogger(); // 00
37
38 // add
39 virtual void PostErrorImpl(const char* a_message, Severity a_severity) = 0; // 01
40 virtual void ResetImpl(); // 02 - { return; }
41
42 // members
45 };
46 static_assert(sizeof(ErrorLogger) == 0x98);
47 }
48}
Definition ErrorLogger.h:13
virtual void PostErrorImpl(const char *a_message, Severity a_severity)=0
Severity
Definition ErrorLogger.h:19
virtual void ResetImpl()
static constexpr auto VTABLE
Definition ErrorLogger.h:16
BSTHashMap< std::uint32_t, PerThreadErrorCounts > threadErrors
Definition ErrorLogger.h:44
BSSpinLock threadErrorsLock
Definition ErrorLogger.h:43
static constexpr auto RTTI
Definition ErrorLogger.h:15
Definition BSAtomic.h:92
Definition BSTEvent.h:19
Definition BSTHashMap.h:21
Definition AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BSScript__ErrorLogger
Definition Offsets_VTABLE.h:9445
constexpr REL::ID RTTI_BSScript__ErrorLogger(static_cast< std::uint64_t >(689021))
std::uint32_t warningCount
Definition ErrorLogger.h:32
std::uint32_t errorCount
Definition ErrorLogger.h:31
std::uint32_t fatalCount
Definition ErrorLogger.h:30