LeviLamina
Loading...
Searching...
No Matches
ActiveTransfersManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7#include "mc/network/NetworkIdentifier.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace ClientBlobCache::Server { class ActiveTransfer; }
12namespace ClientBlobCache::Server { class Blob; }
13// clang-format on
14
15namespace ClientBlobCache::Server {
16
18public:
19 // ActiveTransfersManager inner types declare
20 // clang-format off
21 class TransferTracker;
22 // clang-format on
23
24 // ActiveTransfersManager inner types define
26 public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 8, ::ClientBlobCache::Server::ActiveTransfersManager&> mCache;
30 ::ll::TypedStorage<8, 176, ::NetworkIdentifier const> mOwner;
31 ::ll::TypedStorage<8, 24, ::std::vector<::ClientBlobCache::Server::ActiveTransfer>> mTransfers;
32 ::ll::TypedStorage<4, 4, uint> mMaxConcurrentTransfers;
33 // NOLINTEND
34
35 public:
36 // prevent constructor by default
37 TransferTracker& operator=(TransferTracker const&);
40
41 public:
42 // member functions
43 // NOLINTBEGIN
44 MCNAPI void onAckReceived(uint64 acked);
45 // NOLINTEND
46 };
47
48 using CacheMap = ::std::map<uint64, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>;
49
50 using CacheMapIterator = ::std::_Tree_iterator<::std::_Tree_val<
51 ::std::_Tree_simple_types<::std::pair<uint64 const, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>>>>;
52
53public:
54 // member variables
55 // NOLINTBEGIN
56 ::ll::TypedStorage<
57 8,
58 64,
59 ::std::unordered_map<
61 ::std::unique_ptr<::ClientBlobCache::Server::ActiveTransfersManager::TransferTracker>>>
62 mTransferTrackerMap;
63 ::ll::TypedStorage<8, 16, ::std::map<uint64, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>> mSentBlobs;
64 ::ll::TypedStorage<8, 8, uint64> mCacheSizeBytes;
65 // NOLINTEND
66
67public:
68 // virtual functions
69 // NOLINTBEGIN
70 // vIndex: 0
71 virtual ~ActiveTransfersManager() /*override*/ = default;
72 // NOLINTEND
73
74public:
75 // member functions
76 // NOLINTBEGIN
77 MCAPI ::std::shared_ptr<::ClientBlobCache::Server::Blob> dropBlobFor(::NetworkIdentifier const& client, uint64 id);
78
79 MCAPI bool isCacheEnabledFor(::NetworkIdentifier const& client) const;
80
81 MCAPI ::std::shared_ptr<::ClientBlobCache::Server::Blob>
82 rememberBlob(uint64 id, ::std::string& data, bool isChunkInTickRange);
83 // NOLINTEND
84
85public:
86 // vftables
87 // NOLINTBEGIN
88 MCNAPI static void** $vftable();
89 // NOLINTEND
90};
91
92} // namespace ClientBlobCache::Server
Definition EnableNonOwnerReferences.h:7
Definition ActiveTransfersManager.h:17
Definition NetworkIdentifier.h:10