X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftest-native-image.h;h=bd1bfcc141997419604098457aecd9174f2ef662;hb=6a219d0bbcfd016e24b5466d5fb1a666c92feae5;hp=f7d4f785b88cae877240f253b2d90e59f8caeda2;hpb=893ec494389e7fe476a64e220ae97eedb73e74d7;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-native-image.h b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-native-image.h index f7d4f78..bd1bfcc 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-native-image.h +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-native-image.h @@ -2,7 +2,7 @@ #define TEST_NATIVE_IMAGE_H /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,40 +40,64 @@ public: inline virtual bool CreateResource() { ++mExtensionCreateCalls; + mCallStack.PushCall("CreateResource", ""); return createResult; }; inline virtual void DestroyResource() { ++mExtensionDestroyCalls; + mCallStack.PushCall("DestroyResource", ""); }; inline virtual GLenum TargetTexture() { ++mTargetTextureCalls; - return mTargetTextureError; + mCallStack.PushCall("TargetTexture", ""); + return mTargetTextureError--; + }; + inline virtual void PrepareTexture() + { + mCallStack.PushCall("PrepareTexture", ""); }; - inline virtual void PrepareTexture(){}; inline virtual uint32_t GetWidth() const { + mCallStack.PushCall("GetWidth", ""); return mWidth; }; inline virtual uint32_t GetHeight() const { + mCallStack.PushCall("GetHeight", ""); return mHeight; }; inline virtual bool RequiresBlending() const { + mCallStack.PushCall("RequiresBlending", ""); return true; }; inline virtual int GetTextureTarget() const { + mCallStack.PushCall("GetTextureTarget", ""); return GL_TEXTURE_EXTERNAL_OES; }; - inline virtual const char* GetCustomFragmentPrefix() const + inline virtual bool ApplyNativeFragmentShader(std::string& shader) { - return "#extension GL_OES_EGL_image_external:require\n"; + mCallStack.PushCall("ApplyNativeFragmentShader", ""); + shader = "#extension GL_OES_EGL_image_external:require\n" + shader; + + //Get custom sampler type name + const char* customSamplerTypename = GetCustomSamplerTypename(); + if(customSamplerTypename) + { + size_t samplerPosition = shader.find("sampler2D"); + if(samplerPosition != std::string::npos) + { + shader.replace(samplerPosition, strlen("sampler2D"), customSamplerTypename); + } + } + return true; }; inline const char* GetCustomSamplerTypename() const override { + mCallStack.PushCall("GetCustomSamplerTypename", ""); return "samplerExternalOES"; }; @@ -99,11 +123,12 @@ private: uint32_t mHeight; public: - int32_t mExtensionCreateCalls; - int32_t mExtensionDestroyCalls; - int32_t mTargetTextureCalls; - uint32_t mTargetTextureError = 0u; - bool createResult; + int32_t mExtensionCreateCalls; + int32_t mExtensionDestroyCalls; + int32_t mTargetTextureCalls; + uint32_t mTargetTextureError{0u}; + bool createResult; + mutable TraceCallStack mCallStack; }; } // namespace Dali