#include "components/reporting/resources/resource_manager.h"
#include <atomic>
#include <cstdint>
#include <optional>
#include <utility>
#include "base/logging.h"
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_refptr.h"
#include "base/sequence_checker.h"
#include "base/task/bind_post_task.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
namespace reporting {
ResourceManager::ResourceManager(uint64_t total_size)
: … { … }
ResourceManager::~ResourceManager() = default;
bool ResourceManager::Reserve(uint64_t size) { … }
void ResourceManager::Discard(uint64_t size) { … }
uint64_t ResourceManager::GetTotal() const { … }
uint64_t ResourceManager::GetUsed() const { … }
void ResourceManager::Test_SetTotal(uint64_t test_total) { … }
void ResourceManager::RegisterCallback(uint64_t size, base::OnceClosure cb) { … }
void ResourceManager::FlushCallbacks() { … }
ScopedReservation::ScopedReservation() noexcept = default;
ScopedReservation::ScopedReservation(
uint64_t size,
scoped_refptr<ResourceManager> resource_manager) noexcept
: … { … }
ScopedReservation::ScopedReservation(
uint64_t size,
const ScopedReservation& other_reservation) noexcept
: … { … }
ScopedReservation::ScopedReservation(ScopedReservation&& other) noexcept
: … { … }
bool ScopedReservation::reserved() const { … }
bool ScopedReservation::Reduce(uint64_t new_size) { … }
void ScopedReservation::HandOver(ScopedReservation& other) { … }
ScopedReservation::~ScopedReservation() { … }
}