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-graphics-command-buffer.h;h=b07166c1d149db0cabc41d074558491dd5102459;hp=b4cb9b00697a3a7cfad09f490580496a9cb0e5ba;hb=cc7c738325821be41979913e81fffb961656e0c0;hpb=f1876c34a8f667f79182fa8a772ee889e27290c1 diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.h b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.h index b4cb9b0..b07166c 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.h +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.h @@ -24,8 +24,8 @@ #include #include #include "test-gl-abstraction.h" -#include "test-graphics-pipeline.h" #include "test-graphics-buffer.h" +#include "test-graphics-pipeline.h" #include "test-trace-call-stack.h" namespace Dali @@ -37,16 +37,20 @@ class TestGraphicsPipeline; enum class CommandType { - FLUSH = 1 << 0, - BIND_TEXTURES = 1 << 1, - BIND_SAMPLERS = 1 << 2, - BIND_VERTEX_BUFFERS = 1 << 3, - BIND_INDEX_BUFFER = 1 << 4, - BIND_UNIFORM_BUFFER = 1 << 5, - BIND_PIPELINE = 1 << 6, - DRAW = 1 << 7, - DRAW_INDEXED = 1 << 8, - DRAW_INDEXED_INDIRECT = 1 << 9 + FLUSH = 1 << 0, + BIND_TEXTURES = 1 << 1, + BIND_SAMPLERS = 1 << 2, + BIND_VERTEX_BUFFERS = 1 << 3, + BIND_INDEX_BUFFER = 1 << 4, + BIND_UNIFORM_BUFFER = 1 << 5, + BIND_PIPELINE = 1 << 6, + DRAW = 1 << 7, + DRAW_INDEXED = 1 << 8, + DRAW_INDEXED_INDIRECT = 1 << 9, + SET_SCISSOR = 1 << 10, + SET_SCISSOR_TEST = 1 << 11, + SET_VIEWPORT = 1 << 12, + SET_VIEWPORT_TEST = 1 << 13 }; using CommandTypeMask = uint32_t; @@ -63,7 +67,7 @@ inline CommandTypeMask operator|(T flags, CommandType bit) struct VertexBufferBindingDescriptor { const TestGraphicsBuffer* buffer{nullptr}; - uint32_t offset{0u}; + uint32_t offset{0u}; }; /** @@ -73,8 +77,8 @@ struct VertexBufferBindingDescriptor struct IndexBufferBindingDescriptor { const TestGraphicsBuffer* buffer{nullptr}; - uint32_t offset{}; - Graphics::Format format{}; + uint32_t offset{}; + Graphics::Format format{}; }; /** @@ -84,9 +88,9 @@ struct IndexBufferBindingDescriptor struct UniformBufferBindingDescriptor { const TestGraphicsBuffer* buffer{nullptr}; - uint32_t binding{0u}; - uint32_t offset{0u}; - bool emulated; ///& bindings) override { - printf("BindUniformBuffers: bindings.size(): %lu\n", bindings.size()); - mCommands.emplace_back(); auto& cmd = mCommands.back(); cmd.type = CommandType::BIND_UNIFORM_BUFFER; @@ -433,7 +490,7 @@ public: void BindIndexBuffer(const Graphics::Buffer& buffer, uint32_t offset, - Graphics::Format format) override + Graphics::Format format) override { mCommands.emplace_back(); mCommands.back().type = CommandType::BIND_INDEX_BUFFER; @@ -444,8 +501,8 @@ public: } void BeginRenderPass( - Graphics::RenderPass& renderPass, - Graphics::RenderTarget& renderTarget, + Graphics::RenderPass& renderPass, + Graphics::RenderTarget& renderTarget, Graphics::Extent2D renderArea, std::vector clearValues) override { @@ -525,24 +582,56 @@ public: mCallStack.PushCall("Reset", ""); } - void SetScissor(Graphics::Extent2D value) override + void SetScissor(Graphics::Rect2D value) override { - mCallStack.PushCall("SetScissor", ""); + TraceCallStack::NamedParams params; + params["x"] << value.x; + params["y"] << value.y; + params["width"] << value.width; + params["height"] << value.height; + mCallStack.PushCall("SetScissor", params.str(), params); + + mCommands.emplace_back(); + mCommands.back().type = CommandType::SET_SCISSOR; + mCommands.back().scissor.region = value; } void SetScissorTestEnable(bool value) override { - mCallStack.PushCall("SetScissorTestEnable", ""); + TraceCallStack::NamedParams params; + params["value"] << (value ? "T" : "F"); + mCallStack.PushCall("SetScissorTestEnable", params.str(), params); + + mCommands.emplace_back(); + mCommands.back().type = CommandType::SET_SCISSOR_TEST; + mCommands.back().scissorTest.enable = value; } void SetViewport(Graphics::Viewport value) override { - mCallStack.PushCall("SetViewport", ""); + TraceCallStack::NamedParams params; + params["x"] << value.x; + params["y"] << value.y; + params["width"] << value.width; + params["height"] << value.height; + params["minDepth"] << value.minDepth; + params["maxDepth"] << value.maxDepth; + mCallStack.PushCall("SetViewport", params.str(), params); + + mCommands.emplace_back(); + mCommands.back().type = CommandType::SET_VIEWPORT; + mCommands.back().viewport.region = value; } void SetViewportEnable(bool value) override { - mCallStack.PushCall("SetViewportEnable", ""); + TraceCallStack::NamedParams params; + params["value"] << (value ? "T" : "F"); + mCallStack.PushCall("SetViewportEnable", params.str(), params); + + mCommands.emplace_back(); + mCommands.back().type = CommandType::SET_VIEWPORT_TEST; + mCommands.back().viewportTest.enable = value; } [[nodiscard]] const std::vector& GetCommands() const @@ -560,17 +649,17 @@ public: * Retrieves state resolve for selected draw call * @param drawCommandIndex */ - void GetStateForDrawCall( int drawCallIndex ); + void GetStateForDrawCall(int drawCallIndex); /** * Retrieves commands of specified type */ - std::vector GetCommandsByType( CommandTypeMask mask ); - + std::vector GetCommandsByType(CommandTypeMask mask); private: - TraceCallStack& mCallStack; - TestGlAbstraction& mGlAbstraction; + TraceCallStack& mCallStack; + TestGlAbstraction& mGlAbstraction; + std::vector mCommands; };