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

Unified Diff: src/gpu/gl/GrGLNameAllocator.h

Issue 1150243003: Simplify path allocation, clean up resources correctly (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 11 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 | « src/gpu/gl/GrGLGpu.cpp ('k') | src/gpu/gl/GrGLNameAllocator.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/gl/GrGLNameAllocator.h
diff --git a/src/gpu/gl/GrGLNameAllocator.h b/src/gpu/gl/GrGLNameAllocator.h
deleted file mode 100644
index 8b0b2a244ab971bfe8c47840291cc2f9ec9199fb..0000000000000000000000000000000000000000
--- a/src/gpu/gl/GrGLNameAllocator.h
+++ /dev/null
@@ -1,86 +0,0 @@
-
-/*
- * Copyright 2014 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef GrGLNameAllocator_DEFINED
-#define GrGLNameAllocator_DEFINED
-
-#include "SkRefCnt.h"
-#include "gl/GrGLTypes.h"
-
-/**
- * This class assumes ownership of an explicit range of OpenGL object names and
- * manages allocations within that range. This allows the app to generate new
- * objects on the client side without making round trips to the GL server.
- */
-class GrGLNameAllocator {
-public:
- /**
- * Constructs a name allocator that produces names within the explicit
- * half-open range [firstName, end). Note that the caller will most likely
- * need to call glGen* beforehand to reserve a range within the GL driver,
- * and then invoke this constructor with that range.
- *
- * @param firstName The first name in the range owned by this class. Must be
- greater than zero.
- * @param endName The first past-the-end name beyond the range owned by
- this class. Must be >= firstName.
- */
- GrGLNameAllocator(GrGLuint firstName, GrGLuint endName);
-
- /**
- * Destructs the name allocator. The caller is responsible for calling the
- * appropriate glDelete* on the range if necessary.
- */
- ~GrGLNameAllocator();
-
- /**
- * Return the beginning of this class's range.
- *
- * @return The first name in the range owned by this class.
- */
- GrGLuint firstName() const { return fFirstName; }
-
- /**
- * Return the end of this class's range. Note that endName() is not owned by
- * this class.
- *
- * @return One plus the final name in the range owned by this class.
- */
- GrGLuint endName() const { return fEndName; }
-
- /**
- * Allocate an OpenGL object name from within this class's range.
- *
- * @return The name if one was available,
- 0 if all the names in the range were already in use.
- */
- GrGLuint allocateName();
-
- /**
- * Free an OpenGL object name, allowing it to be returned by a future call
- * to allocateName(). Note that the caller should most likely redefine the
- * object as empty to deallocate any underlying GPU memory before calling
- * this method (but not call glDelete*, since that would free up the name
- * within the driver itself).
- *
- * @param name The object name to free. Not-allocated names are silently
- * ignored the same way they are in the OpenGL spec.
- */
- void free(GrGLuint name);
-
-private:
- class SparseNameRange;
- class SparseNameTree;
- class ContiguousNameRange;
-
- const GrGLuint fFirstName;
- const GrGLuint fEndName;
- SkAutoTUnref<SparseNameRange> fAllocatedNames;
-};
-
-#endif
« no previous file with comments | « src/gpu/gl/GrGLGpu.cpp ('k') | src/gpu/gl/GrGLNameAllocator.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698