28 class TransferTracker {
32 ::ll::TypedStorage<8, 8, ::ClientBlobCache::Server::ActiveTransfersManager&> mCache;
33 ::ll::TypedStorage<8, 176, ::NetworkIdentifier const> mOwner;
34 ::ll::TypedStorage<8, 24, ::std::vector<::ClientBlobCache::Server::ActiveTransfer>> mTransfers;
35 ::ll::TypedStorage<4, 4, uint> mMaxConcurrentTransfers;
40 TransferTracker& operator=(TransferTracker
const&);
41 TransferTracker(TransferTracker
const&);
48 MCNAPI uint64 getMaximumConcurrentTransfers()
const;
50 MCNAPI uint64 getNumberOfActiveTransfers()
const;
52 MCNAPI ::std::vector<::ClientBlobCache::Server::ActiveTransfer>
const& getTransfers()
const;
67 using CacheMap = ::std::map<uint64, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>;
69 using CacheMapIterator = ::std::_Tree_iterator<::std::_Tree_val<
70 ::std::_Tree_simple_types<::std::pair<uint64 const, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>>>>;
80 ::std::unique_ptr<::ClientBlobCache::Server::ActiveTransfersManager::TransferTracker>>>
82 ::ll::TypedStorage<8, 16, ::std::map<uint64, ::std::weak_ptr<::ClientBlobCache::Server::Blob>>> mSentBlobs;
83 ::ll::TypedStorage<8, 8, uint64> mCacheSizeBytes;
89 virtual ~ActiveTransfersManager() ;
95 MCAPI ActiveTransfersManager();
97 MCAPI ::std::shared_ptr<::ClientBlobCache::Server::Blob> dropBlobFor(
::NetworkIdentifier const& client, uint64
id);
105 MCAPI ::std::shared_ptr<::ClientBlobCache::Server::Blob>
106 rememberBlob(uint64
id, ::std::string& data,
bool isChunkInTickRange);
108 MCAPI ::ClientBlobCache::Server::TransferBuilder startTransfer(
::NetworkIdentifier const& client)
const;
110 MCAPI ::ClientBlobCache::Server::TransferBuilder tryStartTransfer(
::NetworkIdentifier const& client)
const;
115 MCAPI
void visitTransfers(