X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftest-graphics-command-buffer.h;h=84480ef83d14593f9e671a1bc4aa2a5767f50d51;hb=9731122533e44641f701b3624a6cb8f3e73d3800;hp=96b00217b28290c37f5b5a7e68a71f2d36289247;hpb=68c18cf776be4010ffa0a70209deb465a21a269c;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git 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 96b0021..84480ef 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 @@ -2,7 +2,7 @@ #define DALI_TEST_GRAPHICS_COMMAND_BUFFER_H /* - * Copyright (c) 2022 Samsung Electronics Co., Ltd. + * Copyright (c) 2023 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. @@ -65,6 +65,7 @@ enum class CommandType SET_DEPTH_COMPARE_OP = 1 << 24, SET_DEPTH_TEST_ENABLE = 1 << 25, SET_DEPTH_WRITE_ENABLE = 1 << 26, + DRAW_NATIVE = 1 << 27, }; std::ostream& operator<<(std::ostream& os, Graphics::StencilOp op); @@ -123,7 +124,8 @@ struct DrawCallDescriptor { DRAW, DRAW_INDEXED, - DRAW_INDEXED_INDIRECT + DRAW_INDEXED_INDIRECT, + DRAW_NATIVE }; Type type{}; ///< Type of the draw call @@ -166,6 +168,11 @@ struct DrawCallDescriptor uint32_t drawCount; uint32_t stride; } drawIndexedIndirect; + + struct + { + Graphics::DrawNativeInfo drawNativeInfo; + } drawNative; }; }; @@ -265,6 +272,12 @@ struct Command data.bindUniformBuffers = rhs.data.bindUniformBuffers; break; } + case CommandType::DRAW_NATIVE: + { + data.draw.type = rhs.data.draw.type; + data.draw.drawNative = rhs.data.draw.drawNative; + break; + } case CommandType::DRAW: { data.draw.type = rhs.data.draw.type; @@ -418,6 +431,12 @@ struct Command data.bindPipeline = rhs.data.bindPipeline; break; } + case CommandType::DRAW_NATIVE: + { + data.draw.type = rhs.data.draw.type; + data.draw.drawNative = rhs.data.draw.drawNative; + break; + } case CommandType::DRAW: { data.draw.type = rhs.data.draw.type; @@ -800,6 +819,16 @@ public: mCallStack.PushCall("ExecuteCommandBuffers", ""); } + void DrawNative(const Graphics::DrawNativeInfo* drawInfo) + { + mCommands.emplace_back(); + mCommands.back().type = CommandType::DRAW_NATIVE; + auto& cmd = mCommands.back().data.draw; + cmd.type = DrawCallDescriptor::Type::DRAW_NATIVE; + cmd.drawNative.drawNativeInfo = *drawInfo; + mCallStack.PushCall("DrawNative", ""); + } + void Draw( uint32_t vertexCount, uint32_t instanceCount, @@ -814,7 +843,12 @@ public: cmd.draw.instanceCount = instanceCount; cmd.draw.firstInstance = firstInstance; cmd.draw.firstVertex = firstVertex; - mCallStack.PushCall("Draw", ""); + TraceCallStack::NamedParams namedParams; + namedParams["vertexCount"] << vertexCount; + namedParams["instanceCount"] << instanceCount; + namedParams["firstInstance"] << firstInstance; + namedParams["firstVertex"] << firstVertex; + mCallStack.PushCall("Draw", namedParams.str(), namedParams); } void DrawIndexed( @@ -833,7 +867,13 @@ public: cmd.drawIndexed.indexCount = indexCount; cmd.drawIndexed.vertexOffset = vertexOffset; cmd.drawIndexed.instanceCount = instanceCount; - mCallStack.PushCall("DrawIndexed", ""); + TraceCallStack::NamedParams namedParams; + namedParams["firstIndex"] << firstIndex; + namedParams["firstInstance"] << firstInstance; + namedParams["indexCount"] << indexCount; + namedParams["vertexOffset"] << vertexOffset; + namedParams["instanceCount"] << instanceCount; + mCallStack.PushCall("DrawIndexed", namedParams.str(), namedParams); } void DrawIndexedIndirect( @@ -850,7 +890,11 @@ public: cmd.drawIndexedIndirect.offset = offset; cmd.drawIndexedIndirect.drawCount = drawCount; cmd.drawIndexedIndirect.stride = stride; - mCallStack.PushCall("DrawIndexedIndirect", ""); + TraceCallStack::NamedParams namedParams; + namedParams["offset"] << offset; + namedParams["drawCount"] << drawCount; + namedParams["stride"] << stride; + mCallStack.PushCall("DrawIndexedIndirect", namedParams.str(), namedParams); } void Reset() override