LeviLamina
Loading...
Searching...
No Matches
AggregationEventListener.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/events/IEventListener.h"
8
9// auto generated forward declare list
10// clang-format off
11class AppPlatform;
12namespace Core { class Path; }
13namespace Social::Events { class Event; }
14// clang-format on
15
16namespace Social::Events {
17
19public:
20 // member variables
21 // NOLINTBEGIN
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 // vIndex: 0
49 virtual ~AggregationEventListener() /*override*/;
50
51 // vIndex: 1
52 virtual void recordEvent(
53 ::Social::Events::Event const& event,
55 ) /*override*/;
56
57 // vIndex: 2
58 virtual void sendEvents(bool forceSend) /*override*/;
59
60 // vIndex: 5
61 virtual void sendEvent(::Social::Events::Event const&) = 0;
62
63 // vIndex: 4
64 virtual void stopDebugEventLogging() /*override*/;
65
66 // vIndex: 6
67 virtual void _flushEventQueue();
68
69 // vIndex: 7
70 virtual bool _checkAgainstEventAllowlist(::Social::Events::Event const& event) const;
71
72 // vIndex: 8
73 virtual bool _isListenerReadyForEvents() const;
74 // NOLINTEND
75
76public:
77 // member functions
78 // NOLINTBEGIN
79 MCAPI explicit AggregationEventListener(::Core::Path const& logFileName);
80
81 MCAPI void _handleAggregation(
82 ::std::deque<::Social::Events::Event>& listOfSameTypeEvents,
83 ::Social::Events::Event const& event
84 );
85
86 MCAPI bool _needToSendAggregatedEvents() const;
87
88 MCAPI void _recordAggregatedEvent(
89 ::Social::Events::Event const& event,
90 ::std::unordered_map<::std::string, ::std::deque<::Social::Events::Event>>& eventQueue
91 );
92
93 MCAPI void _sendCustomAggregatedEvents(bool forceSend);
94
95 MCAPI void _sendEvents(::std::unordered_map<::std::string, ::std::deque<::Social::Events::Event>>& queueToSend);
96
97 MCAPI void _sendNextEvent(::std::unordered_map<::std::string, ::std::deque<::Social::Events::Event>>& queueToSend);
98 // NOLINTEND
99
100public:
101 // constructor thunks
102 // NOLINTBEGIN
103 MCAPI void* $ctor(::Core::Path const& logFileName);
104 // NOLINTEND
105
106public:
107 // destructor thunk
108 // NOLINTBEGIN
109 MCAPI void $dtor();
110 // NOLINTEND
111
112public:
113 // virtual function thunks
114 // NOLINTBEGIN
115 MCAPI void
116 $recordEvent(::Social::Events::Event const& event, ::Bedrock::NonOwnerPointer<::AppPlatform> const& appPlatform);
117
118 MCAPI void $sendEvents(bool forceSend);
119
120 MCAPI void $stopDebugEventLogging();
121
122 MCFOLD void $_flushEventQueue();
123
124 MCFOLD bool $_checkAgainstEventAllowlist(::Social::Events::Event const& event) const;
125
126 MCFOLD bool $_isListenerReadyForEvents() const;
127 // NOLINTEND
128
129public:
130 // vftables
131 // NOLINTBEGIN
132 MCAPI static void** $vftable();
133 // NOLINTEND
134};
135
136} // namespace Social::Events
Definition AppPlatform.h:49
Definition NonOwnerPointer.h:9
Definition Path.h:15
Definition Path.h:16
Definition AggregationEventListener.h:18
Definition Event.h:17
Definition IEventListener.h:16
Definition Alias.h:14