Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Unified Diff: cc/resources/prioritized_resource.h

Issue 1057283003: Remove parts of //cc we aren't using (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/pixel_ref_map_unittest.cc ('k') | cc/resources/prioritized_resource.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/prioritized_resource.h
diff --git a/cc/resources/prioritized_resource.h b/cc/resources/prioritized_resource.h
deleted file mode 100644
index 3b6ecc028e84ff66416776d1e078c936de6bb701..0000000000000000000000000000000000000000
--- a/cc/resources/prioritized_resource.h
+++ /dev/null
@@ -1,184 +0,0 @@
-// Copyright 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CC_RESOURCES_PRIORITIZED_RESOURCE_H_
-#define CC_RESOURCES_PRIORITIZED_RESOURCE_H_
-
-#include "base/basictypes.h"
-#include "base/logging.h"
-#include "base/memory/scoped_ptr.h"
-#include "cc/base/cc_export.h"
-#include "cc/resources/resource.h"
-#include "cc/resources/resource_provider.h"
-#include "ui/gfx/geometry/rect.h"
-#include "ui/gfx/geometry/size.h"
-#include "ui/gfx/geometry/vector2d.h"
-
-namespace cc {
-
-class PrioritizedResourceManager;
-class Proxy;
-
-class CC_EXPORT PrioritizedResource {
- public:
- static scoped_ptr<PrioritizedResource> Create(
- PrioritizedResourceManager* manager,
- const gfx::Size& size,
- ResourceFormat format) {
- return make_scoped_ptr(new PrioritizedResource(manager, size, format));
- }
- static scoped_ptr<PrioritizedResource> Create(
- PrioritizedResourceManager* manager) {
- return make_scoped_ptr(
- new PrioritizedResource(manager, gfx::Size(), RGBA_8888));
- }
- ~PrioritizedResource();
-
- // Texture properties. Changing these causes the backing texture to be lost.
- // Setting these to the same value is a no-op.
- void SetTextureManager(PrioritizedResourceManager* manager);
- PrioritizedResourceManager* resource_manager() { return manager_; }
- void SetDimensions(const gfx::Size& size, ResourceFormat format);
- ResourceFormat format() const { return format_; }
- gfx::Size size() const { return size_; }
- size_t bytes() const { return bytes_; }
- bool contents_swizzled() const { return contents_swizzled_; }
-
- // Set priority for the requested texture.
- void set_request_priority(int priority) { priority_ = priority; }
- int request_priority() const { return priority_; }
-
- // After PrioritizedResource::PrioritizeTextures() is called, this returns
- // if the the request succeeded and this texture can be acquired for use.
- bool can_acquire_backing_texture() const { return is_above_priority_cutoff_; }
-
- // This returns whether we still have a backing texture. This can continue
- // to be true even after CanAcquireBackingTexture() becomes false. In this
- // case the texture can be used but shouldn't be updated since it will get
- // taken away "soon".
- bool have_backing_texture() const { return !!backing(); }
-
- bool BackingResourceWasEvicted() const;
-
- // If CanAcquireBackingTexture() is true AcquireBackingTexture() will acquire
- // a backing texture for use. Call this whenever the texture is actually
- // needed.
- void AcquireBackingTexture(ResourceProvider* resource_provider);
-
- // TODO(epenner): Request late is really a hack for when we are totally out of
- // memory (all textures are visible) but we can still squeeze into the limit
- // by not painting occluded textures. In this case the manager refuses all
- // visible textures and RequestLate() will enable CanAcquireBackingTexture()
- // on a call-order basis. We might want to just remove this in the future
- // (carefully) and just make sure we don't regress OOMs situations.
- bool RequestLate();
-
- // Update pixels of backing resource from image. This functions will aquire
- // the backing if needed.
- void SetPixels(ResourceProvider* resource_provider,
- const uint8_t* image,
- const gfx::Rect& image_rect,
- const gfx::Rect& source_rect,
- const gfx::Vector2d& dest_offset);
-
- ResourceProvider::ResourceId resource_id() const {
- return backing_ ? backing_->id() : 0;
- }
-
- // Self-managed textures are accounted for when prioritizing other textures,
- // but they are not allocated/recycled/deleted, so this needs to be done
- // externally. CanAcquireBackingTexture() indicates if the texture would have
- // been allowed given its priority.
- void set_is_self_managed(bool is_self_managed) {
- is_self_managed_ = is_self_managed;
- }
- bool is_self_managed() { return is_self_managed_; }
- void SetToSelfManagedMemoryPlaceholder(size_t bytes);
-
- void ReturnBackingTexture();
-
- private:
- friend class PrioritizedResourceManager;
- friend class PrioritizedResourceTest;
-
- class Backing : public Resource {
- public:
- Backing(unsigned id,
- ResourceProvider* resource_provider,
- const gfx::Size& size,
- ResourceFormat format);
- ~Backing();
- void UpdatePriority();
- void UpdateState(ResourceProvider* resource_provider);
-
- PrioritizedResource* owner() { return owner_; }
- bool CanBeRecycledIfNotInExternalUse() const;
- int request_priority_at_last_priority_update() const {
- return priority_at_last_priority_update_;
- }
- bool was_above_priority_cutoff_at_last_priority_update() const {
- return was_above_priority_cutoff_at_last_priority_update_;
- }
- bool in_drawing_impl_tree() const { return in_drawing_impl_tree_; }
- bool in_parent_compositor() const { return in_parent_compositor_; }
-
- void DeleteResource(ResourceProvider* resource_provider);
- bool ResourceHasBeenDeleted() const;
-
- private:
- const Proxy* proxy() const;
-
- friend class PrioritizedResource;
- friend class PrioritizedResourceManager;
- PrioritizedResource* owner_;
- int priority_at_last_priority_update_;
- bool was_above_priority_cutoff_at_last_priority_update_;
-
- // Set if this is currently-drawing impl tree.
- bool in_drawing_impl_tree_;
- // Set if this is in the parent compositor.
- bool in_parent_compositor_;
-
- bool resource_has_been_deleted_;
-
-#if DCHECK_IS_ON()
- ResourceProvider* resource_provider_;
-#endif
- DISALLOW_COPY_AND_ASSIGN(Backing);
- };
-
- PrioritizedResource(PrioritizedResourceManager* resource_manager,
- const gfx::Size& size,
- ResourceFormat format);
-
- bool is_above_priority_cutoff() { return is_above_priority_cutoff_; }
- void set_above_priority_cutoff(bool is_above_priority_cutoff) {
- is_above_priority_cutoff_ = is_above_priority_cutoff;
- }
- void set_manager_internal(PrioritizedResourceManager* manager) {
- manager_ = manager;
- }
-
- Backing* backing() const { return backing_; }
- void Link(Backing* backing);
- void Unlink();
-
- gfx::Size size_;
- ResourceFormat format_;
- size_t bytes_;
- bool contents_swizzled_;
-
- int priority_;
- bool is_above_priority_cutoff_;
- bool is_self_managed_;
-
- Backing* backing_;
- PrioritizedResourceManager* manager_;
-
- DISALLOW_COPY_AND_ASSIGN(PrioritizedResource);
-};
-
-} // namespace cc
-
-#endif // CC_RESOURCES_PRIORITIZED_RESOURCE_H_
« no previous file with comments | « cc/resources/pixel_ref_map_unittest.cc ('k') | cc/resources/prioritized_resource.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698