LeviLamina
Loading...
Searching...
No Matches
LevelStorageWriteBatch.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/threading/Mutex.h"
7#include "mc/world/level/storage/db_helpers/Category.h"
8
9// auto generated forward declare list
10// clang-format off
11class LevelStorage;
12// clang-format on
13
15public:
16 // LevelStorageWriteBatch inner types declare
17 // clang-format off
18 struct BatchEntry;
19 class PerfContext;
20 // clang-format on
21
22 // LevelStorageWriteBatch inner types define
24 public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 8, uint64> mOperation;
28 ::ll::TypedStorage<8, 8, uint64> mSize;
29 ::ll::TypedStorage<8, 32, ::std::string> mKey;
30 ::ll::TypedStorage<8, 8, char const*> mReason;
31 // NOLINTEND
32 };
33
34 struct BatchEntry {
35 public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::std::string>> mLatestValue;
39 ::ll::TypedStorage<1, 1, bool> mDeleted;
40 ::ll::TypedStorage<4, 4, ::DBHelpers::Category> mCategory;
41 // NOLINTEND
42
43 public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI ~BatchEntry();
47 // NOLINTEND
48
49 public:
50 // destructor thunk
51 // NOLINTBEGIN
52 MCFOLD void $dtor();
53 // NOLINTEND
54 };
55
56 using BatchContainerType = ::std::map<::std::string, ::LevelStorageWriteBatch::BatchEntry>;
57
58 using iterator = ::std::_Tree_iterator<::std::_Tree_val<
59 ::std::_Tree_simple_types<::std::pair<::std::string const, ::LevelStorageWriteBatch::BatchEntry>>>>;
60
61 using const_iterator = ::std::_Tree_const_iterator<::std::_Tree_val<
62 ::std::_Tree_simple_types<::std::pair<::std::string const, ::LevelStorageWriteBatch::BatchEntry>>>>;
63
64public:
65 // member variables
66 // NOLINTBEGIN
67 ::ll::TypedStorage<8, 24, ::std::vector<::std::function<void()>>> mFlushCallbacks;
68 ::ll::TypedStorage<8, 16, ::std::map<::std::string, ::LevelStorageWriteBatch::BatchEntry>> mBatch;
69 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mFlushCallbacksMutex;
70 // NOLINTEND
71
72public:
73 // prevent constructor by default
76
77public:
78 // virtual functions
79 // NOLINTBEGIN
80 // vIndex: 0
82
83 // vIndex: 4
84 virtual void putKey(::std::string const& key, ::std::string_view data, ::DBHelpers::Category category);
85
86 // vIndex: 3
87 virtual void putKey(::std::string const& key, ::std::string const& data, ::DBHelpers::Category category);
88
89 // vIndex: 2
90 virtual void putKey(::std::string const& key, ::std::string&& data, ::DBHelpers::Category category);
91
92 // vIndex: 1
93 virtual void
94 putKey(::std::string const& key, ::std::shared_ptr<::std::string> data, ::DBHelpers::Category category);
95
96 // vIndex: 5
97 virtual void deleteKey(::std::string const& key, ::DBHelpers::Category category);
98
99 // vIndex: 6
100 virtual void flush(::LevelStorage& db);
101 // NOLINTEND
102
103public:
104 // member functions
105 // NOLINTBEGIN
107
109
110 MCAPI void clear();
111 // NOLINTEND
112
113public:
114 // constructor thunks
115 // NOLINTBEGIN
116 MCAPI void* $ctor();
117
118 MCAPI void* $ctor(::LevelStorageWriteBatch&& rhs);
119 // NOLINTEND
120
121public:
122 // destructor thunk
123 // NOLINTBEGIN
124 MCAPI void $dtor();
125 // NOLINTEND
126
127public:
128 // virtual function thunks
129 // NOLINTBEGIN
130 MCAPI void $putKey(::std::string const& key, ::std::string_view data, ::DBHelpers::Category category);
131
132 MCAPI void $putKey(::std::string const& key, ::std::string const& data, ::DBHelpers::Category category);
133
134 MCAPI void $putKey(::std::string const& key, ::std::string&& data, ::DBHelpers::Category category);
135
136 MCAPI void $putKey(::std::string const& key, ::std::shared_ptr<::std::string> data, ::DBHelpers::Category category);
137
138 MCAPI void $deleteKey(::std::string const& key, ::DBHelpers::Category category);
139
140 MCAPI void $flush(::LevelStorage& db);
141 // NOLINTEND
142
143public:
144 // vftables
145 // NOLINTBEGIN
146 MCNAPI static void** $vftable();
147 // NOLINTEND
148};
Definition LevelStorageWriteBatch.h:23
Definition LevelStorageWriteBatch.h:14
static MCAPI void ** $vftable()
Definition LevelStorage.h:25
Definition LevelStorageWriteBatch.h:34