diff options
Diffstat (limited to 'ANGLE/src/libGLESv2/Program.h')
-rw-r--r-- | ANGLE/src/libGLESv2/Program.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/ANGLE/src/libGLESv2/Program.h b/ANGLE/src/libGLESv2/Program.h index e52f20e..3021b7a 100644 --- a/ANGLE/src/libGLESv2/Program.h +++ b/ANGLE/src/libGLESv2/Program.h @@ -20,6 +20,7 @@ namespace gl { +class ResourceManager; class FragmentShader; class VertexShader; @@ -55,7 +56,7 @@ struct UniformLocation class Program { public: - Program(); + Program(ResourceManager *manager, GLuint handle); ~Program(); @@ -97,7 +98,7 @@ class Program GLint getDepthRangeNearLocation() const; GLint getDepthRangeFarLocation() const; GLint getDxDepthLocation() const; - GLint getDxWindowLocation() const; + GLint getDxViewportLocation() const; GLint getDxHalfPixelSizeLocation() const; GLint getDxFrontCCWLocation() const; GLint getDxPointsOrLinesLocation() const; @@ -119,6 +120,9 @@ class Program GLint getActiveUniformCount(); GLint getActiveUniformMaxLength(); + void addRef(); + void release(); + unsigned int getRefCount() const; void flagForDeletion(); bool isFlaggedForDeletion() const; @@ -204,7 +208,7 @@ class Program GLint mDepthRangeNearLocation; GLint mDepthRangeFarLocation; GLint mDxDepthLocation; - GLint mDxWindowLocation; + GLint mDxViewportLocation; GLint mDxHalfPixelSizeLocation; GLint mDxFrontCCWLocation; GLint mDxPointsOrLinesLocation; @@ -214,9 +218,14 @@ class Program char *mInfoLog; bool mValidated; + unsigned int mRefCount; + unsigned int mSerial; static unsigned int mCurrentSerial; + + ResourceManager *mResourceManager; + const GLuint mHandle; }; } |