LeviLamina
Loading...
Searching...
No Matches
Event.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace Json { class Value; }
8namespace Social::Events { class Measurement; }
9namespace Social::Events { class Property; }
10namespace cereal { struct ReflectionCtx; }
11// clang-format on
12
13namespace Social::Events {
14
15class Event {
16public:
17 // Event inner types define
18 enum class AggregationMode : int {
19 None = 0,
20 Aggregate = 1,
21 AggregateByUniqueProperties = 2,
22 };
23
24public:
25 // member variables
26 // NOLINTBEGIN
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 Event& operator=(Event const&);
45 Event();
46
47public:
48 // member functions
49 // NOLINTBEGIN
51
52 MCNAPI Event(
53 uint id,
54 ::std::string const& eventName,
55 ::std::unordered_map<::std::string, ::Social::Events::Property>&& commonProperties,
56 int eventTags
57 );
58
59#ifdef LL_PLAT_C
60 MCNAPI bool _areAllPropertiesEqual(::Social::Events::Event const& other) const;
61#endif
62
63 MCNAPI bool _areUniquePropertiesEqual(::Social::Events::Event const& other) const;
64
65 MCNAPI void addMeasurement(::Social::Events::Measurement const& measurement);
66
67 MCNAPI void addProperty(::Social::Events::Property const& property, bool isUniqueProperty);
68
69 MCNAPI ::std::optional<::std::reference_wrapper<::Social::Events::Property const>>
70 getProperty(::std::string const& propertyName) const;
71
72#ifdef LL_PLAT_C
73 MCNAPI ::Json::Value measurementsAsJsonValue() const;
74
75 MCNAPI ::Json::Value propertiesAsJsonValue() const;
76#endif
77
78 MCNAPI ~Event();
79 // NOLINTEND
80
81public:
82 // static functions
83 // NOLINTBEGIN
84#ifdef LL_PLAT_C
85 MCNAPI static void bindType(::cereal::ReflectionCtx& ctx);
86#endif
87 // NOLINTEND
88
89public:
90 // constructor thunks
91 // NOLINTBEGIN
92 MCNAPI void* $ctor(::Social::Events::Event const&);
93
94 MCNAPI void* $ctor(
95 uint id,
96 ::std::string const& eventName,
97 ::std::unordered_map<::std::string, ::Social::Events::Property>&& commonProperties,
98 int eventTags
99 );
100 // NOLINTEND
101
102public:
103 // destructor thunk
104 // NOLINTBEGIN
105 MCNAPI void $dtor();
106 // NOLINTEND
107};
108
109} // namespace Social::Events
Definition Value.h:16
Definition Event.h:15
MCAPI Event(uint id, ::std::string const &eventName, ::std::unordered_map<::std::string, ::Social::Events::Property > &&commonProperties, int eventTags)
MCAPI ::std::optional<::std::reference_wrapper<::Social::Events::Property const > > getProperty(::std::string const &propertyName) const
MCAPI void addMeasurement(::Social::Events::Measurement const &measurement)
MCAPI void * $ctor(uint id, ::std::string const &eventName, ::std::unordered_map<::std::string, ::Social::Events::Property > &&commonProperties, int eventTags)
MCAPI void addProperty(::Social::Events::Property const &property, bool isUniqueProperty)
MCAPI Event(::Social::Events::Event const &)
MCAPI bool _areUniquePropertiesEqual(::Social::Events::Event const &other) const
MCAPI void * $ctor(::Social::Events::Event const &)
Definition Measurement.h:7
Definition Property.h:12
Definition ReflectionCtx.h:11
Definition ctx.h:5
Definition Alias.h:14