Make the Object class independent of the GL version.

Bug 18962347

Change-Id: Ica99629bf58e799d6552d4a92ce3ae3eff57da27
Reviewed-on: https://swiftshader-review.googlesource.com/1880
Reviewed-by: Nicolas Capens <capn@google.com>
Tested-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/common/Object.cpp b/src/OpenGL/common/Object.cpp
index 04eef92..d9a868a 100644
--- a/src/OpenGL/common/Object.cpp
+++ b/src/OpenGL/common/Object.cpp
@@ -9,10 +9,9 @@
 // or implied, including but not limited to any patent rights, are granted to you.
 //
 
-// RefCountObject.cpp: Defines the RefCountObject base class that provides
+// Object.cpp: Defines the Object base class that provides
 // lifecycle support for GL objects using the traditional BindObject scheme, but
 // that need to be reference counted for correct cross-context deletion.
-// (Concretely, textures, buffers and renderbuffers.)
 
 #include "Object.hpp"
 
@@ -21,24 +20,22 @@
 namespace gl
 {
 
-RefCountObject::RefCountObject(GLuint id)
+Object::Object(GLuint name) : name(name)
 {
-    mId = id;
-    
 	referenceCount = 0;
 }
 
-RefCountObject::~RefCountObject()
+Object::~Object()
 {
     ASSERT(referenceCount == 0);
 }
 
-void RefCountObject::addRef()
+void Object::addRef()
 {
 	sw::atomicIncrement(&referenceCount);
 }
 
-void RefCountObject::release()
+void Object::release()
 {
     ASSERT(referenceCount > 0);
 
@@ -53,13 +50,4 @@
 	}
 }
 
-void RefCountObjectBindingPointer::set(RefCountObject *newObject)
-{
-    // addRef first in case newObject == mObject and this is the last reference to it.
-    if(newObject != NULL) newObject->addRef();
-    if(mObject != NULL) mObject->release();
-
-    mObject = newObject;
-}
-
 }
diff --git a/src/OpenGL/common/Object.hpp b/src/OpenGL/common/Object.hpp
index 392819d..750391d 100644
--- a/src/OpenGL/common/Object.hpp
+++ b/src/OpenGL/common/Object.hpp
@@ -9,67 +9,60 @@
 // or implied, including but not limited to any patent rights, are granted to you.
 //
 
-// Object.hpp: Defines the RefCountObject base class that provides
+// Object.hpp: Defines the Object base class that provides
 // lifecycle support for GL objects using the traditional BindObject scheme, but
 // that need to be reference counted for correct cross-context deletion.
-// (Concretely, textures, buffers and renderbuffers.)
 
-#ifndef LIBGLESV2_REFCOUNTOBJECT_H_
-#define LIBGLESV2_REFCOUNTOBJECT_H_
+#ifndef gl_Object_hpp
+#define gl_Object_hpp
 
 #include "common/debug.h"
 
-#define GL_APICALL
-#include <GLES2/gl2.h>
-
-#include <cstddef>
+typedef unsigned int GLuint;
 
 namespace gl
 {
 
-class RefCountObject
+class Object
 {
-  public:
-    explicit RefCountObject(GLuint id);
-    virtual ~RefCountObject();
+public:
+    explicit Object(GLuint name);
+    virtual ~Object();
 
     virtual void addRef();
 	virtual void release();
 
-    GLuint id() const {return mId;}
+    const GLuint name;
     
-  private:
-    GLuint mId;
-
+private:
     volatile int referenceCount;
 };
 
-class RefCountObjectBindingPointer
-{
-  protected:
-    RefCountObjectBindingPointer() : mObject(NULL) { }
-    ~RefCountObjectBindingPointer() { ASSERT(mObject == NULL); } // Objects have to be released before the resource manager is destroyed, so they must be explicitly cleaned up.
-
-    void set(RefCountObject *newObject);
-    RefCountObject *get() const { return mObject; }
-
-  public:
-    GLuint id() const { return (mObject != NULL) ? mObject->id() : 0; }
-    bool operator ! () const { return (get() == NULL); }
-
-  private:
-    RefCountObject *mObject;
-};
-
 template<class ObjectType>
-class BindingPointer : public RefCountObjectBindingPointer
+class BindingPointer
 {
-  public:
-    void set(ObjectType *newObject) { RefCountObjectBindingPointer::set(newObject); }
-    ObjectType *get() const { return static_cast<ObjectType*>(RefCountObjectBindingPointer::get()); }
-    ObjectType *operator -> () const { return get(); }
+public:
+	BindingPointer() : object(nullptr) { }
+
+	~BindingPointer() { ASSERT(!object); } // Objects have to be released before the resource manager is destroyed, so they must be explicitly cleaned up.
+
+    void set(ObjectType *newObject) 
+	{
+		if(newObject) newObject->addRef();
+		if(object) object->release();
+
+		object = newObject;
+	}
+    ObjectType *get() const { return object; }
+    ObjectType *operator->() const { return object; }
+
+	GLuint name() const { return object ? object->name : 0; }
+    bool operator!() const { return !object; }
+
+private:
+    ObjectType *object;
 };
 
 }
 
-#endif   // LIBGLESV2_REFCOUNTOBJECT_H_
+#endif   // gl_Object_hpp
diff --git a/src/OpenGL/libEGL/Texture.hpp b/src/OpenGL/libEGL/Texture.hpp
index 2e965b8..164c480 100644
--- a/src/OpenGL/libEGL/Texture.hpp
+++ b/src/OpenGL/libEGL/Texture.hpp
@@ -5,10 +5,10 @@
 

 namespace egl

 {

-class Texture : public gl::RefCountObject

+class Texture : public gl::Object

 {

 public:

-	Texture(GLuint id) : RefCountObject(id) {};

+	Texture(GLuint name) : Object(name) {};

 	virtual void releaseTexImage() = 0;

 };

 }

diff --git a/src/OpenGL/libGL/Buffer.cpp b/src/OpenGL/libGL/Buffer.cpp
index a46b316..f5ca12a 100644
--- a/src/OpenGL/libGL/Buffer.cpp
+++ b/src/OpenGL/libGL/Buffer.cpp
@@ -22,7 +22,7 @@
 namespace gl
 {
 
-Buffer::Buffer(GLuint id) : RefCountObject(id)
+Buffer::Buffer(GLuint name) : Object(name)
 {
     mContents = 0;
     mSize = 0;
diff --git a/src/OpenGL/libGL/Buffer.h b/src/OpenGL/libGL/Buffer.h
index 947c95f..8aea99f 100644
--- a/src/OpenGL/libGL/Buffer.h
+++ b/src/OpenGL/libGL/Buffer.h
@@ -27,10 +27,10 @@
 

 namespace gl

 {

-class Buffer : public gl::RefCountObject

+class Buffer : public Object

 {

   public:

-    explicit Buffer(GLuint id);

+    explicit Buffer(GLuint name);

 

     virtual ~Buffer();

 

diff --git a/src/OpenGL/libGL/Context.cpp b/src/OpenGL/libGL/Context.cpp
index af598f8..9285738 100644
--- a/src/OpenGL/libGL/Context.cpp
+++ b/src/OpenGL/libGL/Context.cpp
@@ -650,24 +650,24 @@
     mState.activeSampler = active;

 }

 

-GLuint Context::getReadFramebufferHandle() const

+GLuint Context::getReadFramebufferName() const

 {

     return mState.readFramebuffer;

 }

 

-GLuint Context::getDrawFramebufferHandle() const

+GLuint Context::getDrawFramebufferName() const

 {

     return mState.drawFramebuffer;

 }

 

-GLuint Context::getRenderbufferHandle() const

+GLuint Context::getRenderbufferName() const

 {

-    return mState.renderbuffer.id();

+    return mState.renderbuffer.name();

 }

 

-GLuint Context::getArrayBufferHandle() const

+GLuint Context::getArrayBufferName() const

 {

-    return mState.arrayBuffer.id();

+    return mState.arrayBuffer.name();

 }

 

 GLuint Context::getActiveQuery(GLenum target) const

@@ -688,7 +688,7 @@
 

     if(queryObject)

     {

-        return queryObject->id();

+        return queryObject->name;

     }

     

 	return 0;

@@ -1178,7 +1178,7 @@
 

 Texture *Context::getSamplerTexture(unsigned int sampler, TextureType type)

 {

-    GLuint texid = mState.samplerTexture[type][sampler].id();

+    GLuint texid = mState.samplerTexture[type][sampler].name();

 

     if(texid == 0)   // Special case: 0 refers to different initial textures based on the target

     {

@@ -1289,12 +1289,12 @@
 	case GL_MAX_RENDERBUFFER_SIZE:            *params = IMPLEMENTATION_MAX_RENDERBUFFER_SIZE; break;

     case GL_NUM_SHADER_BINARY_FORMATS:        *params = 0;                                    break;

     case GL_SHADER_BINARY_FORMATS:      /* no shader binary formats are supported */          break;

-    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.id();              break;

-    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.id();       break;

+    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.name();            break;

+    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.name();     break;

 //	case GL_FRAMEBUFFER_BINDING:            // now equivalent to GL_DRAW_FRAMEBUFFER_BINDING_ANGLE

     case GL_DRAW_FRAMEBUFFER_BINDING_ANGLE:   *params = mState.drawFramebuffer;               break;

     case GL_READ_FRAMEBUFFER_BINDING_ANGLE:   *params = mState.readFramebuffer;               break;

-    case GL_RENDERBUFFER_BINDING:             *params = mState.renderbuffer.id();             break;

+    case GL_RENDERBUFFER_BINDING:             *params = mState.renderbuffer.name();           break;

     case GL_CURRENT_PROGRAM:                  *params = mState.currentProgram;                break;

     case GL_PACK_ALIGNMENT:                   *params = mState.packAlignment;                 break;

     case GL_UNPACK_ALIGNMENT:                 *params = mState.unpackAlignment;               break;

@@ -1452,7 +1452,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_CUBE_MAP:

@@ -1463,7 +1463,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_EXTERNAL_OES:

@@ -1474,7 +1474,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].name();

         }

         break;

     default:

@@ -2143,7 +2143,7 @@
         return error(GL_INVALID_FRAMEBUFFER_OPERATION);

     }

 

-    if(getReadFramebufferHandle() != 0 && framebufferSamples != 0)

+    if(getReadFramebufferName() != 0 && framebufferSamples != 0)

     {

         return error(GL_INVALID_OPERATION);

     }

@@ -2594,19 +2594,19 @@
     // If a buffer object is deleted while it is bound, all bindings to that object in the current context

     // (i.e. in the thread that called Delete-Buffers) are reset to zero.

 

-    if(mState.arrayBuffer.id() == buffer)

+    if(mState.arrayBuffer.name() == buffer)

     {

         mState.arrayBuffer.set(NULL);

     }

 

-    if(mState.elementArrayBuffer.id() == buffer)

+    if(mState.elementArrayBuffer.name() == buffer)

     {

         mState.elementArrayBuffer.set(NULL);

     }

 

     for(int attribute = 0; attribute < MAX_VERTEX_ATTRIBS; attribute++)

     {

-        if(mState.vertexAttribute[attribute].mBoundBuffer.id() == buffer)

+        if(mState.vertexAttribute[attribute].mBoundBuffer.name() == buffer)

         {

             mState.vertexAttribute[attribute].mBoundBuffer.set(NULL);

         }

@@ -2623,7 +2623,7 @@
     {

         for(int sampler = 0; sampler < MAX_COMBINED_TEXTURE_IMAGE_UNITS; sampler++)

         {

-            if(mState.samplerTexture[type][sampler].id() == texture)

+            if(mState.samplerTexture[type][sampler].name() == texture)

             {

                 mState.samplerTexture[type][sampler].set(NULL);

             }

@@ -2672,7 +2672,7 @@
     // If a renderbuffer that is currently bound to RENDERBUFFER is deleted, it is as though BindRenderbuffer

     // had been executed with the target RENDERBUFFER and name of zero.

 

-    if(mState.renderbuffer.id() == renderbuffer)

+    if(mState.renderbuffer.name() == renderbuffer)

     {

         bindRenderbuffer(0);

     }

diff --git a/src/OpenGL/libGL/Context.h b/src/OpenGL/libGL/Context.h
index cd1bf15..5c7bd48 100644
--- a/src/OpenGL/libGL/Context.h
+++ b/src/OpenGL/libGL/Context.h
@@ -320,13 +320,13 @@
 

     void setActiveSampler(unsigned int active);

 

-    GLuint getReadFramebufferHandle() const;

-    GLuint getDrawFramebufferHandle() const;

-    GLuint getRenderbufferHandle() const;

+    GLuint getReadFramebufferName() const;

+    GLuint getDrawFramebufferName() const;

+    GLuint getRenderbufferName() const;

 

 	GLuint getActiveQuery(GLenum target) const;

 

-    GLuint getArrayBufferHandle() const;

+    GLuint getArrayBufferName() const;

 

     void setEnableVertexAttribArray(unsigned int attribNum, bool enabled);

     const VertexAttribute &getVertexAttribState(unsigned int attribNum);

diff --git a/src/OpenGL/libGL/Framebuffer.cpp b/src/OpenGL/libGL/Framebuffer.cpp
index dd16a20..dce0160 100644
--- a/src/OpenGL/libGL/Framebuffer.cpp
+++ b/src/OpenGL/libGL/Framebuffer.cpp
@@ -81,19 +81,19 @@
 
 void Framebuffer::detachTexture(GLuint texture)
 {
-	if(mColorbufferPointer.id() == texture && IsTextureTarget(mColorbufferType))
+	if(mColorbufferPointer.name() == texture && IsTextureTarget(mColorbufferType))
 	{
 		mColorbufferType = GL_NONE;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == texture && IsTextureTarget(mDepthbufferType))
+	if(mDepthbufferPointer.name() == texture && IsTextureTarget(mDepthbufferType))
 	{
 		mDepthbufferType = GL_NONE;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == texture && IsTextureTarget(mStencilbufferType))
+	if(mStencilbufferPointer.name() == texture && IsTextureTarget(mStencilbufferType))
 	{
 		mStencilbufferType = GL_NONE;
 		mStencilbufferPointer.set(NULL);
@@ -102,19 +102,19 @@
 
 void Framebuffer::detachRenderbuffer(GLuint renderbuffer)
 {
-	if(mColorbufferPointer.id() == renderbuffer && mColorbufferType == GL_RENDERBUFFER)
+	if(mColorbufferPointer.name() == renderbuffer && mColorbufferType == GL_RENDERBUFFER)
 	{
 		mColorbufferType = GL_NONE;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER)
+	if(mDepthbufferPointer.name() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER)
 	{
 		mDepthbufferType = GL_NONE;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER)
+	if(mStencilbufferPointer.name() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER)
 	{
 		mStencilbufferType = GL_NONE;
 		mStencilbufferPointer.set(NULL);
@@ -184,19 +184,19 @@
 	return mStencilbufferType;
 }
 
-GLuint Framebuffer::getColorbufferHandle()
+GLuint Framebuffer::getColorbufferName()
 {
-	return mColorbufferPointer.id();
+	return mColorbufferPointer.name();
 }
 
-GLuint Framebuffer::getDepthbufferHandle()
+GLuint Framebuffer::getDepthbufferName()
 {
-	return mDepthbufferPointer.id();
+	return mDepthbufferPointer.name();
 }
 
-GLuint Framebuffer::getStencilbufferHandle()
+GLuint Framebuffer::getStencilbufferName()
 {
-	return mStencilbufferPointer.id();
+	return mStencilbufferPointer.name();
 }
 
 bool Framebuffer::hasStencil()
diff --git a/src/OpenGL/libGL/Framebuffer.h b/src/OpenGL/libGL/Framebuffer.h
index 10c6342..72b7cc1 100644
--- a/src/OpenGL/libGL/Framebuffer.h
+++ b/src/OpenGL/libGL/Framebuffer.h
@@ -54,9 +54,9 @@
     GLenum getDepthbufferType();

     GLenum getStencilbufferType();

 

-    GLuint getColorbufferHandle();

-    GLuint getDepthbufferHandle();

-    GLuint getStencilbufferHandle();

+    GLuint getColorbufferName();

+    GLuint getDepthbufferName();

+    GLuint getStencilbufferName();

 

     bool hasStencil();

 

diff --git a/src/OpenGL/libGL/Program.cpp b/src/OpenGL/libGL/Program.cpp
index 97eb6f4..45d8146 100644
--- a/src/OpenGL/libGL/Program.cpp
+++ b/src/OpenGL/libGL/Program.cpp
@@ -2036,7 +2036,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = vertexShader->getHandle();

+				shaders[total] = vertexShader->getName();

 			}

 

 			total++;

@@ -2046,7 +2046,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = fragmentShader->getHandle();

+				shaders[total] = fragmentShader->getName();

 			}

 

 			total++;

diff --git a/src/OpenGL/libGL/Query.cpp b/src/OpenGL/libGL/Query.cpp
index 8e69d70..2613f95 100644
--- a/src/OpenGL/libGL/Query.cpp
+++ b/src/OpenGL/libGL/Query.cpp
@@ -19,7 +19,7 @@
 namespace gl

 {

 

-Query::Query(GLuint id, GLenum type) : RefCountObject(id)

+Query::Query(GLuint name, GLenum type) : Object(name)

 { 

     mQuery = NULL;

     mStatus = GL_FALSE;

diff --git a/src/OpenGL/libGL/Query.h b/src/OpenGL/libGL/Query.h
index 323ab2b..4ab5338 100644
--- a/src/OpenGL/libGL/Query.h
+++ b/src/OpenGL/libGL/Query.h
@@ -23,10 +23,10 @@
 namespace gl

 {

 

-class Query : public gl::RefCountObject

+class Query : public Object

 {

   public:

-    Query(GLuint id, GLenum type);

+    Query(GLuint name, GLenum type);

     virtual ~Query();

 

     void begin();

diff --git a/src/OpenGL/libGL/Renderbuffer.cpp b/src/OpenGL/libGL/Renderbuffer.cpp
index 6e1e04b..cd6f485 100644
--- a/src/OpenGL/libGL/Renderbuffer.cpp
+++ b/src/OpenGL/libGL/Renderbuffer.cpp
@@ -204,7 +204,7 @@
 
 ////// Renderbuffer Implementation //////
 
-Renderbuffer::Renderbuffer(GLuint id, RenderbufferInterface *instance) : RefCountObject(id)
+Renderbuffer::Renderbuffer(GLuint name, RenderbufferInterface *instance) : Object(name)
 {
 	ASSERT(instance != NULL);
 	mInstance = instance;
@@ -221,14 +221,14 @@
 {
     mInstance->addProxyRef(this);
 
-    RefCountObject::addRef();
+    Object::addRef();
 }
 
 void Renderbuffer::release()
 {
     mInstance->releaseProxy(this);
 
-    RefCountObject::release();
+    Object::release();
 }
 
 // Increments refcount on image.
diff --git a/src/OpenGL/libGL/Renderbuffer.h b/src/OpenGL/libGL/Renderbuffer.h
index 6b903b0..e5bce5b 100644
--- a/src/OpenGL/libGL/Renderbuffer.h
+++ b/src/OpenGL/libGL/Renderbuffer.h
@@ -139,14 +139,14 @@
 // Renderbuffer implements the GL renderbuffer object.

 // It's only a proxy for a RenderbufferInterface instance; the internal object

 // can change whenever glRenderbufferStorage is called.

-class Renderbuffer : public gl::RefCountObject

+class Renderbuffer : public Object

 {

 public:

-	Renderbuffer(GLuint id, RenderbufferInterface *storage);

+	Renderbuffer(GLuint name, RenderbufferInterface *storage);

 

 	virtual ~Renderbuffer();

 

-	// These functions from RefCountObject are overloaded here because

+	// These functions from Object are overloaded here because

     // Textures need to maintain their own count of references to them via

     // Renderbuffers/RenderbufferTextures. These functions invoke those

     // reference counting functions on the RenderbufferInterface.

diff --git a/src/OpenGL/libGL/Shader.cpp b/src/OpenGL/libGL/Shader.cpp
index b5564e9..6815aa1 100644
--- a/src/OpenGL/libGL/Shader.cpp
+++ b/src/OpenGL/libGL/Shader.cpp
@@ -43,7 +43,7 @@
     delete[] mInfoLog;
 }
 
-GLuint Shader::getHandle() const
+GLuint Shader::getName() const
 {
     return mHandle;
 }
@@ -388,11 +388,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "vertex-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "vertex-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		vertexShader->print("vertex-output-%d-%d.txt", getHandle(), serial);
+		vertexShader->print("vertex-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
@@ -474,11 +474,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "pixel-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "pixel-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		pixelShader->print("pixel-output-%d-%d.txt", getHandle(), serial);
+		pixelShader->print("pixel-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
diff --git a/src/OpenGL/libGL/Shader.h b/src/OpenGL/libGL/Shader.h
index cb2df88..bc5a736 100644
--- a/src/OpenGL/libGL/Shader.h
+++ b/src/OpenGL/libGL/Shader.h
@@ -45,7 +45,7 @@
     virtual ~Shader();

 

     virtual GLenum getType() = 0;

-    GLuint getHandle() const;

+    GLuint getName() const;

 

     void deleteSource();

     void setSource(GLsizei count, const char *const *string, const GLint *length);

diff --git a/src/OpenGL/libGL/Texture.cpp b/src/OpenGL/libGL/Texture.cpp
index f7dcbfa..4bb5511 100644
--- a/src/OpenGL/libGL/Texture.cpp
+++ b/src/OpenGL/libGL/Texture.cpp
@@ -28,7 +28,7 @@
 namespace gl

 {

 

-Texture::Texture(GLuint id) : egl::Texture(id)

+Texture::Texture(GLuint name) : egl::Texture(name)

 {

     mMinFilter = GL_NEAREST_MIPMAP_LINEAR;

     mMagFilter = GL_LINEAR;

@@ -281,7 +281,7 @@
 	return false;

 }

 

-Texture2D::Texture2D(GLuint id) : Texture(id)

+Texture2D::Texture2D(GLuint name) : Texture(name)

 {

 	for(int i = 0; i < MIPMAP_LEVELS; i++)

 	{

@@ -665,7 +665,7 @@
 

     if(mColorbufferProxy == NULL)

     {

-        mColorbufferProxy = new Renderbuffer(id(), new RenderbufferTexture2D(this));

+        mColorbufferProxy = new Renderbuffer(name, new RenderbufferTexture2D(this));

     }

 

     return mColorbufferProxy;

@@ -702,7 +702,7 @@
     return image[level]->isShared();

 }

 

-TextureCubeMap::TextureCubeMap(GLuint id) : Texture(id)

+TextureCubeMap::TextureCubeMap(GLuint name) : Texture(name)

 {

 	for(int f = 0; f < 6; f++)

 	{

@@ -1104,7 +1104,7 @@
 

     if(mFaceProxies[face] == NULL)

     {

-        mFaceProxies[face] = new Renderbuffer(id(), new RenderbufferTextureCubeMap(this, target));

+        mFaceProxies[face] = new Renderbuffer(name, new RenderbufferTextureCubeMap(this, target));

     }

 

     return mFaceProxies[face];

@@ -1140,7 +1140,7 @@
     return image[face][level]->isShared();

 }

 

-TextureExternal::TextureExternal(GLuint id) : Texture2D(id)

+TextureExternal::TextureExternal(GLuint name) : Texture2D(name)

 {

     mMinFilter = GL_LINEAR;

     mMagFilter = GL_LINEAR;

diff --git a/src/OpenGL/libGL/Texture.h b/src/OpenGL/libGL/Texture.h
index f4e1886..af2e2d8 100644
--- a/src/OpenGL/libGL/Texture.h
+++ b/src/OpenGL/libGL/Texture.h
@@ -49,7 +49,7 @@
 class Texture : public egl::Texture

 {

 public:

-    explicit Texture(GLuint id);

+    explicit Texture(GLuint name);

 

     virtual ~Texture();

 

@@ -113,7 +113,7 @@
 class Texture2D : public Texture

 {

 public:

-    explicit Texture2D(GLuint id);

+    explicit Texture2D(GLuint name);

 

     virtual ~Texture2D();

 

@@ -171,7 +171,7 @@
 class TextureCubeMap : public Texture

 {

 public:

-    explicit TextureCubeMap(GLuint id);

+    explicit TextureCubeMap(GLuint name);

 

     virtual ~TextureCubeMap();

 

@@ -229,7 +229,7 @@
 class TextureExternal : public Texture2D

 {

 public:

-    explicit TextureExternal(GLuint id);

+    explicit TextureExternal(GLuint name);

 

     virtual ~TextureExternal();

 

diff --git a/src/OpenGL/libGL/libGL.cpp b/src/OpenGL/libGL/libGL.cpp
index 71a2b1b..3a309ed 100644
--- a/src/OpenGL/libGL/libGL.cpp
+++ b/src/OpenGL/libGL/libGL.cpp
@@ -181,9 +181,9 @@
 	}

 }

 

-void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint id)

+void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint name)

 {

-	TRACE("(GLenum target = 0x%X, GLuint %d)", target, id);

+	TRACE("(GLenum target = 0x%X, GLuint name = %d)", target, name);

 

 	switch(target)

 	{

@@ -194,7 +194,7 @@
 		return error(GL_INVALID_ENUM);

 	}

 

-	if(id == 0)

+	if(name == 0)

 	{

 		return error(GL_INVALID_OPERATION);

 	}

@@ -203,7 +203,7 @@
 

 	if(context)

 	{

-		context->beginQuery(target, id);

+		context->beginQuery(target, name);

 	}

 }

 

@@ -989,7 +989,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION);

 		}

 

-		if(context->getReadFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getReadFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1119,7 +1119,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION);

 		}

 

-		if(context->getReadFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getReadFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1754,19 +1754,19 @@
 	if(context)

 	{

 		gl::Framebuffer *framebuffer = NULL;

-		GLuint framebufferHandle = 0;

+		GLuint framebufferName = 0;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

 			framebuffer = context->getReadFramebuffer();

-			framebufferHandle = context->getReadFramebufferHandle();

+			framebufferName = context->getReadFramebufferName();

 		}

 		else

 		{

 			framebuffer = context->getDrawFramebuffer();

-			framebufferHandle = context->getDrawFramebufferHandle();

+			framebufferName = context->getDrawFramebufferName();

 		}

 

-		if(!framebuffer || (framebufferHandle == 0 && renderbuffer != 0))

+		if(!framebuffer || (framebufferName == 0 && renderbuffer != 0))

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1860,19 +1860,19 @@
 		}

 

 		gl::Framebuffer *framebuffer = NULL;

-		GLuint framebufferHandle = 0;

+		GLuint framebufferName = 0;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

 			framebuffer = context->getReadFramebuffer();

-			framebufferHandle = context->getReadFramebufferHandle();

+			framebufferName = context->getReadFramebufferName();

 		}

 		else

 		{

 			framebuffer = context->getDrawFramebuffer();

-			framebufferHandle = context->getDrawFramebufferHandle();

+			framebufferName = context->getDrawFramebufferName();

 		}

 

-		if(framebufferHandle == 0 || !framebuffer)

+		if(framebufferName == 0 || !framebuffer)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -2402,7 +2402,7 @@
 		gl::Framebuffer *framebuffer = NULL;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

-			if(context->getReadFramebufferHandle() == 0)

+			if(context->getReadFramebufferName() == 0)

 			{

 				return error(GL_INVALID_OPERATION);

 			}

@@ -2411,7 +2411,7 @@
 		}

 		else

 		{

-			if(context->getDrawFramebufferHandle() == 0)

+			if(context->getDrawFramebufferName() == 0)

 			{

 				return error(GL_INVALID_OPERATION);

 			}

@@ -2425,15 +2425,15 @@
 		{

 		case GL_COLOR_ATTACHMENT0:

 			attachmentType = framebuffer->getColorbufferType();

-			attachmentHandle = framebuffer->getColorbufferHandle();

+			attachmentHandle = framebuffer->getColorbufferName();

 			break;

 		case GL_DEPTH_ATTACHMENT:

 			attachmentType = framebuffer->getDepthbufferType();

-			attachmentHandle = framebuffer->getDepthbufferHandle();

+			attachmentHandle = framebuffer->getDepthbufferName();

 			break;

 		case GL_STENCIL_ATTACHMENT:

 			attachmentType = framebuffer->getStencilbufferType();

-			attachmentHandle = framebuffer->getStencilbufferHandle();

+			attachmentHandle = framebuffer->getStencilbufferName();

 			break;

 		default:

 			return error(GL_INVALID_ENUM);

@@ -2660,9 +2660,9 @@
 	}

 }

 

-void GL_APIENTRY glGetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint *params)

+void GL_APIENTRY glGetQueryObjectuivEXT(GLuint name, GLenum pname, GLuint *params)

 {

-	TRACE("(GLuint id = %d, GLenum pname = 0x%X, GLuint *params = 0x%0.8p)", id, pname, params);

+	TRACE("(GLuint name = %d, GLenum pname = 0x%X, GLuint *params = 0x%0.8p)", name, pname, params);

 

 	switch(pname)

 	{

@@ -2677,14 +2677,14 @@
 

 	if(context)

 	{

-		gl::Query *queryObject = context->getQuery(id, false, GL_NONE);

+		gl::Query *queryObject = context->getQuery(name, false, GL_NONE);

 

 		if(!queryObject)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

 

-		if(context->getActiveQuery(queryObject->getType()) == id)

+		if(context->getActiveQuery(queryObject->getType()) == name)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -2716,12 +2716,12 @@
 			return error(GL_INVALID_ENUM);

 		}

 

-		if(context->getRenderbufferHandle() == 0)

+		if(context->getRenderbufferName() == 0)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

 

-		gl::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferHandle());

+		gl::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferName());

 

 		switch(pname)

 		{

@@ -3225,7 +3225,7 @@
 			*params = (GLfloat)(attribState.mNormalized ? GL_TRUE : GL_FALSE);

 			break;

 		case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:

-			*params = (GLfloat)attribState.mBoundBuffer.id();

+			*params = (GLfloat)attribState.mBoundBuffer.name();

 			break;

 		case GL_CURRENT_VERTEX_ATTRIB:

 			for(int i = 0; i < 4; ++i)

@@ -3271,7 +3271,7 @@
 			*params = (attribState.mNormalized ? GL_TRUE : GL_FALSE);

 			break;

 		case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:

-			*params = attribState.mBoundBuffer.id();

+			*params = attribState.mBoundBuffer.name();

 			break;

 		case GL_CURRENT_VERTEX_ATTRIB:

 			for(int i = 0; i < 4; ++i)

@@ -3440,11 +3440,11 @@
 	return GL_FALSE;

 }

 

-GLboolean GL_APIENTRY glIsQueryEXT(GLuint id)

+GLboolean GL_APIENTRY glIsQueryEXT(GLuint name)

 {

-	TRACE("(GLuint id = %d)", id);

+	TRACE("(GLuint name = %d)", name);

 

-	if(id == 0)

+	if(name == 0)

 	{

 		return GL_FALSE;

 	}

@@ -3453,7 +3453,7 @@
 

 	if(context)

 	{

-		gl::Query *queryObject = context->getQuery(id, false, GL_NONE);

+		gl::Query *queryObject = context->getQuery(name, false, GL_NONE);

 

 		if(queryObject)

 		{

@@ -3696,7 +3696,7 @@
 			return error(GL_INVALID_VALUE);

 		}

 

-		GLuint handle = context->getRenderbufferHandle();

+		GLuint handle = context->getRenderbufferName();

 		if(handle == 0)

 		{

 			return error(GL_INVALID_OPERATION);

@@ -5080,7 +5080,7 @@
 

 	if(context)

 	{

-		if(context->getReadFramebufferHandle() == context->getDrawFramebufferHandle())

+		if(context->getReadFramebufferName() == context->getDrawFramebufferName())

 		{

 			ERR("Blits with the same source and destination framebuffer are not supported by this implementation.");

 			return error(GL_INVALID_OPERATION);

diff --git a/src/OpenGL/libGLES_CM/Buffer.cpp b/src/OpenGL/libGLES_CM/Buffer.cpp
index 43744bc..15b6978 100644
--- a/src/OpenGL/libGLES_CM/Buffer.cpp
+++ b/src/OpenGL/libGLES_CM/Buffer.cpp
@@ -22,7 +22,7 @@
 namespace es1
 {
 
-Buffer::Buffer(GLuint id) : RefCountObject(id)
+Buffer::Buffer(GLuint name) : Object(name)
 {
     mContents = 0;
     mSize = 0;
diff --git a/src/OpenGL/libGLES_CM/Buffer.h b/src/OpenGL/libGLES_CM/Buffer.h
index 7f75f72..b0dfce8 100644
--- a/src/OpenGL/libGLES_CM/Buffer.h
+++ b/src/OpenGL/libGLES_CM/Buffer.h
@@ -27,10 +27,10 @@
 

 namespace es1

 {

-class Buffer : public gl::RefCountObject

+class Buffer : public gl::Object

 {

   public:

-    explicit Buffer(GLuint id);

+    explicit Buffer(GLuint name);

 

     virtual ~Buffer();

 

diff --git a/src/OpenGL/libGLES_CM/Context.cpp b/src/OpenGL/libGLES_CM/Context.cpp
index 130d694..5aa79ad 100644
--- a/src/OpenGL/libGLES_CM/Context.cpp
+++ b/src/OpenGL/libGLES_CM/Context.cpp
@@ -677,19 +677,19 @@
     mState.activeSampler = active;

 }

 

-GLuint Context::getFramebufferHandle() const

+GLuint Context::getFramebufferName() const

 {

     return mState.framebuffer;

 }

 

-GLuint Context::getRenderbufferHandle() const

+GLuint Context::getRenderbufferName() const

 {

-    return mState.renderbuffer.id();

+    return mState.renderbuffer.name();

 }

 

-GLuint Context::getArrayBufferHandle() const

+GLuint Context::getArrayBufferName() const

 {

-    return mState.arrayBuffer.id();

+    return mState.arrayBuffer.name();

 }

 

 void Context::setEnableVertexAttribArray(unsigned int attribNum, bool enabled)

@@ -923,7 +923,7 @@
 

 Texture *Context::getSamplerTexture(unsigned int sampler, TextureType type)

 {

-    GLuint texid = mState.samplerTexture[type][sampler].id();

+    GLuint texid = mState.samplerTexture[type][sampler].name();

 

     if(texid == 0)   // Special case: 0 refers to different initial textures based on the target

     {

@@ -1028,10 +1028,10 @@
     // Context::getFloatv.

     switch (pname)

     {

-    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.id();              break;

-    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.id();       break;

+    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.name();            break;

+    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.name();     break;

 	case GL_FRAMEBUFFER_BINDING_OES:          *params = mState.framebuffer;                   break;

-    case GL_RENDERBUFFER_BINDING_OES:         *params = mState.renderbuffer.id();             break;

+    case GL_RENDERBUFFER_BINDING_OES:         *params = mState.renderbuffer.name();           break;

     case GL_PACK_ALIGNMENT:                   *params = mState.packAlignment;                 break;

     case GL_UNPACK_ALIGNMENT:                 *params = mState.unpackAlignment;               break;

     case GL_GENERATE_MIPMAP_HINT:             *params = mState.generateMipmapHint;            break;

@@ -1188,7 +1188,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_CUBE_MAP_OES:

@@ -1199,7 +1199,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_EXTERNAL_OES:

@@ -1210,7 +1210,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].name();

         }

         break;

 	case GL_MAX_LIGHTS:                 *params = MAX_LIGHTS;                 break;

@@ -1895,7 +1895,7 @@
         return error(GL_INVALID_FRAMEBUFFER_OPERATION_OES);

     }

 

-    if(getFramebufferHandle() != 0 && framebufferSamples != 0)

+    if(getFramebufferName() != 0 && framebufferSamples != 0)

     {

         return error(GL_INVALID_OPERATION);

     }

@@ -2359,19 +2359,19 @@
     // If a buffer object is deleted while it is bound, all bindings to that object in the current context

     // (i.e. in the thread that called Delete-Buffers) are reset to zero.

 

-    if(mState.arrayBuffer.id() == buffer)

+    if(mState.arrayBuffer.name() == buffer)

     {

         mState.arrayBuffer.set(NULL);

     }

 

-    if(mState.elementArrayBuffer.id() == buffer)

+    if(mState.elementArrayBuffer.name() == buffer)

     {

         mState.elementArrayBuffer.set(NULL);

     }

 

     for(int attribute = 0; attribute < MAX_VERTEX_ATTRIBS; attribute++)

     {

-        if(mState.vertexAttribute[attribute].mBoundBuffer.id() == buffer)

+        if(mState.vertexAttribute[attribute].mBoundBuffer.name() == buffer)

         {

             mState.vertexAttribute[attribute].mBoundBuffer.set(NULL);

         }

@@ -2388,7 +2388,7 @@
     {

         for(int sampler = 0; sampler < MAX_TEXTURE_UNITS; sampler++)

         {

-            if(mState.samplerTexture[type][sampler].id() == texture)

+            if(mState.samplerTexture[type][sampler].name() == texture)

             {

                 mState.samplerTexture[type][sampler].set(NULL);

             }

@@ -2426,7 +2426,7 @@
     // If a renderbuffer that is currently bound to RENDERBUFFER is deleted, it is as though BindRenderbuffer

     // had been executed with the target RENDERBUFFER and name of zero.

 

-    if(mState.renderbuffer.id() == renderbuffer)

+    if(mState.renderbuffer.name() == renderbuffer)

     {

         bindRenderbuffer(0);

     }

diff --git a/src/OpenGL/libGLES_CM/Context.h b/src/OpenGL/libGLES_CM/Context.h
index cdffd6f..9b22f8c 100644
--- a/src/OpenGL/libGLES_CM/Context.h
+++ b/src/OpenGL/libGLES_CM/Context.h
@@ -346,10 +346,10 @@
 

     void setActiveSampler(unsigned int active);

 

-    GLuint getFramebufferHandle() const;

-    GLuint getRenderbufferHandle() const;

+    GLuint getFramebufferName() const;

+    GLuint getRenderbufferName() const;

 

-    GLuint getArrayBufferHandle() const;

+    GLuint getArrayBufferName() const;

 

     void setEnableVertexAttribArray(unsigned int attribNum, bool enabled);

     const VertexAttribute &getVertexAttribState(unsigned int attribNum);

diff --git a/src/OpenGL/libGLES_CM/Framebuffer.cpp b/src/OpenGL/libGLES_CM/Framebuffer.cpp
index 624a4b9..e8a5ed7 100644
--- a/src/OpenGL/libGLES_CM/Framebuffer.cpp
+++ b/src/OpenGL/libGLES_CM/Framebuffer.cpp
@@ -81,19 +81,19 @@
 
 void Framebuffer::detachTexture(GLuint texture)
 {
-	if(mColorbufferPointer.id() == texture && IsTextureTarget(mColorbufferType))
+	if(mColorbufferPointer.name() == texture && IsTextureTarget(mColorbufferType))
 	{
 		mColorbufferType = GL_NONE_OES;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == texture && IsTextureTarget(mDepthbufferType))
+	if(mDepthbufferPointer.name() == texture && IsTextureTarget(mDepthbufferType))
 	{
 		mDepthbufferType = GL_NONE_OES;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == texture && IsTextureTarget(mStencilbufferType))
+	if(mStencilbufferPointer.name() == texture && IsTextureTarget(mStencilbufferType))
 	{
 		mStencilbufferType = GL_NONE_OES;
 		mStencilbufferPointer.set(NULL);
@@ -102,19 +102,19 @@
 
 void Framebuffer::detachRenderbuffer(GLuint renderbuffer)
 {
-	if(mColorbufferPointer.id() == renderbuffer && mColorbufferType == GL_RENDERBUFFER_OES)
+	if(mColorbufferPointer.name() == renderbuffer && mColorbufferType == GL_RENDERBUFFER_OES)
 	{
 		mColorbufferType = GL_NONE_OES;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER_OES)
+	if(mDepthbufferPointer.name() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER_OES)
 	{
 		mDepthbufferType = GL_NONE_OES;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER_OES)
+	if(mStencilbufferPointer.name() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER_OES)
 	{
 		mStencilbufferType = GL_NONE_OES;
 		mStencilbufferPointer.set(NULL);
@@ -184,19 +184,19 @@
 	return mStencilbufferType;
 }
 
-GLuint Framebuffer::getColorbufferHandle()
+GLuint Framebuffer::getColorbufferName()
 {
-	return mColorbufferPointer.id();
+	return mColorbufferPointer.name();
 }
 
-GLuint Framebuffer::getDepthbufferHandle()
+GLuint Framebuffer::getDepthbufferName()
 {
-	return mDepthbufferPointer.id();
+	return mDepthbufferPointer.name();
 }
 
-GLuint Framebuffer::getStencilbufferHandle()
+GLuint Framebuffer::getStencilbufferName()
 {
-	return mStencilbufferPointer.id();
+	return mStencilbufferPointer.name();
 }
 
 bool Framebuffer::hasStencil()
diff --git a/src/OpenGL/libGLES_CM/Framebuffer.h b/src/OpenGL/libGLES_CM/Framebuffer.h
index 0f4542f..fc10515 100644
--- a/src/OpenGL/libGLES_CM/Framebuffer.h
+++ b/src/OpenGL/libGLES_CM/Framebuffer.h
@@ -54,9 +54,9 @@
     GLenum getDepthbufferType();

     GLenum getStencilbufferType();

 

-    GLuint getColorbufferHandle();

-    GLuint getDepthbufferHandle();

-    GLuint getStencilbufferHandle();

+    GLuint getColorbufferName();

+    GLuint getDepthbufferName();

+    GLuint getStencilbufferName();

 

     bool hasStencil();

 

diff --git a/src/OpenGL/libGLES_CM/Renderbuffer.cpp b/src/OpenGL/libGLES_CM/Renderbuffer.cpp
index e4bdaca..6e7e202 100644
--- a/src/OpenGL/libGLES_CM/Renderbuffer.cpp
+++ b/src/OpenGL/libGLES_CM/Renderbuffer.cpp
@@ -136,7 +136,7 @@
 
 ////// Renderbuffer Implementation //////
 
-Renderbuffer::Renderbuffer(GLuint id, RenderbufferInterface *instance) : RefCountObject(id)
+Renderbuffer::Renderbuffer(GLuint name, RenderbufferInterface *instance) : Object(name)
 {
 	ASSERT(instance != NULL);
 	mInstance = instance;
@@ -153,14 +153,14 @@
 {
     mInstance->addProxyRef(this);
 
-    RefCountObject::addRef();
+    Object::addRef();
 }
 
 void Renderbuffer::release()
 {
     mInstance->releaseProxy(this);
 
-    RefCountObject::release();
+    Object::release();
 }
 
 // Increments refcount on image.
diff --git a/src/OpenGL/libGLES_CM/Renderbuffer.h b/src/OpenGL/libGLES_CM/Renderbuffer.h
index faa97a3..eb65708 100644
--- a/src/OpenGL/libGLES_CM/Renderbuffer.h
+++ b/src/OpenGL/libGLES_CM/Renderbuffer.h
@@ -113,14 +113,14 @@
 // Renderbuffer implements the GL renderbuffer object.

 // It's only a proxy for a RenderbufferInterface instance; the internal object

 // can change whenever glRenderbufferStorage is called.

-class Renderbuffer : public gl::RefCountObject

+class Renderbuffer : public gl::Object

 {

 public:

-	Renderbuffer(GLuint id, RenderbufferInterface *storage);

+	Renderbuffer(GLuint name, RenderbufferInterface *storage);

 

 	virtual ~Renderbuffer();

 

-	// These functions from RefCountObject are overloaded here because

+	// These functions from Object are overloaded here because

     // Textures need to maintain their own count of references to them via

     // Renderbuffers/RenderbufferTextures. These functions invoke those

     // reference counting functions on the RenderbufferInterface.

diff --git a/src/OpenGL/libGLES_CM/Texture.cpp b/src/OpenGL/libGLES_CM/Texture.cpp
index d33c63e..fbb151f 100644
--- a/src/OpenGL/libGLES_CM/Texture.cpp
+++ b/src/OpenGL/libGLES_CM/Texture.cpp
@@ -28,7 +28,7 @@
 namespace es1

 {

 

-Texture::Texture(GLuint id) : egl::Texture(id)

+Texture::Texture(GLuint name) : egl::Texture(name)

 {

     mMinFilter = GL_NEAREST_MIPMAP_LINEAR;

     mMagFilter = GL_LINEAR;

@@ -281,7 +281,7 @@
 	return false;

 }

 

-Texture2D::Texture2D(GLuint id) : Texture(id)

+Texture2D::Texture2D(GLuint name) : Texture(name)

 {

 	for(int i = 0; i < MIPMAP_LEVELS; i++)

 	{

@@ -665,7 +665,7 @@
 

     if(mColorbufferProxy == NULL)

     {

-        mColorbufferProxy = new Renderbuffer(id(), new RenderbufferTexture2D(this));

+        mColorbufferProxy = new Renderbuffer(name, new RenderbufferTexture2D(this));

     }

 

     return mColorbufferProxy;

@@ -702,7 +702,7 @@
     return image[level]->isShared();

 }

 

-TextureExternal::TextureExternal(GLuint id) : Texture2D(id)

+TextureExternal::TextureExternal(GLuint name) : Texture2D(name)

 {

     mMinFilter = GL_LINEAR;

     mMagFilter = GL_LINEAR;

diff --git a/src/OpenGL/libGLES_CM/Texture.h b/src/OpenGL/libGLES_CM/Texture.h
index c5ec735..45e4ecb 100644
--- a/src/OpenGL/libGLES_CM/Texture.h
+++ b/src/OpenGL/libGLES_CM/Texture.h
@@ -49,7 +49,7 @@
 class Texture : public egl::Texture

 {

 public:

-    explicit Texture(GLuint id);

+    explicit Texture(GLuint name);

 

     virtual ~Texture();

 

@@ -113,7 +113,7 @@
 class Texture2D : public Texture

 {

 public:

-    explicit Texture2D(GLuint id);

+    explicit Texture2D(GLuint name);

 

     virtual ~Texture2D();

 

@@ -171,7 +171,7 @@
 class TextureExternal : public Texture2D

 {

 public:

-    explicit TextureExternal(GLuint id);

+    explicit TextureExternal(GLuint name);

 

     virtual ~TextureExternal();

 

diff --git a/src/OpenGL/libGLES_CM/libGLES_CM.cpp b/src/OpenGL/libGLES_CM/libGLES_CM.cpp
index 3cac667..2c2ac60 100644
--- a/src/OpenGL/libGLES_CM/libGLES_CM.cpp
+++ b/src/OpenGL/libGLES_CM/libGLES_CM.cpp
@@ -1051,7 +1051,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION_OES);

 		}

 

-		if(context->getFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1168,7 +1168,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION_OES);

 		}

 

-		if(context->getFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1637,9 +1637,9 @@
 	if(context)

 	{

 		es1::Framebuffer *framebuffer = context->getFramebuffer();

-		GLuint framebufferHandle = context->getFramebufferHandle();

+		GLuint framebufferName = context->getFramebufferName();

 

-		if(!framebuffer || (framebufferHandle == 0 && renderbuffer != 0))

+		if(!framebuffer || (framebufferName == 0 && renderbuffer != 0))

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1722,9 +1722,9 @@
 		}

 

 		es1::Framebuffer *framebuffer = context->getFramebuffer();

-		GLuint framebufferHandle = context->getFramebufferHandle();

+		GLuint framebufferName = context->getFramebufferName();

 

-		if(framebufferHandle == 0 || !framebuffer)

+		if(framebufferName == 0 || !framebuffer)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1997,12 +1997,12 @@
 			return error(GL_INVALID_ENUM);

 		}

 

-		if(context->getRenderbufferHandle() == 0)

+		if(context->getRenderbufferName() == 0)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

 

-		es1::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferHandle());

+		es1::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferName());

 

 		switch(pname)

 		{

@@ -2223,7 +2223,7 @@
 			return error(GL_INVALID_ENUM);

 		}

 

-		if(context->getFramebufferHandle() == 0)

+		if(context->getFramebufferName() == 0)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -2236,15 +2236,15 @@
 		{

 		case GL_COLOR_ATTACHMENT0_OES:

 			attachmentType = framebuffer->getColorbufferType();

-			attachmentHandle = framebuffer->getColorbufferHandle();

+			attachmentHandle = framebuffer->getColorbufferName();

 			break;

 		case GL_DEPTH_ATTACHMENT_OES:

 			attachmentType = framebuffer->getDepthbufferType();

-			attachmentHandle = framebuffer->getDepthbufferHandle();

+			attachmentHandle = framebuffer->getDepthbufferName();

 			break;

 		case GL_STENCIL_ATTACHMENT_OES:

 			attachmentType = framebuffer->getStencilbufferType();

-			attachmentHandle = framebuffer->getStencilbufferHandle();

+			attachmentHandle = framebuffer->getStencilbufferName();

 			break;

 		default:

 			return error(GL_INVALID_ENUM);

@@ -3054,7 +3054,7 @@
 			return error(GL_INVALID_VALUE);

 		}

 

-		GLuint handle = context->getRenderbufferHandle();

+		GLuint handle = context->getRenderbufferName();

 		if(handle == 0)

 		{

 			return error(GL_INVALID_OPERATION);

diff --git a/src/OpenGL/libGLESv2/Buffer.cpp b/src/OpenGL/libGLESv2/Buffer.cpp
index 33f3e88..5fb1c6b 100644
--- a/src/OpenGL/libGLESv2/Buffer.cpp
+++ b/src/OpenGL/libGLESv2/Buffer.cpp
@@ -22,7 +22,7 @@
 namespace es2
 {
 
-Buffer::Buffer(GLuint id) : RefCountObject(id)
+Buffer::Buffer(GLuint name) : Object(name)
 {
     mContents = 0;
     mSize = 0;
diff --git a/src/OpenGL/libGLESv2/Buffer.h b/src/OpenGL/libGLESv2/Buffer.h
index 69c803c..613dacc 100644
--- a/src/OpenGL/libGLESv2/Buffer.h
+++ b/src/OpenGL/libGLESv2/Buffer.h
@@ -27,10 +27,10 @@
 

 namespace es2

 {

-class Buffer : public gl::RefCountObject

+class Buffer : public gl::Object

 {

   public:

-    explicit Buffer(GLuint id);

+    explicit Buffer(GLuint name);

 

     virtual ~Buffer();

 

diff --git a/src/OpenGL/libGLESv2/Context.cpp b/src/OpenGL/libGLESv2/Context.cpp
index d184154..be7de8e 100644
--- a/src/OpenGL/libGLESv2/Context.cpp
+++ b/src/OpenGL/libGLESv2/Context.cpp
@@ -652,24 +652,24 @@
     mState.activeSampler = active;

 }

 

-GLuint Context::getReadFramebufferHandle() const

+GLuint Context::getReadFramebufferName() const

 {

     return mState.readFramebuffer;

 }

 

-GLuint Context::getDrawFramebufferHandle() const

+GLuint Context::getDrawFramebufferName() const

 {

     return mState.drawFramebuffer;

 }

 

-GLuint Context::getRenderbufferHandle() const

+GLuint Context::getRenderbufferName() const

 {

-    return mState.renderbuffer.id();

+    return mState.renderbuffer.name();

 }

 

-GLuint Context::getArrayBufferHandle() const

+GLuint Context::getArrayBufferName() const

 {

-    return mState.arrayBuffer.id();

+    return mState.arrayBuffer.name();

 }

 

 GLuint Context::getActiveQuery(GLenum target) const

@@ -690,7 +690,7 @@
 

     if(queryObject)

     {

-        return queryObject->id();

+        return queryObject->name;

     }

     

 	return 0;

@@ -1192,7 +1192,7 @@
 

 Texture *Context::getSamplerTexture(unsigned int sampler, TextureType type)

 {

-    GLuint texid = mState.samplerTexture[type][sampler].id();

+    GLuint texid = mState.samplerTexture[type][sampler].name();

 

     if(texid == 0)   // Special case: 0 refers to different initial textures based on the target

     {

@@ -1304,12 +1304,12 @@
 	case GL_MAX_RENDERBUFFER_SIZE:            *params = IMPLEMENTATION_MAX_RENDERBUFFER_SIZE; break;

     case GL_NUM_SHADER_BINARY_FORMATS:        *params = 0;                                    break;

     case GL_SHADER_BINARY_FORMATS:      /* no shader binary formats are supported */          break;

-    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.id();              break;

-    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.id();       break;

+    case GL_ARRAY_BUFFER_BINDING:             *params = mState.arrayBuffer.name();            break;

+    case GL_ELEMENT_ARRAY_BUFFER_BINDING:     *params = mState.elementArrayBuffer.name();     break;

 //	case GL_FRAMEBUFFER_BINDING:            // now equivalent to GL_DRAW_FRAMEBUFFER_BINDING_ANGLE

     case GL_DRAW_FRAMEBUFFER_BINDING_ANGLE:   *params = mState.drawFramebuffer;               break;

     case GL_READ_FRAMEBUFFER_BINDING_ANGLE:   *params = mState.readFramebuffer;               break;

-    case GL_RENDERBUFFER_BINDING:             *params = mState.renderbuffer.id();             break;

+    case GL_RENDERBUFFER_BINDING:             *params = mState.renderbuffer.name();           break;

     case GL_CURRENT_PROGRAM:                  *params = mState.currentProgram;                break;

     case GL_PACK_ALIGNMENT:                   *params = mState.packAlignment;                 break;

     case GL_UNPACK_ALIGNMENT:                 *params = mState.unpackAlignment;               break;

@@ -1477,7 +1477,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_CUBE_MAP:

@@ -1488,7 +1488,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].name();

         }

         break;

     case GL_TEXTURE_BINDING_EXTERNAL_OES:

@@ -1499,7 +1499,7 @@
                 return false;

             }

 

-            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].id();

+            *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].name();

         }

         break;

 	case GL_TEXTURE_BINDING_3D_OES:

@@ -1510,7 +1510,7 @@
 				return false;

 			}

 

-			*params = mState.samplerTexture[TEXTURE_3D][mState.activeSampler].id();

+			*params = mState.samplerTexture[TEXTURE_3D][mState.activeSampler].name();

 	}

 		break;

 	default:

@@ -2203,7 +2203,7 @@
         return error(GL_INVALID_FRAMEBUFFER_OPERATION);

     }

 

-    if(getReadFramebufferHandle() != 0 && framebufferSamples != 0)

+    if(getReadFramebufferName() != 0 && framebufferSamples != 0)

     {

         return error(GL_INVALID_OPERATION);

     }

@@ -2715,19 +2715,19 @@
     // If a buffer object is deleted while it is bound, all bindings to that object in the current context

     // (i.e. in the thread that called Delete-Buffers) are reset to zero.

 

-    if(mState.arrayBuffer.id() == buffer)

+    if(mState.arrayBuffer.name() == buffer)

     {

         mState.arrayBuffer.set(NULL);

     }

 

-    if(mState.elementArrayBuffer.id() == buffer)

+    if(mState.elementArrayBuffer.name() == buffer)

     {

         mState.elementArrayBuffer.set(NULL);

     }

 

     for(int attribute = 0; attribute < MAX_VERTEX_ATTRIBS; attribute++)

     {

-        if(mState.vertexAttribute[attribute].mBoundBuffer.id() == buffer)

+        if(mState.vertexAttribute[attribute].mBoundBuffer.name() == buffer)

         {

             mState.vertexAttribute[attribute].mBoundBuffer.set(NULL);

         }

@@ -2744,7 +2744,7 @@
     {

         for(int sampler = 0; sampler < MAX_COMBINED_TEXTURE_IMAGE_UNITS; sampler++)

         {

-            if(mState.samplerTexture[type][sampler].id() == texture)

+            if(mState.samplerTexture[type][sampler].name() == texture)

             {

                 mState.samplerTexture[type][sampler].set(NULL);

             }

@@ -2793,7 +2793,7 @@
     // If a renderbuffer that is currently bound to RENDERBUFFER is deleted, it is as though BindRenderbuffer

     // had been executed with the target RENDERBUFFER and name of zero.

 

-    if(mState.renderbuffer.id() == renderbuffer)

+    if(mState.renderbuffer.name() == renderbuffer)

     {

         bindRenderbuffer(0);

     }

diff --git a/src/OpenGL/libGLESv2/Context.h b/src/OpenGL/libGLESv2/Context.h
index 5331af3..9878cf6 100644
--- a/src/OpenGL/libGLESv2/Context.h
+++ b/src/OpenGL/libGLESv2/Context.h
@@ -318,13 +318,13 @@
 

     void setActiveSampler(unsigned int active);

 

-    GLuint getReadFramebufferHandle() const;

-    GLuint getDrawFramebufferHandle() const;

-    GLuint getRenderbufferHandle() const;

+    GLuint getReadFramebufferName() const;

+    GLuint getDrawFramebufferName() const;

+    GLuint getRenderbufferName() const;

 

 	GLuint getActiveQuery(GLenum target) const;

 

-    GLuint getArrayBufferHandle() const;

+    GLuint getArrayBufferName() const;

 

     void setEnableVertexAttribArray(unsigned int attribNum, bool enabled);

     const VertexAttribute &getVertexAttribState(unsigned int attribNum);

diff --git a/src/OpenGL/libGLESv2/Framebuffer.cpp b/src/OpenGL/libGLESv2/Framebuffer.cpp
index 0235e82..5e7a7c7 100644
--- a/src/OpenGL/libGLESv2/Framebuffer.cpp
+++ b/src/OpenGL/libGLESv2/Framebuffer.cpp
@@ -81,19 +81,19 @@
 
 void Framebuffer::detachTexture(GLuint texture)
 {
-	if(mColorbufferPointer.id() == texture && IsTextureTarget(mColorbufferType))
+	if(mColorbufferPointer.name() == texture && IsTextureTarget(mColorbufferType))
 	{
 		mColorbufferType = GL_NONE;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == texture && IsTextureTarget(mDepthbufferType))
+	if(mDepthbufferPointer.name() == texture && IsTextureTarget(mDepthbufferType))
 	{
 		mDepthbufferType = GL_NONE;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == texture && IsTextureTarget(mStencilbufferType))
+	if(mStencilbufferPointer.name() == texture && IsTextureTarget(mStencilbufferType))
 	{
 		mStencilbufferType = GL_NONE;
 		mStencilbufferPointer.set(NULL);
@@ -102,19 +102,19 @@
 
 void Framebuffer::detachRenderbuffer(GLuint renderbuffer)
 {
-	if(mColorbufferPointer.id() == renderbuffer && mColorbufferType == GL_RENDERBUFFER)
+	if(mColorbufferPointer.name() == renderbuffer && mColorbufferType == GL_RENDERBUFFER)
 	{
 		mColorbufferType = GL_NONE;
 		mColorbufferPointer.set(NULL);
 	}
 
-	if(mDepthbufferPointer.id() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER)
+	if(mDepthbufferPointer.name() == renderbuffer && mDepthbufferType == GL_RENDERBUFFER)
 	{
 		mDepthbufferType = GL_NONE;
 		mDepthbufferPointer.set(NULL);
 	}
 
-	if(mStencilbufferPointer.id() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER)
+	if(mStencilbufferPointer.name() == renderbuffer && mStencilbufferType == GL_RENDERBUFFER)
 	{
 		mStencilbufferType = GL_NONE;
 		mStencilbufferPointer.set(NULL);
@@ -184,19 +184,19 @@
 	return mStencilbufferType;
 }
 
-GLuint Framebuffer::getColorbufferHandle()
+GLuint Framebuffer::getColorbufferName()
 {
-	return mColorbufferPointer.id();
+	return mColorbufferPointer.name();
 }
 
-GLuint Framebuffer::getDepthbufferHandle()
+GLuint Framebuffer::getDepthbufferName()
 {
-	return mDepthbufferPointer.id();
+	return mDepthbufferPointer.name();
 }
 
-GLuint Framebuffer::getStencilbufferHandle()
+GLuint Framebuffer::getStencilbufferName()
 {
-	return mStencilbufferPointer.id();
+	return mStencilbufferPointer.name();
 }
 
 bool Framebuffer::hasStencil()
diff --git a/src/OpenGL/libGLESv2/Framebuffer.h b/src/OpenGL/libGLESv2/Framebuffer.h
index df9486e..e3b3a2a 100644
--- a/src/OpenGL/libGLESv2/Framebuffer.h
+++ b/src/OpenGL/libGLESv2/Framebuffer.h
@@ -54,9 +54,9 @@
     GLenum getDepthbufferType();

     GLenum getStencilbufferType();

 

-    GLuint getColorbufferHandle();

-    GLuint getDepthbufferHandle();

-    GLuint getStencilbufferHandle();

+    GLuint getColorbufferName();

+    GLuint getDepthbufferName();

+    GLuint getStencilbufferName();

 

     bool hasStencil();

 

diff --git a/src/OpenGL/libGLESv2/Program.cpp b/src/OpenGL/libGLESv2/Program.cpp
index 7599be5..ddeef88 100644
--- a/src/OpenGL/libGLESv2/Program.cpp
+++ b/src/OpenGL/libGLESv2/Program.cpp
@@ -2056,7 +2056,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = vertexShader->getHandle();

+				shaders[total] = vertexShader->getName();

 			}

 

 			total++;

@@ -2066,7 +2066,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = fragmentShader->getHandle();

+				shaders[total] = fragmentShader->getName();

 			}

 

 			total++;

diff --git a/src/OpenGL/libGLESv2/Query.cpp b/src/OpenGL/libGLESv2/Query.cpp
index 97c4efd..4cc6b81 100644
--- a/src/OpenGL/libGLESv2/Query.cpp
+++ b/src/OpenGL/libGLESv2/Query.cpp
@@ -19,7 +19,7 @@
 namespace es2

 {

 

-Query::Query(GLuint id, GLenum type) : RefCountObject(id)

+Query::Query(GLuint name, GLenum type) : Object(name)

 { 

     mQuery = NULL;

     mStatus = GL_FALSE;

diff --git a/src/OpenGL/libGLESv2/Query.h b/src/OpenGL/libGLESv2/Query.h
index fb3427a..0e5ead8 100644
--- a/src/OpenGL/libGLESv2/Query.h
+++ b/src/OpenGL/libGLESv2/Query.h
@@ -23,10 +23,10 @@
 namespace es2

 {

 

-class Query : public gl::RefCountObject

+class Query : public gl::Object

 {

   public:

-    Query(GLuint id, GLenum type);

+    Query(GLuint name, GLenum type);

     virtual ~Query();

 

     void begin();

diff --git a/src/OpenGL/libGLESv2/Renderbuffer.cpp b/src/OpenGL/libGLESv2/Renderbuffer.cpp
index 58f5f57..221352b 100644
--- a/src/OpenGL/libGLESv2/Renderbuffer.cpp
+++ b/src/OpenGL/libGLESv2/Renderbuffer.cpp
@@ -272,7 +272,7 @@
 
 ////// Renderbuffer Implementation //////
 
-Renderbuffer::Renderbuffer(GLuint id, RenderbufferInterface *instance) : RefCountObject(id)
+Renderbuffer::Renderbuffer(GLuint name, RenderbufferInterface *instance) : Object(name)
 {
 	ASSERT(instance != NULL);
 	mInstance = instance;
@@ -289,14 +289,14 @@
 {
     mInstance->addProxyRef(this);
 
-    RefCountObject::addRef();
+    Object::addRef();
 }
 
 void Renderbuffer::release()
 {
     mInstance->releaseProxy(this);
 
-    RefCountObject::release();
+    Object::release();
 }
 
 // Increments refcount on image.
diff --git a/src/OpenGL/libGLESv2/Renderbuffer.h b/src/OpenGL/libGLESv2/Renderbuffer.h
index bd322e7..cfacbd5 100644
--- a/src/OpenGL/libGLESv2/Renderbuffer.h
+++ b/src/OpenGL/libGLESv2/Renderbuffer.h
@@ -164,14 +164,14 @@
 // Renderbuffer implements the GL renderbuffer object.

 // It's only a proxy for a RenderbufferInterface instance; the internal object

 // can change whenever glRenderbufferStorage is called.

-class Renderbuffer : public gl::RefCountObject

+class Renderbuffer : public gl::Object

 {

 public:

-	Renderbuffer(GLuint id, RenderbufferInterface *storage);

+	Renderbuffer(GLuint name, RenderbufferInterface *storage);

 

 	virtual ~Renderbuffer();

 

-	// These functions from RefCountObject are overloaded here because

+	// These functions from Object are overloaded here because

     // Textures need to maintain their own count of references to them via

     // Renderbuffers/RenderbufferTextures. These functions invoke those

     // reference counting functions on the RenderbufferInterface.

diff --git a/src/OpenGL/libGLESv2/Shader.cpp b/src/OpenGL/libGLESv2/Shader.cpp
index e99806d..fe292ec 100644
--- a/src/OpenGL/libGLESv2/Shader.cpp
+++ b/src/OpenGL/libGLESv2/Shader.cpp
@@ -43,7 +43,7 @@
     delete[] mInfoLog;
 }
 
-GLuint Shader::getHandle() const
+GLuint Shader::getName() const
 {
     return mHandle;
 }
@@ -388,11 +388,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "vertex-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "vertex-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		vertexShader->print("vertex-output-%d-%d.txt", getHandle(), serial);
+		vertexShader->print("vertex-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
@@ -474,11 +474,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "pixel-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "pixel-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		pixelShader->print("pixel-output-%d-%d.txt", getHandle(), serial);
+		pixelShader->print("pixel-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
diff --git a/src/OpenGL/libGLESv2/Shader.h b/src/OpenGL/libGLESv2/Shader.h
index f6a3feb..d445270 100644
--- a/src/OpenGL/libGLESv2/Shader.h
+++ b/src/OpenGL/libGLESv2/Shader.h
@@ -45,7 +45,7 @@
     virtual ~Shader();

 

     virtual GLenum getType() = 0;

-    GLuint getHandle() const;

+    GLuint getName() const;

 

     void deleteSource();

     void setSource(GLsizei count, const char *const *string, const GLint *length);

diff --git a/src/OpenGL/libGLESv2/Texture.cpp b/src/OpenGL/libGLESv2/Texture.cpp
index 982c7c8..9cfc422 100644
--- a/src/OpenGL/libGLESv2/Texture.cpp
+++ b/src/OpenGL/libGLESv2/Texture.cpp
@@ -28,7 +28,7 @@
 namespace es2

 {

 

-Texture::Texture(GLuint id) : egl::Texture(id)

+Texture::Texture(GLuint name) : egl::Texture(name)

 {

     mMinFilter = GL_NEAREST_MIPMAP_LINEAR;

     mMagFilter = GL_LINEAR;

@@ -314,7 +314,7 @@
 	return false;

 }

 

-Texture2D::Texture2D(GLuint id) : Texture(id)

+Texture2D::Texture2D(GLuint name) : Texture(name)

 {

 	for(int i = 0; i < MIPMAP_LEVELS; i++)

 	{

@@ -698,7 +698,7 @@
 

     if(mColorbufferProxy == NULL)

     {

-        mColorbufferProxy = new Renderbuffer(id(), new RenderbufferTexture2D(this));

+        mColorbufferProxy = new Renderbuffer(name, new RenderbufferTexture2D(this));

     }

 

     return mColorbufferProxy;

@@ -735,7 +735,7 @@
     return image[level]->isShared();

 }

 

-TextureCubeMap::TextureCubeMap(GLuint id) : Texture(id)

+TextureCubeMap::TextureCubeMap(GLuint name) : Texture(name)

 {

 	for(int f = 0; f < 6; f++)

 	{

@@ -1137,7 +1137,7 @@
 

     if(mFaceProxies[face] == NULL)

     {

-        mFaceProxies[face] = new Renderbuffer(id(), new RenderbufferTextureCubeMap(this, target));

+        mFaceProxies[face] = new Renderbuffer(name, new RenderbufferTextureCubeMap(this, target));

     }

 

     return mFaceProxies[face];

@@ -1173,7 +1173,7 @@
     return image[face][level]->isShared();

 }

 

-Texture3D::Texture3D(GLuint id) : Texture(id)

+Texture3D::Texture3D(GLuint name) : Texture(name)

 {

 	for(int i = 0; i < MIPMAP_LEVELS; i++)

 	{

@@ -1525,7 +1525,7 @@
 

 	if(mColorbufferProxy == NULL)

 	{

-		mColorbufferProxy = new Renderbuffer(id(), new RenderbufferTexture3D(this));

+		mColorbufferProxy = new Renderbuffer(name, new RenderbufferTexture3D(this));

 	}

 

 	return mColorbufferProxy;

@@ -1562,7 +1562,7 @@
 	return image[level]->isShared();

 }

 

-TextureExternal::TextureExternal(GLuint id) : Texture2D(id)

+TextureExternal::TextureExternal(GLuint name) : Texture2D(name)

 {

     mMinFilter = GL_LINEAR;

     mMagFilter = GL_LINEAR;

diff --git a/src/OpenGL/libGLESv2/Texture.h b/src/OpenGL/libGLESv2/Texture.h
index ae0ec86..806d94a 100644
--- a/src/OpenGL/libGLESv2/Texture.h
+++ b/src/OpenGL/libGLESv2/Texture.h
@@ -49,7 +49,7 @@
 class Texture : public egl::Texture

 {

 public:

-    explicit Texture(GLuint id);

+    explicit Texture(GLuint name);

 

     virtual ~Texture();

 

@@ -117,7 +117,7 @@
 class Texture2D : public Texture

 {

 public:

-    explicit Texture2D(GLuint id);

+    explicit Texture2D(GLuint name);

 

     virtual ~Texture2D();

 

@@ -175,7 +175,7 @@
 class TextureCubeMap : public Texture

 {

 public:

-    explicit TextureCubeMap(GLuint id);

+    explicit TextureCubeMap(GLuint name);

 

     virtual ~TextureCubeMap();

 

@@ -233,7 +233,7 @@
 class Texture3D : public Texture

 {

 public:

-	explicit Texture3D(GLuint id);

+	explicit Texture3D(GLuint name);

 

 	virtual ~Texture3D();

 

@@ -292,7 +292,7 @@
 class TextureExternal : public Texture2D

 {

 public:

-    explicit TextureExternal(GLuint id);

+    explicit TextureExternal(GLuint name);

 

     virtual ~TextureExternal();

 

diff --git a/src/OpenGL/libGLESv2/libGLESv2.cpp b/src/OpenGL/libGLESv2/libGLESv2.cpp
index f354579..abd0280 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv2.cpp
@@ -343,9 +343,9 @@
 	}

 }

 

-void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint id)

+void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint name)

 {

-	TRACE("(GLenum target = 0x%X, GLuint %d)", target, id);

+	TRACE("(GLenum target = 0x%X, GLuint name = %d)", target, name);

 

 	switch(target)

 	{

@@ -356,7 +356,7 @@
 		return error(GL_INVALID_ENUM);

 	}

 

-	if(id == 0)

+	if(name == 0)

 	{

 		return error(GL_INVALID_OPERATION);

 	}

@@ -365,7 +365,7 @@
 

 	if(context)

 	{

-		context->beginQuery(target, id);

+		context->beginQuery(target, name);

 	}

 }

 

@@ -1154,7 +1154,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION);

 		}

 

-		if(context->getReadFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getReadFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1235,7 +1235,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION);

 		}

 

-		if(context->getReadFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getReadFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1818,19 +1818,19 @@
 	if(context)

 	{

 		es2::Framebuffer *framebuffer = NULL;

-		GLuint framebufferHandle = 0;

+		GLuint framebufferName = 0;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

 			framebuffer = context->getReadFramebuffer();

-			framebufferHandle = context->getReadFramebufferHandle();

+			framebufferName = context->getReadFramebufferName();

 		}

 		else

 		{

 			framebuffer = context->getDrawFramebuffer();

-			framebufferHandle = context->getDrawFramebufferHandle();

+			framebufferName = context->getDrawFramebufferName();

 		}

 

-		if(!framebuffer || (framebufferHandle == 0 && renderbuffer != 0))

+		if(!framebuffer || (framebufferName == 0 && renderbuffer != 0))

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -1924,19 +1924,19 @@
 		}

 

 		es2::Framebuffer *framebuffer = NULL;

-		GLuint framebufferHandle = 0;

+		GLuint framebufferName = 0;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

 			framebuffer = context->getReadFramebuffer();

-			framebufferHandle = context->getReadFramebufferHandle();

+			framebufferName = context->getReadFramebufferName();

 		}

 		else

 		{

 			framebuffer = context->getDrawFramebuffer();

-			framebufferHandle = context->getDrawFramebufferHandle();

+			framebufferName = context->getDrawFramebufferName();

 		}

 

-		if(framebufferHandle == 0 || !framebuffer)

+		if(framebufferName == 0 || !framebuffer)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -2466,7 +2466,7 @@
 		es2::Framebuffer *framebuffer = NULL;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

-			if(context->getReadFramebufferHandle() == 0)

+			if(context->getReadFramebufferName() == 0)

 			{

 				return error(GL_INVALID_OPERATION);

 			}

@@ -2475,7 +2475,7 @@
 		}

 		else

 		{

-			if(context->getDrawFramebufferHandle() == 0)

+			if(context->getDrawFramebufferName() == 0)

 			{

 				return error(GL_INVALID_OPERATION);

 			}

@@ -2489,15 +2489,15 @@
 		{

 		case GL_COLOR_ATTACHMENT0:

 			attachmentType = framebuffer->getColorbufferType();

-			attachmentHandle = framebuffer->getColorbufferHandle();

+			attachmentHandle = framebuffer->getColorbufferName();

 			break;

 		case GL_DEPTH_ATTACHMENT:

 			attachmentType = framebuffer->getDepthbufferType();

-			attachmentHandle = framebuffer->getDepthbufferHandle();

+			attachmentHandle = framebuffer->getDepthbufferName();

 			break;

 		case GL_STENCIL_ATTACHMENT:

 			attachmentType = framebuffer->getStencilbufferType();

-			attachmentHandle = framebuffer->getStencilbufferHandle();

+			attachmentHandle = framebuffer->getStencilbufferName();

 			break;

 		default:

 			return error(GL_INVALID_ENUM);

@@ -2724,9 +2724,9 @@
 	}

 }

 

-void GL_APIENTRY glGetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint *params)

+void GL_APIENTRY glGetQueryObjectuivEXT(GLuint name, GLenum pname, GLuint *params)

 {

-	TRACE("(GLuint id = %d, GLenum pname = 0x%X, GLuint *params = 0x%0.8p)", id, pname, params);

+	TRACE("(GLuint name = %d, GLenum pname = 0x%X, GLuint *params = 0x%0.8p)", name, pname, params);

 

 	switch(pname)

 	{

@@ -2741,14 +2741,14 @@
 

 	if(context)

 	{

-		es2::Query *queryObject = context->getQuery(id, false, GL_NONE);

+		es2::Query *queryObject = context->getQuery(name, false, GL_NONE);

 

 		if(!queryObject)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

 

-		if(context->getActiveQuery(queryObject->getType()) == id)

+		if(context->getActiveQuery(queryObject->getType()) == name)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -2780,12 +2780,12 @@
 			return error(GL_INVALID_ENUM);

 		}

 

-		if(context->getRenderbufferHandle() == 0)

+		if(context->getRenderbufferName() == 0)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

 

-		es2::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferHandle());

+		es2::Renderbuffer *renderbuffer = context->getRenderbuffer(context->getRenderbufferName());

 

 		switch(pname)

 		{

@@ -3296,7 +3296,7 @@
 			*params = (GLfloat)(attribState.mNormalized ? GL_TRUE : GL_FALSE);

 			break;

 		case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:

-			*params = (GLfloat)attribState.mBoundBuffer.id();

+			*params = (GLfloat)attribState.mBoundBuffer.name();

 			break;

 		case GL_CURRENT_VERTEX_ATTRIB:

 			for(int i = 0; i < 4; ++i)

@@ -3342,7 +3342,7 @@
 			*params = (attribState.mNormalized ? GL_TRUE : GL_FALSE);

 			break;

 		case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:

-			*params = attribState.mBoundBuffer.id();

+			*params = attribState.mBoundBuffer.name();

 			break;

 		case GL_CURRENT_VERTEX_ATTRIB:

 			for(int i = 0; i < 4; ++i)

@@ -3511,11 +3511,11 @@
 	return GL_FALSE;

 }

 

-GLboolean GL_APIENTRY glIsQueryEXT(GLuint id)

+GLboolean GL_APIENTRY glIsQueryEXT(GLuint name)

 {

-	TRACE("(GLuint id = %d)", id);

+	TRACE("(GLuint name = %d)", name);

 

-	if(id == 0)

+	if(name == 0)

 	{

 		return GL_FALSE;

 	}

@@ -3524,7 +3524,7 @@
 

 	if(context)

 	{

-		es2::Query *queryObject = context->getQuery(id, false, GL_NONE);

+		es2::Query *queryObject = context->getQuery(name, false, GL_NONE);

 

 		if(queryObject)

 		{

@@ -3757,7 +3757,7 @@
 			return error(GL_INVALID_VALUE);

 		}

 

-		GLuint handle = context->getRenderbufferHandle();

+		GLuint handle = context->getRenderbufferName();

 		if(handle == 0)

 		{

 			return error(GL_INVALID_OPERATION);

@@ -5159,7 +5159,7 @@
 

 	if(context)

 	{

-		if(context->getReadFramebufferHandle() == context->getDrawFramebufferHandle())

+		if(context->getReadFramebufferName() == context->getDrawFramebufferName())

 		{

 			ERR("Blits with the same source and destination framebuffer are not supported by this implementation.");

 			return error(GL_INVALID_OPERATION);

@@ -5234,13 +5234,13 @@
 	}

 }

 

-void GL_APIENTRY glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
-{
+void GL_APIENTRY glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)

+{

 	TRACE("(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, "

 		"GLint zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, "

 		"GLenum format = 0x%X, GLenum type = 0x%x, const GLvoid* pixels = 0x%0.8p)",

-		target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
-
+		target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);

+

 	switch(target)

 	{

 	case GL_TEXTURE_3D_OES:

@@ -5274,28 +5274,28 @@
 		{

 			texture->subImage(level, xoffset, yoffset, zoffset, width, height, depth, format, type, context->getUnpackAlignment(), pixels);

 		}

-	}
-}
-
-void GL_APIENTRY glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-{
+	}

+}

+

+void GL_APIENTRY glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)

+{

 	TRACE("(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, "

 		"GLint zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",

-		target, level, xoffset, yoffset, zoffset, x, y, width, height);
-
+		target, level, xoffset, yoffset, zoffset, x, y, width, height);

+

 	switch(target)

 	{

 	case GL_TEXTURE_3D_OES:

 		break;

 	default:

 		return error(GL_INVALID_ENUM);

-	}
-
+	}

+

 	if((level < 0) || (level >= es2::IMPLEMENTATION_MAX_TEXTURE_LEVELS))

 	{

 		return error(GL_INVALID_VALUE);

-	}
-
+	}

+

 	es2::Context *context = es2::getContext();

 

 	if(context)

@@ -5307,7 +5307,7 @@
 			return error(GL_INVALID_FRAMEBUFFER_OPERATION);

 		}

 

-		if(context->getReadFramebufferHandle() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

+		if(context->getReadFramebufferName() != 0 && framebuffer->getColorbuffer()->getSamples() > 1)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -5329,11 +5329,11 @@
 		}

 		

 		texture->copySubImage(target, level, xoffset, yoffset, zoffset, x, y, width, height, framebuffer);

-	}
-}
-
-void GL_APIENTRY glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
-{
+	}

+}

+

+void GL_APIENTRY glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)

+{

 	TRACE("(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = %d, "

 		"GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, const GLvoid* data = 0x%0.8p)",

 		target, level, internalformat, width, height, depth, border, imageSize, data);

@@ -5344,7 +5344,7 @@
 		break;

 	default:

 		return error(GL_INVALID_ENUM);

-	}
+	}

 

 	if((level < 0) || (level >= es2::IMPLEMENTATION_MAX_TEXTURE_LEVELS))

 	{

@@ -5397,23 +5397,23 @@
 		}

 

 		texture->setCompressedImage(level, internalformat, width, height, depth, imageSize, data);

-	}
-}
-
-void GL_APIENTRY glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
-{
+	}

+}

+

+void GL_APIENTRY glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)

+{

 	TRACE("(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, "

 		"GLint zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, "

 		"GLenum format = 0x%X, GLsizei imageSize = %d, const void *data = 0x%0.8p)",

-		target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
-
+		target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);

+

 	switch(target)

 	{

 	case GL_TEXTURE_3D_OES:

 		break;

 	default:

 		return error(GL_INVALID_ENUM);

-	}
+	}

 

 	if(xoffset < 0 || yoffset < 0 || zoffset < 0 || !validImageSize(level, width, height) || depth < 0 || imageSize < 0)

 	{

@@ -5440,12 +5440,12 @@
 	if(width == 0 || height == 0 || depth == 0 || data == NULL)

 	{

 		return;

-	}
-
+	}

+

 	es2::Context *context = es2::getContext();

 

 	if(context)

-	{
+	{

 		es2::Texture3D *texture = context->getTexture3D();

 

 		if(!texture)

@@ -5455,10 +5455,10 @@
 

 		texture->subImageCompressed(level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);

 	}

-}
-
-void GL_APIENTRY glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
-{
+}

+

+void GL_APIENTRY glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)

+{

 	TRACE("(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, "

 		"GLuint texture = %d, GLint level = %d, GLint zoffset = %d)", target, attachment, textarget, texture, level, zoffset);

 

@@ -5518,19 +5518,19 @@
 		}

 

 		es2::Framebuffer *framebuffer = NULL;

-		GLuint framebufferHandle = 0;

+		GLuint framebufferName = 0;

 		if(target == GL_READ_FRAMEBUFFER_ANGLE)

 		{

 			framebuffer = context->getReadFramebuffer();

-			framebufferHandle = context->getReadFramebufferHandle();

+			framebufferName = context->getReadFramebufferName();

 		}

 		else

 		{

 			framebuffer = context->getDrawFramebuffer();

-			framebufferHandle = context->getDrawFramebufferHandle();

+			framebufferName = context->getDrawFramebufferName();

 		}

 

-		if(framebufferHandle == 0 || !framebuffer)

+		if(framebufferName == 0 || !framebuffer)

 		{

 			return error(GL_INVALID_OPERATION);

 		}

@@ -5541,8 +5541,8 @@
 		case GL_DEPTH_ATTACHMENT:   framebuffer->setDepthbuffer(textarget, texture);   break;

 		case GL_STENCIL_ATTACHMENT: framebuffer->setStencilbuffer(textarget, texture); break;

 		}

-	}
-}
+	}

+}

 

 void GL_APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)

 {

diff --git a/src/Radiance/libRAD/Program.cpp b/src/Radiance/libRAD/Program.cpp
index 859658e..069400e 100644
--- a/src/Radiance/libRAD/Program.cpp
+++ b/src/Radiance/libRAD/Program.cpp
@@ -2032,7 +2032,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = vertexShader->getHandle();

+				shaders[total] = vertexShader->getName();

 			}

 

 			total++;

@@ -2042,7 +2042,7 @@
 		{

 			if(total < maxCount)

 			{

-				shaders[total] = fragmentShader->getHandle();

+				shaders[total] = fragmentShader->getName();

 			}

 

 			total++;

diff --git a/src/Radiance/libRAD/Shader.cpp b/src/Radiance/libRAD/Shader.cpp
index 3bd5261..467bae6 100644
--- a/src/Radiance/libRAD/Shader.cpp
+++ b/src/Radiance/libRAD/Shader.cpp
@@ -43,7 +43,7 @@
     delete[] mInfoLog;
 }
 
-GLuint Shader::getHandle() const
+GLuint Shader::getName() const
 {
     return mHandle;
 }
@@ -388,11 +388,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "vertex-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "vertex-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		vertexShader->print("vertex-output-%d-%d.txt", getHandle(), serial);
+		vertexShader->print("vertex-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
@@ -474,11 +474,11 @@
 	{
 		static int serial = 1;
 		char buffer[256];
-		sprintf(buffer, "pixel-input-%d-%d.txt", getHandle(), serial);
+		sprintf(buffer, "pixel-input-%d-%d.txt", getName(), serial);
 		FILE *file = fopen(buffer, "wt");
 		fprintf(file, mSource);
 		fclose(file);
-		pixelShader->print("pixel-output-%d-%d.txt", getHandle(), serial);
+		pixelShader->print("pixel-output-%d-%d.txt", getName(), serial);
 		serial++;
 	}
 
diff --git a/src/Radiance/libRAD/Shader.h b/src/Radiance/libRAD/Shader.h
index 5b80970..aaf4a3c 100644
--- a/src/Radiance/libRAD/Shader.h
+++ b/src/Radiance/libRAD/Shader.h
@@ -43,7 +43,7 @@
     virtual ~Shader();

 

     virtual GLenum getType() = 0;

-    GLuint getHandle() const;

+    GLuint getName() const;

 

     void deleteSource();

     void setSource(GLsizei count, const char *const *string, const GLint *length);