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/world/level/storage/db_helpers/Category.h"
7
8// auto generated forward declare list
9// clang-format off
10class LevelStorage;
11namespace Bedrock::Threading { class Mutex; }
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
31 // NOLINTEND
32
33 public:
34 // prevent constructor by default
35 PerfContext& operator=(PerfContext const&);
38 };
39
40 struct BatchEntry {
41 public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::std::string>> mLatestValue;
45 ::ll::TypedStorage<1, 1, bool> mDeleted;
46 ::ll::TypedStorage<4, 4, ::DBHelpers::Category> mCategory;
47 // NOLINTEND
48
49 public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI ~BatchEntry();
53 // NOLINTEND
54
55 public:
56 // destructor thunk
57 // NOLINTBEGIN
58 MCFOLD void $dtor();
59 // NOLINTEND
60 };
61
62 using BatchContainerType = ::std::map<::std::string, ::LevelStorageWriteBatch::BatchEntry>;
63
64 using iterator = ::std::_Tree_iterator<::std::_Tree_val<
65 ::std::_Tree_simple_types<::std::pair<::std::string const, ::LevelStorageWriteBatch::BatchEntry>>>>;
66
67 using const_iterator = ::std::_Tree_const_iterator<::std::_Tree_val<
68 ::std::_Tree_simple_types<::std::pair<::std::string const, ::LevelStorageWriteBatch::BatchEntry>>>>;
69
70public:
71 // member variables
72 // NOLINTBEGIN
73 ::ll::TypedStorage<8, 24, ::std::vector<::std::function<void()>>> mFlushCallbacks;
74 ::ll::TypedStorage<8, 16, ::std::map<::std::string, ::LevelStorageWriteBatch::BatchEntry>> mBatch;
75 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mFlushCallbacksMutex;
76 // NOLINTEND
77
78public:
79 // prevent constructor by default
82
83public:
84 // virtual functions
85 // NOLINTBEGIN
86 // vIndex: 0
88
89 // vIndex: 4
90 virtual void putKey(::std::string const& key, ::std::string_view data, ::DBHelpers::Category category);
91
92 // vIndex: 3
93 virtual void putKey(::std::string const& key, ::std::string const& data, ::DBHelpers::Category category);
94
95 // vIndex: 2
96 virtual void putKey(::std::string const& key, ::std::string&& data, ::DBHelpers::Category category);
97
98 // vIndex: 1
99 virtual void
100 putKey(::std::string const& key, ::std::shared_ptr<::std::string> data, ::DBHelpers::Category category);
101
102 // vIndex: 5
103 virtual void deleteKey(::std::string const& key, ::DBHelpers::Category category);
104
105 // vIndex: 6
106 virtual void flush(::LevelStorage& db);
107 // NOLINTEND
108
109public:
110 // member functions
111 // NOLINTBEGIN
113
114 MCAPI void clear();
115 // NOLINTEND
116
117public:
118 // constructor thunks
119 // NOLINTBEGIN
120 MCAPI void* $ctor(::LevelStorageWriteBatch&& rhs);
121 // NOLINTEND
122
123public:
124 // destructor thunk
125 // NOLINTBEGIN
126 MCAPI void $dtor();
127 // NOLINTEND
128
129public:
130 // virtual function thunks
131 // NOLINTBEGIN
132 MCAPI void $putKey(::std::string const& key, ::std::string_view data, ::DBHelpers::Category category);
133
134 MCAPI void $putKey(::std::string const& key, ::std::string const& data, ::DBHelpers::Category category);
135
136 MCAPI void $putKey(::std::string const& key, ::std::string&& data, ::DBHelpers::Category category);
137
138 MCAPI void $putKey(::std::string const& key, ::std::shared_ptr<::std::string> data, ::DBHelpers::Category category);
139
140 MCAPI void $deleteKey(::std::string const& key, ::DBHelpers::Category category);
141
142 MCAPI void $flush(::LevelStorage& db);
143 // NOLINTEND
144
145public:
146 // vftables
147 // NOLINTBEGIN
148 MCAPI static void** $vftable();
149 // NOLINTEND
150};
Definition LevelStorageWriteBatch.h:23
Definition LevelStorageWriteBatch.h:14
Definition LevelStorage.h:24
Definition LevelStorageWriteBatch.h:40
Definition Alias.h:14