29 #ifndef __GLES2StateCacheManagerImp_H__
30 #define __GLES2StateCacheManagerImp_H__
52 mTexParameteriMap.clear();
53 mTexParameterfMap.clear();
84 GLenum mBlendEquation;
100 unsigned int mDiscardBuffers;
102 GLclampf mClearDepth;
109 void initializeCache();
115 void bindGLBuffer(GLenum target, GLuint buffer, GLenum attach = 0,
bool force =
false);
118 void deleteGLBuffer(GLenum target, GLuint buffer, GLenum attach = 0,
bool force =
false);
121 void bindGLTexture(GLenum target, GLuint texture);
124 void setTexParameteri(GLenum target, GLenum pname, GLint param);
127 void setTexParameterf(GLenum target, GLenum pname, GLfloat params);
130 void getTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
133 void invalidateStateForTexture(GLuint texture);
136 bool activateGLTextureUnit(
size_t unit);
142 void setBlendEquation(GLenum eq);
145 void setBlendFunc(GLenum source, GLenum dest);
151 void setDepthMask(GLboolean mask);
157 void setDepthFunc(GLenum func);
163 void setClearDepth(GLclampf depth);
166 void setClearColour(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
172 void setColourMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
178 void setStencilMask(GLuint mask);
181 void setEnabled(GLenum flag);
184 void setDisabled(GLenum flag);
187 void setVertexAttribEnabled(GLuint attrib);
190 void setVertexAttribDisabled(GLuint attrib);
208 void setCullFace(GLenum face);