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-native-image.h;h=896ce526f0b2a66ee6987355f1f61adcbaeb9e08;hp=8dc643167f2d4eb228ab0163bf6f5e05908cf312;hb=d07dc4c4a6067ba3080184d862bca40a90d1789c;hpb=602711f643eed100940eb0b54c1dacacce2ae27e 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 8dc6431..896ce52 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) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 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. @@ -21,11 +21,14 @@ // INTERNAL INCLUDES #include #include +#include namespace Dali { class TestNativeImage; +class TestNativeImageNoExt; typedef IntrusivePtr TestNativeImagePointer; +typedef IntrusivePtr TestNativeImageNoExtPointer; class DALI_IMPORT_API TestNativeImageExtension: public Dali::NativeImageInterface::Extension { @@ -33,6 +36,8 @@ public: inline const char* GetCustomFragmentPreFix(){return "#extension GL_OES_EGL_image_external:require\n";} inline const char* GetCustomSamplerTypename(){return "samplerExternalOES";} + inline int GetEglImageTextureTarget(){return GL_TEXTURE_EXTERNAL_OES;} + }; class DALI_IMPORT_API TestNativeImage : public Dali::NativeImageInterface @@ -40,9 +45,10 @@ class DALI_IMPORT_API TestNativeImage : public Dali::NativeImageInterface public: static TestNativeImagePointer New(int width, int height); - inline virtual bool GlExtensionCreate() { ++mExtensionCreateCalls; return true;}; + inline void SetGlExtensionCreateResult(bool result){ createResult = result;} + inline virtual bool GlExtensionCreate() { ++mExtensionCreateCalls; return createResult;}; inline virtual void GlExtensionDestroy() { ++mExtensionDestroyCalls; }; - inline virtual GLenum TargetTexture() { ++mTargetTextureCalls; return 1;}; + inline virtual GLenum TargetTexture() { ++mTargetTextureCalls; return 0;}; inline virtual void PrepareTexture() {}; inline virtual unsigned int GetWidth() const {return mWidth;}; inline virtual unsigned int GetHeight() const {return mHeight;}; @@ -59,9 +65,39 @@ public: int mExtensionCreateCalls; int mExtensionDestroyCalls; int mTargetTextureCalls; + + bool createResult; TestNativeImageExtension* mExtension; }; + +class DALI_IMPORT_API TestNativeImageNoExt : public Dali::NativeImageInterface +{ +public: + static TestNativeImageNoExtPointer New(int width, int height); + + inline void SetGlExtensionCreateResult(bool result){ createResult = result;} + inline virtual bool GlExtensionCreate() { ++mExtensionCreateCalls; return createResult;}; + inline virtual void GlExtensionDestroy() { ++mExtensionDestroyCalls; }; + inline virtual GLenum TargetTexture() { ++mTargetTextureCalls; return 1;}; + inline virtual void PrepareTexture() {}; + inline virtual unsigned int GetWidth() const {return mWidth;}; + inline virtual unsigned int GetHeight() const {return mHeight;}; + inline virtual bool RequiresBlending() const {return true;}; + +private: + TestNativeImageNoExt(int width, int height); + virtual ~TestNativeImageNoExt(); + + int mWidth; + int mHeight; +public: + int mExtensionCreateCalls; + int mExtensionDestroyCalls; + int mTargetTextureCalls; + bool createResult; +}; + } // Dali #endif