X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftest-gl-abstraction.h;h=aec9f5dad925c687d8fd2226115bcbf79fd5090c;hp=292f8b49b3844ab94b18289258e8625056331c24;hb=383021a5eeff5ade0a8e7d50d3fdbe5a7549f0da;hpb=100f0f8554f97295dd52e01a91ef2b868eba3554 diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.h b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.h index 292f8b4..aec9f5d 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.h +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.h @@ -38,14 +38,22 @@ namespace Dali { - struct UniformData { - std::string name; - Property::Type type; - UniformData( const std::string& name, Property::Type type = Property::Type::NONE) - : name(name), type(type) - {} + std::string name; + Property::Type type; + UniformData(const std::string& name, Property::Type type = Property::Type::NONE) + : name(name), + type(type) + { + } +}; + +struct ActiveUniform +{ + std::string name; + GLenum type; + GLint size; }; class DALI_CORE_API TestGlAbstraction : public Dali::Integration::GlAbstraction @@ -620,6 +628,11 @@ public: { mFramebufferStencilAttached = true; } + else if(attachment == GL_DEPTH_STENCIL_ATTACHMENT) + { + mFramebufferStencilAttached = true; + mFramebufferDepthAttached = true; + } } inline void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) override @@ -748,27 +761,18 @@ public: { } + inline void SetActiveUniforms(const std::vector& uniforms) + { + mActiveUniforms = uniforms; + } + inline void GetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) override { - switch(index) + if(index < mActiveUniforms.size()) { - case 0: - *length = snprintf(name, bufsize, "sTexture"); - *type = GL_SAMPLER_2D; - *size = 1; - break; - case 1: - *length = snprintf(name, bufsize, "sEffect"); - *type = GL_SAMPLER_2D; - *size = 1; - break; - case 2: - *length = snprintf(name, bufsize, "sGloss"); - *type = GL_SAMPLER_2D; - *size = 1; - break; - default: - break; + *length = snprintf(name, bufsize, "%s", mActiveUniforms[index].name.c_str()); + *type = mActiveUniforms[index].type; + *size = mActiveUniforms[index].size; } } @@ -836,7 +840,7 @@ public: *params = mProgramBinaryLength; break; case GL_ACTIVE_UNIFORMS: - *params = mNumberOfActiveUniforms; + *params = mActiveUniforms.size(); break; case GL_ACTIVE_UNIFORM_MAX_LENGTH: *params = 100; @@ -980,33 +984,12 @@ public: namedParams["program"] << program; mShaderTrace.PushCall("LinkProgram", out.str(), namedParams); - mNumberOfActiveUniforms = 3; - - GetUniformLocation(program, "uRendererColor"); - GetUniformLocation(program, "uCustom"); - GetUniformLocation(program, "uCustom3"); - GetUniformLocation(program, "uFadeColor"); - GetUniformLocation(program, "uUniform1"); - GetUniformLocation(program, "uUniform2"); - GetUniformLocation(program, "uUniform3"); - GetUniformLocation(program, "uFadeProgress"); - GetUniformLocation(program, "uANormalMatrix"); - GetUniformLocation(program, "sEffect"); - GetUniformLocation(program, "sTexture"); - GetUniformLocation(program, "sTextureRect"); - GetUniformLocation(program, "sGloss"); - GetUniformLocation(program, "uColor"); - GetUniformLocation(program, "uModelMatrix"); - GetUniformLocation(program, "uModelView"); - GetUniformLocation(program, "uMvpMatrix"); - GetUniformLocation(program, "uNormalMatrix"); - GetUniformLocation(program, "uProjection"); - GetUniformLocation(program, "uSize"); - GetUniformLocation(program, "uViewMatrix"); - GetUniformLocation(program, "uLightCameraProjectionMatrix"); - GetUniformLocation(program, "uLightCameraViewMatrix"); - - for( const auto& uniform : mCustomUniformData ) + for(const auto& uniform : mActiveUniforms) + { + GetUniformLocation(program, uniform.name.c_str()); + } + + for(const auto& uniform : mCustomUniformData) { GetUniformLocation(program, uniform.name.c_str()); } @@ -1217,16 +1200,10 @@ public: out << std::hex << target << ", " << pname << ", " << param; std::string params = out.str(); - out.str(""); - out << std::hex << target; TraceCallStack::NamedParams namedParams; - namedParams["target"] << out.str(); - out.str(""); - out << std::hex << pname; - namedParams["pname"] << out.str(); - out.str(""); - out << std::hex << param; - namedParams["param"] << out.str(); + namedParams["target"] << std::hex << target; + namedParams["pname"] << std::hex << pname; + namedParams["param"] << param; mTexParameterTrace.PushCall("TexParameteri", params, namedParams); } @@ -2470,14 +2447,13 @@ public: // TEST FUNCTIONS mBufferSubDataCalls.clear(); } -private: +public: GLuint mCurrentProgram; GLuint mCompileStatus; BufferDataCalls mBufferDataCalls; BufferSubDataCalls mBufferSubDataCalls; GLvoid* mMappedBuffer{nullptr}; GLuint mLinkStatus; - GLint mNumberOfActiveUniforms; GLenum mGetErrorResult; GLubyte* mGetStringResult; GLboolean mIsBufferResult; @@ -2552,7 +2528,7 @@ private: typedef std::map UniformIDMap; typedef std::map ProgramUniformMap; ProgramUniformMap mUniforms; - + std::vector mActiveUniforms; std::vector mCustomUniformData{}; template