#include "third_party/blink/renderer/platform/graphics/parkable_image_manager.h"
#include "base/metrics/histogram_functions.h"
#include "base/not_fatal_until.h"
#include "base/synchronization/lock.h"
#include "base/task/single_thread_task_runner.h"
#include "base/time/time.h"
#include "base/trace_event/process_memory_dump.h"
#include "third_party/blink/renderer/platform/graphics/parkable_image.h"
#include "third_party/blink/renderer/platform/scheduler/public/main_thread.h"
#include "third_party/blink/renderer/platform/wtf/wtf.h"
namespace blink {
struct ParkableImageManager::Statistics { … };
constexpr const char* ParkableImageManager::kAllocatorDumpName;
constexpr base::TimeDelta ParkableImageManager::kDelayedParkingInterval;
ParkableImageManager& ParkableImageManager::Instance() { … }
ParkableImageManager::ParkableImageManager()
: … { … }
void ParkableImageManager::SetTaskRunnerForTesting(
scoped_refptr<base::SingleThreadTaskRunner> task_runner) { … }
bool ParkableImageManager::OnMemoryDump(
const base::trace_event::MemoryDumpArgs&,
base::trace_event::ProcessMemoryDump* pmd) { … }
ParkableImageManager::Statistics ParkableImageManager::ComputeStatistics()
const { … }
size_t ParkableImageManager::Size() const { … }
DiskDataAllocator& ParkableImageManager::data_allocator() const { … }
void ParkableImageManager::ResetForTesting() { … }
void ParkableImageManager::Add(ParkableImageImpl* impl) { … }
void ParkableImageManager::RecordStatisticsAfter5Minutes() const { … }
scoped_refptr<ParkableImageImpl> ParkableImageManager::CreateParkableImage(
size_t offset) { … }
void ParkableImageManager::DestroyParkableImageOnMainThread(
scoped_refptr<ParkableImageImpl> image) { … }
void ParkableImageManager::DestroyParkableImage(
scoped_refptr<ParkableImageImpl> image) { … }
void ParkableImageManager::Remove(ParkableImageImpl* image) { … }
void ParkableImageManager::MoveImage(ParkableImageImpl* image,
WTF::HashSet<ParkableImageImpl*>* from,
WTF::HashSet<ParkableImageImpl*>* to) { … }
bool ParkableImageManager::IsRegistered(ParkableImageImpl* image) { … }
void ParkableImageManager::OnWrittenToDisk(ParkableImageImpl* image) { … }
void ParkableImageManager::OnReadFromDisk(ParkableImageImpl* image) { … }
void ParkableImageManager::ScheduleDelayedParkingTaskIfNeeded() { … }
void ParkableImageManager::MaybeParkImages() { … }
}