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

Unified Diff: mojo/gpu/texture_cache.h

Issue 1533753002: Remove TextureCache and TextureUploader. (Closed) Base URL: git@github.com:domokit/mojo.git@cl-2a
Patch Set: rebase Created 5 years 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 | « mojo/gpu/BUILD.gn ('k') | mojo/gpu/texture_cache.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/gpu/texture_cache.h
diff --git a/mojo/gpu/texture_cache.h b/mojo/gpu/texture_cache.h
deleted file mode 100644
index 347d7c547d2d518826db50300b84ace35897514f..0000000000000000000000000000000000000000
--- a/mojo/gpu/texture_cache.h
+++ /dev/null
@@ -1,81 +0,0 @@
-// Copyright 2015 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 MOJO_GPU_TEXTURE_CACHE_H_
-#define MOJO_GPU_TEXTURE_CACHE_H_
-
-#include <GLES2/gl2.h>
-
-#include <deque>
-#include <map>
-
-#include "base/macros.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/memory/weak_ptr.h"
-#include "mojo/public/cpp/bindings/binding.h"
-#include "mojo/services/surfaces/interfaces/surfaces.mojom.h"
-
-namespace mojo {
-
-class GLContext;
-class GLTexture;
-class Size;
-
-// Represents a cache of textures which can be drawn to and submitted to a
-// surface.
-// Each |texture| in the cache has an associated |resource_id| which must be
-// used when the texture is submitted to a surface via a
-// TransferableResourcePtr. This class must also be hooked up to the surface as
-// a ResourceReturner such that the resources are properly marked as available
-// to be used again.
-class TextureCache : public mojo::ResourceReturner {
- public:
- class TextureInfo {
- public:
- TextureInfo();
- TextureInfo(scoped_ptr<mojo::GLTexture> texture, uint32_t resource_id);
- ~TextureInfo();
- scoped_ptr<mojo::GLTexture> TakeTexture() { return texture_.Pass(); }
- uint32_t resource_id() { return resource_id_; }
-
- private:
- scoped_ptr<mojo::GLTexture> texture_;
- uint32_t resource_id_;
-
- DISALLOW_COPY_AND_ASSIGN(TextureInfo);
- };
-
- // Returns the ResourceReturner to be given to the surface the textures will
- // be uploaded to via |out_resource_returner|.
- TextureCache(base::WeakPtr<mojo::GLContext> gl_context,
- mojo::ResourceReturnerPtr* out_resource_returner);
- ~TextureCache() override;
-
- // Returns a texture for the given size. If no texture is available the
- // scoped_ptr will be empty.
- scoped_ptr<TextureInfo> GetTexture(const mojo::Size& requested_size);
-
- // Notifies the TextureCache to expect the given resource to be returned
- // shortly.
- void NotifyPendingResourceReturn(uint32_t resource_id,
- scoped_ptr<mojo::GLTexture> texture);
-
- private:
- // mojo::ResourceReturner
- void ReturnResources(
- mojo::Array<mojo::ReturnedResourcePtr> resources) override;
-
- base::WeakPtr<mojo::GLContext> gl_context_;
- mojo::Binding<mojo::ResourceReturner> returner_binding_;
- std::deque<uint32_t> available_textures_;
- std::map<uint32_t, scoped_ptr<mojo::GLTexture>> resource_to_texture_map_;
- std::map<uint32_t, GLuint> resource_to_sync_point_map_;
- uint32_t next_resource_id_;
-
- DISALLOW_COPY_AND_ASSIGN(TextureCache);
-};
-
-} // namespace mojo
-
-#endif // MOJO_GPU_TEXTURE_CACHE_H_
« no previous file with comments | « mojo/gpu/BUILD.gn ('k') | mojo/gpu/texture_cache.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698