// Copyright 2016 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CC_TILES_DECODED_IMAGE_TRACKER_H_ #define CC_TILES_DECODED_IMAGE_TRACKER_H_ #include <memory> #include <utility> #include <vector> #include "base/functional/bind.h" #include "base/memory/raw_ptr.h" #include "base/task/sequenced_task_runner.h" #include "base/time/tick_clock.h" #include "base/time/time.h" #include "cc/cc_export.h" #include "cc/paint/target_color_params.h" #include "cc/tiles/image_controller.h" namespace cc { // This class is the main interface for the rest of the system to request // decodes. It is responsible for keeping the decodes locked for a number of // frames, specified as |kNumFramesToLock| in the implementation file. // // Note that it is safe to replace ImageController's cache without doing // anything special with this class, since it retains only ids to the decode // requests. When defunct ids are then used to try and unlock the image, they // are silently ignored. class CC_EXPORT DecodedImageTracker { … }; } // namespace cc #endif // CC_TILES_DECODED_IMAGE_TRACKER_H_