X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=dali%2Finternal%2Frender%2Fcommon%2Frender-instruction.cpp;h=f42041f64f21d9a9e6ab0302670f337eb02272a7;hb=c8e0d2807617b0ba441ae67e735512bf6f3c1c68;hp=e9709b58a00dc480c81405a31e87e1f0f1543a32;hpb=c4f781ff1251d8273252e10db19cf6d3d8bee187;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/render/common/render-instruction.cpp b/dali/internal/render/common/render-instruction.cpp index e9709b5..f42041f 100644 --- a/dali/internal/render/common/render-instruction.cpp +++ b/dali/internal/render/common/render-instruction.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 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. @@ -43,9 +43,7 @@ RenderInstruction::RenderInstruction() mRenderLists.Reserve(6); } -RenderInstruction::~RenderInstruction() -{ // pointer container releases the renderlists -} +RenderInstruction::~RenderInstruction() = default; RenderList& RenderInstruction::GetNextFreeRenderList(size_t capacityRequired) { @@ -127,6 +125,20 @@ void RenderInstruction::Reset(Camera* camera, } } +std::size_t RenderInstruction::GetCapacity() +{ + std::size_t capacity{0u}; + RenderListContainer::Iterator iter = mRenderLists.Begin(); + RenderListContainer::ConstIterator end = mRenderLists.End(); + for(; iter != end; ++iter) + { + capacity += ((*iter)->GetCachedItemCount() * (sizeof(RenderItem) + sizeof(RenderItem*))); + capacity += sizeof(RenderList); + } + capacity += sizeof(RenderInstruction); + return capacity; +} + } // namespace SceneGraph } // namespace Internal