platform/core/uifw/dali-core.git
22 months agoMove message queue instead of copy 33/288733/3
Eunki, Hong [Wed, 22 Feb 2023 06:55:52 +0000 (15:55 +0900)]
Move message queue instead of copy

Minor optimzation for message queue

Change-Id: I214367f6c7a4cce33ce4b128119476bbaf912344
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoMerge "Fix surface deletion order issue" into devel/master
Heeyong Song [Thu, 23 Feb 2023 23:47:51 +0000 (23:47 +0000)]
Merge "Fix surface deletion order issue" into devel/master

22 months agoFix surface deletion order issue 49/288749/2
Heeyong Song [Wed, 22 Feb 2023 08:37:31 +0000 (17:37 +0900)]
Fix surface deletion order issue

Change-Id: I1fb3a2934ed6a36553421f002d6cc7821abc45dc

22 months agoDisable property notification when the object is deleted 05/288605/2
Heeyong Song [Mon, 20 Feb 2023 08:10:26 +0000 (17:10 +0900)]
Disable property notification when the object is deleted

Change-Id: Ief68d6cb246e75f9f9870f5285dc827b53ad2916

22 months agoMultiply only for Transform Matrix + NEON comment clean up 36/288536/8
Eunki Hong [Sat, 18 Feb 2023 07:05:50 +0000 (16:05 +0900)]
Multiply only for Transform Matrix + NEON comment clean up

If 4x4 matrix form as Transform, we can optimize matrix multiply function.
It will be reduce the time of Transform Update time.

Below are some test result.
1. VLD1.F32 each time is more faster than VLDM.
2. Transpose lhs -> multply -> transpose tmp is slower than current logic
3. "+r"(temp) at Output Operand is slower than "r"(temp) Intput Oprerand with "%r0"(why?)
 --> But when we make current Multiply with Output Operand as Input Operand, it makes slow down. (why?)

Change-Id: Ibc5e1c252ec200d356e649ed6448cd45b3a5d980
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
22 months agoMake new CameraActor creation API for 3D apps 91/288491/4
Eunki, Hong [Fri, 17 Feb 2023 06:38:05 +0000 (15:38 +0900)]
Make new CameraActor creation API for 3D apps

Default CameraActor's behavior is not helpful for formal 3D app side.
For example, 3D app don't care about "scene", but CameraActor::New()
change some properties by engine side automaticaly.

To make 3D app developer use CameraActor easly, make new API that fit
good to 3D cases.

Change-Id: Iaf2a792b0fd98cd31d2c655da61918133e211ff0
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoMerge changes I8783ad29,I2c860a84 into devel/master
Adeel Kazmi [Fri, 17 Feb 2023 17:56:14 +0000 (17:56 +0000)]
Merge changes I8783ad29,I2c860a84 into devel/master

* changes:
  Reducing message spam for baked properties
  AnimatableProperty Set/Bake now resets properly.

22 months agoDALi Version 2.2.14 17/288517/1 dali_2.2.14
David Steele [Fri, 17 Feb 2023 13:51:35 +0000 (13:51 +0000)]
DALi Version 2.2.14

Change-Id: I6fb3bfa9c42d075c90dceef9b65c9b1636197e4a

22 months agoReducing message spam for baked properties 08/288208/4
David Steele [Mon, 13 Feb 2023 23:07:01 +0000 (23:07 +0000)]
Reducing message spam for baked properties

Adding custom message to bake property and create
resetter in update side.

Switched resetters to use std::list for faster erasure.

Change-Id: I8783ad293458f97cce45ebe00b6ef47ac3aed8fb

22 months agoAnimatableProperty Set/Bake now resets properly. 76/287876/6
David Steele [Wed, 8 Feb 2023 14:46:36 +0000 (14:46 +0000)]
AnimatableProperty Set/Bake now resets properly.

If animatable properties are Set/Baked from event side, then the
dirty flag is never cleared. This is due to not having any
PropertyResetter or NodeResetter working.

It's not an issue for TransformProperties, as they have their own
reset system.

Added a BakerResetter to run the ResetToBaseValue() method for 1 or 2
frames, then will auto-age and die.

Changed all the messaging for baking/setting animatable properties to
also create and send the BakerResetter.

Currently, update doesn't run again even if there are new property
resetters outstanding. (Fine for constraint resetters, maybe not so
fine for new BakerResetters?)

To avoid cyclic dependencies, have also split the messages out into
their own headers (which should also help reduce compile time)

Added a test case to exercise Object internals for coverage - there
are some lowkey bugs in here. [Normally, we use derived methods to
link event side properties to scene-graph properties, here, we're
using untested code to access component scene-graph properties. If we
don't first generate the "parent" property, then the wrong type is
used to generate the component properties]. We could potentially
delete some of this code!!!

Signed-off-by: David Steele <david.steele@samsung.com>
Change-Id: I2c860a8416e71666fceb8d0b0d072c5c735655ad

22 months agoFix matrix multiply with quaternion bug in ARM 29/288329/3
Eunki, Hong [Wed, 15 Feb 2023 07:34:37 +0000 (16:34 +0900)]
Fix matrix multiply with quaternion bug in ARM

There was some bug when we try to use MatrixUtils::Multiply at
ARM devices. We fix it.

Change-Id: I976e03573cbafacbd30fce2b6e2ae73c89b50e83
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoMerge "Make sure that global variables are initialized lazily." into devel/master
David Steele [Mon, 13 Feb 2023 09:35:50 +0000 (09:35 +0000)]
Merge "Make sure that global variables are initialized lazily." into devel/master

22 months agoMerge "Optimize some matrix multiply for projection matrix + Orthographic reflection...
Eunki Hong [Mon, 13 Feb 2023 05:26:55 +0000 (05:26 +0000)]
Merge "Optimize some matrix multiply for projection matrix + Orthographic reflection" into devel/master

22 months agoMerge "Use Vector4 for the update area" into devel/master
Heeyong Song [Mon, 13 Feb 2023 00:24:39 +0000 (00:24 +0000)]
Merge "Use Vector4 for the update area" into devel/master

22 months agoMerge "Added rotation support to frame-callback" into devel/master
David Steele [Fri, 10 Feb 2023 16:18:38 +0000 (16:18 +0000)]
Merge "Added rotation support to frame-callback" into devel/master

22 months agoDALi Version 2.2.13 31/288131/1 dali_2.2.13
Adeel Kazmi [Fri, 10 Feb 2023 14:15:21 +0000 (14:15 +0000)]
DALi Version 2.2.13

Change-Id: I0f16ecea1504ac30e40304cbe05ab16169d3c2a0

22 months agoOptimize some matrix multiply for projection matrix + Orthographic reflection 66/287766/8
Eunki Hong [Sat, 4 Feb 2023 04:08:53 +0000 (13:08 +0900)]
Optimize some matrix multiply for projection matrix + Orthographic reflection

Let we use MatrixUtils::MultiplyProjectionMatrix for some internal API.

And also, make Orthographic camera can use reflection plane.

TODO : We should make MultiplyProjectionMatrix funtion as NEON.

Change-Id: Ifeff525ed96dc5ebdf280f794973ecbb8f4eb7ab
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
22 months agoMake sure that global variables are initialized lazily. 55/285155/3
huayong.xu [Wed, 7 Dec 2022 02:30:56 +0000 (10:30 +0800)]
Make sure that global variables are initialized lazily.

Global variables are initialized before main function or
when dali-core so is loaded firstly.
This would lengthen time of loading dali in some cases.
This patch is to make the variables be initialized lazily.

Change-Id: I2a8e27619d52ca60e28484bb4c5a8e74f1d20c27

22 months agoFix svace issue (uint32_t to long) 21/287821/2
Eunki, Hong [Tue, 7 Feb 2023 02:05:12 +0000 (11:05 +0900)]
Fix svace issue (uint32_t to long)

To convert unsigned value into signed value safely,
we should convert as unsigned type with same size as signed type,
and after done, convert into signed type.

Change-Id: I1ee541cff8851adf0e5512ccf0d7a6e00a865690
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoUse Vector4 for the update area 61/287661/2
Heeyong Song [Thu, 2 Feb 2023 04:41:10 +0000 (13:41 +0900)]
Use Vector4 for the update area

Change AnimatableProperty to Vector4 for Node::mUpdateAreaHint
because it is not an animatable property
And merge the rect if the previous area is not used yet

Change-Id: I40ebe9c87201e58cd09a15b3ad8202b865575324

22 months agoDALi Version 2.2.12 51/287751/1 dali_2.2.12
Adam Bialogonski [Fri, 3 Feb 2023 12:41:09 +0000 (12:41 +0000)]
DALi Version 2.2.12

Change-Id: I788175867c862f9a10afb132f859905869529e58

22 months agoAdded rotation support to frame-callback 92/287692/3
David Steele [Thu, 2 Feb 2023 10:31:15 +0000 (10:31 +0000)]
Added rotation support to frame-callback

Change-Id: Ib4e4da48645bcac86bb4b7563057ce104c40ae2e

22 months agoMerge "Make dirtyrect use map container instead of vector" into devel/master
Eunki Hong [Thu, 2 Feb 2023 04:39:00 +0000 (04:39 +0000)]
Merge "Make dirtyrect use map container instead of vector" into devel/master

22 months agoDo not register processor when registering singleton 00/287600/1
Heeyong Song [Wed, 1 Feb 2023 06:54:08 +0000 (15:54 +0900)]
Do not register processor when registering singleton

Change-Id: I31353cf1d513a40f82def9a5f0de3540b88c34dc

22 months agoMake dirtyrect use map container instead of vector 80/286080/11
Eunki, Hong [Tue, 27 Dec 2022 08:35:14 +0000 (17:35 +0900)]
Make dirtyrect use map container instead of vector

Since we don't need to keep the order of dirtyrect now,
let we just use unordered_map to control dirtyrect items.

And also, let we change all UTC doesn't consider ther order of
damaged rect

Change-Id: I3aeb0eb0d1b7ff9b66c91ff149a6eba5d235ca5c
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoMerge "Reorder node's children only required case." into devel/master
David Steele [Mon, 30 Jan 2023 15:12:36 +0000 (15:12 +0000)]
Merge "Reorder node's children only required case." into devel/master

22 months agoMerge "Fix minor coverity issue" into devel/master
Eunki Hong [Mon, 30 Jan 2023 12:55:34 +0000 (12:55 +0000)]
Merge "Fix minor coverity issue" into devel/master

22 months agoFix minor coverity issue 77/287477/1
Eunki, Hong [Mon, 30 Jan 2023 11:40:56 +0000 (20:40 +0900)]
Fix minor coverity issue

Change-Id: I82a36d80b977057ad381f8651ed18845ed16d360
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months ago(Automated Tests) Ensure we kill off any sleeping dbus sessions that we create when... 88/287188/2
Adeel Kazmi [Mon, 23 Jan 2023 18:08:58 +0000 (18:08 +0000)]
(Automated Tests) Ensure we kill off any sleeping dbus sessions that we create when running

Change-Id: Iac299a0ea3f57505fdb0e906d22a38f0a21946f4

22 months agoReorder node's children only required case. 33/286133/9
Eunki, Hong [Wed, 28 Dec 2022 12:33:23 +0000 (21:33 +0900)]
Reorder node's children only required case.

If all of my children's depth index didn't changed,
we don't need to re-sort this sorted node value.

This patch add the flag of children-reorder, and
sort it only if my direct children's depth index changed.

Change-Id: I349aa50337b750504056ac0d57896e896cd9c32e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
22 months agoMerge "Cleanup .gitignore file" into devel/master
Eunki Hong [Mon, 30 Jan 2023 02:27:06 +0000 (02:27 +0000)]
Merge "Cleanup .gitignore file" into devel/master

23 months agoDALi Version 2.2.11 98/287398/1 dali_2.2.11
Richard Huang [Fri, 27 Jan 2023 12:19:12 +0000 (12:19 +0000)]
DALi Version 2.2.11

Change-Id: I4c5405a44be8f9dc4d646da64e147ee19500423d

23 months agoCleanup .gitignore file 43/287243/1
Eunki Hong [Wed, 25 Jan 2023 15:49:48 +0000 (00:49 +0900)]
Cleanup .gitignore file

Collect, merge and clean up .gitignore file for all dali repos

Change-Id: Ide3219c1c02de8d7a85952db1e0f48eb0611b67e
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
23 months agoFix error of overlay layer 24/287224/1
seungho baek [Wed, 25 Jan 2023 04:59:37 +0000 (13:59 +0900)]
Fix error of overlay layer

Change-Id: Iab39bd723d30b088dbdf8dbfe78816ca6652919f
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
23 months agoMerge changes Ibfc625f5,I26bd5ff5,I255b92f4,I0eff1efe,Id7827d1b, ... into devel/master
David Steele [Mon, 23 Jan 2023 14:58:47 +0000 (14:58 +0000)]
Merge changes Ibfc625f5,I26bd5ff5,I255b92f4,I0eff1efe,Id7827d1b, ... into devel/master

* changes:
  Changed Render::Renderer to use MemoryPoolAllocator
  Migrated Render::Texture to use memory pool
  Changed RenderItem* to RenderItemKey
  Memory pool key uses ptr in 32bit mode
  Changed keys from raw int to templated class
  Convert Renderer ptrs to 32 bit keys
  Changed DiscardQueue to templated class

23 months agoChanged Render::Renderer to use MemoryPoolAllocator 78/286778/6
David Steele [Thu, 12 Jan 2023 18:50:00 +0000 (18:50 +0000)]
Changed Render::Renderer to use MemoryPoolAllocator

Changing the Renderer to use the pool allocator means:
ptrs to the renderer can utilize 32bit key instead of
64bit ptr.

Change-Id: Ibfc625f5f929bc1836ff50ee8b1fa1ebfe5d59ec
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoMigrated Render::Texture to use memory pool 77/286777/6
David Steele [Thu, 12 Jan 2023 16:18:02 +0000 (16:18 +0000)]
Migrated Render::Texture to use memory pool

Changing Render::Texture to use memory pool enables
use of 32bit keys instead of 64bit ptrs in general
stores (Internal::Texture, SceneGraph::TextureSet, RenderManager)
and messaging.

Change-Id: I26bd5ff57ad7d8c034fdb51b6c9a869635ed8849
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoChanged RenderItem* to RenderItemKey 72/286472/8
David Steele [Fri, 6 Jan 2023 16:41:53 +0000 (16:41 +0000)]
Changed RenderItem* to RenderItemKey

Change-Id: I255b92f4f7e35209cdbe28d10bd3f2bc991bf843
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoMemory pool key uses ptr in 32bit mode 32/285432/10
David Steele [Mon, 12 Dec 2022 17:38:27 +0000 (17:38 +0000)]
Memory pool key uses ptr in 32bit mode

When compiled for a 32bit architecture, memory pool keys are
functionally identical to ptrs, and don't require any lookup or
comparison.

Have removed int32_t comparison operators and made the INVALID const
private. Added nullptr comparison operator to ensure that the keys can
be compared against nullptr, or utilize the boolean operator to check
for validity. (An int32_t key of 0 is valid in 64 bit mode)

Change-Id: I0eff1efede539e02c330ab601b10f018fcebeafd

23 months agoChanged keys from raw int to templated class 05/284605/15
David Steele [Wed, 30 Nov 2022 11:27:55 +0000 (11:27 +0000)]
Changed keys from raw int to templated class

MemoryPoolKey<Type> template has indirection operator
to enable simpler code at the point of use.

Updated FixedSizeMemoryPool to deduce mask and bitshift
values from max block count. Enabled for MemoryPool, so
that 32 bit keys can be used.

Added handling to switch key semantics between limited /
unlimited blocks. In the normal case, the block count is
limited, and the maximum block size is 1M entries, so
a block id range of 0-31 is sufficient. In the other case,
the block count is unlimited, so the key is the Nth item
in the memory pool across all blocks. Whilst this may be slower
to dereference, in practice, this mode isn't used.

Change-Id: Id7827d1beded831307b12ce8a3ef46e32366f82b

23 months agoDALi Version 2.2.10 55/287155/1 dali_2.2.10
David Steele [Fri, 20 Jan 2023 13:09:56 +0000 (13:09 +0000)]
DALi Version 2.2.10

Change-Id: I4cd614701a5d01db5afb6197ec4475aea6fc26c0

23 months agoMerge "Updating Test Harness to show wait channel" into devel/master
David Steele [Thu, 19 Jan 2023 14:33:32 +0000 (14:33 +0000)]
Merge "Updating Test Harness to show wait channel" into devel/master

23 months agoUpdating Test Harness to show wait channel 24/287024/3
David Steele [Wed, 18 Jan 2023 15:19:04 +0000 (15:19 +0000)]
Updating Test Harness to show wait channel

If, during parallel execution, a child test case is pending for a
minute, then display the wait channel symbol, and kill the process.

Change-Id: I5605cc563729ac4d65a16be9354faeed2788bf42
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoAssert when proprety notification is used in a thread other than the main thread 05/287005/2
Heeyong Song [Wed, 18 Jan 2023 06:46:16 +0000 (15:46 +0900)]
Assert when proprety notification is used in a thread other than the main thread

Change-Id: I9b2f6c1f70327c5289f1e9476d48876d5ecd762b

23 months agoConvert Renderer ptrs to 32 bit keys 69/284269/10
David Steele [Fri, 21 Oct 2022 11:10:35 +0000 (12:10 +0100)]
Convert Renderer ptrs to 32 bit keys

Change-Id: I9ac5971cd768da552c188909771a12b437e11435

23 months agoChanged DiscardQueue to templated class 68/284268/9
David Steele [Thu, 10 Nov 2022 12:02:43 +0000 (12:02 +0000)]
Changed DiscardQueue to templated class

Instead of having 1 discard queue for everything,
switched it out to a templated type that can work
on std containers.

Change-Id: Ie26d8c7ddece01ae8feeebfd27de9e73d9a9c9c4
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoAdd Overlay Layer in scene 75/286475/11
seungho baek [Mon, 9 Jan 2023 01:23:21 +0000 (10:23 +0900)]
Add Overlay Layer in scene

Change-Id: I65447d7ace9e13f528f244234e139e3e9682291b
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
23 months agoMerge "DALi Version 2.2.9" into devel/master
Adeel Kazmi [Fri, 13 Jan 2023 10:00:34 +0000 (10:00 +0000)]
Merge "DALi Version 2.2.9" into devel/master

23 months agoDALi Version 2.2.9 27/286827/1 dali_2.2.9
Adeel Kazmi [Fri, 13 Jan 2023 09:55:55 +0000 (09:55 +0000)]
DALi Version 2.2.9

Change-Id: I26fdccbff49e99f2ea8bf4839407db436a7afc2d

23 months agoMake assertion when SetParent is not called on the main thread 77/286077/4
Heeyong Song [Tue, 27 Dec 2022 07:06:52 +0000 (16:06 +0900)]
Make assertion when SetParent is not called on the main thread

Change-Id: Ia224a99b7760f2ab2ec6e19700faa2e84091ce1a

23 months agoRemoving shader uniform map observers 56/286556/2
David Steele [Mon, 9 Jan 2023 15:34:49 +0000 (15:34 +0000)]
Removing shader uniform map observers

Many renderers use few shaders. Currently, there is an observer list
in Shader's uniform map to inform Renderer to update it's collective
uniform map when it's updated.

In practice, shader uniforms are rare (Especially in visuals, with the
exception of PrimitiveVisual, which isn't really used much), so we
are paying the price (an array of observers) for something un-necessary.

Instead, we can change Renderer to store the last known change counter
for it's attached shader. If the shader's uniform map changes, then we
can detect this during PrepareRender, prior to rendering, by testing
the change counter.

We can therefore fully remove the uniform map observer list, improving
memory consumption and speeding up renderer creation time.

Change-Id: I96b9b5c4f7b21fda9593dc1f89f580e7ceb4513c
Signed-off-by: David Steele <david.steele@samsung.com>
23 months agoMerge "DALi Version 2.2.8" into devel/master
David Steele [Fri, 6 Jan 2023 13:19:06 +0000 (13:19 +0000)]
Merge "DALi Version 2.2.8" into devel/master

23 months agoDALi Version 2.2.8 57/286457/1 dali_2.2.8
Adam Bialogonski [Fri, 6 Jan 2023 10:49:36 +0000 (10:49 +0000)]
DALi Version 2.2.8

Change-Id: I8f1f479086ce058957a17e90c2beb1740e7de60c

23 months agoMerge "Reduce Render::Renderer size" into devel/master
Heeyong Song [Fri, 6 Jan 2023 02:22:48 +0000 (02:22 +0000)]
Merge "Reduce Render::Renderer size" into devel/master

23 months agoMerge "Remove object pointer from SceneGraph::PropertyNotification" into devel/master
Heeyong Song [Fri, 6 Jan 2023 02:22:09 +0000 (02:22 +0000)]
Merge "Remove object pointer from SceneGraph::PropertyNotification" into devel/master

23 months agoMerge "Fix the screen rotation issue" into devel/master
Wonsik Jung [Thu, 5 Jan 2023 05:06:37 +0000 (05:06 +0000)]
Merge "Fix the screen rotation issue" into devel/master

23 months agoFix the screen rotation issue 63/286263/2
Wonsik Jung [Tue, 3 Jan 2023 03:09:13 +0000 (12:09 +0900)]
Fix the screen rotation issue

Fix the screen rotation issue in FHub Device.
When glViewport/glScissor is set, the screen rotation should be considered.

Change-Id: I660545a3b3b0fa8e5464dfb613a3d983be2e04b7

23 months agoMerge "Fix to do not use GetCurrentSize in actor-sizer" into devel/master
Seungho BAEK [Wed, 4 Jan 2023 02:07:50 +0000 (02:07 +0000)]
Merge "Fix to do not use GetCurrentSize in actor-sizer" into devel/master

23 months agoMerge "Move VisualRenderer properties definition in SceneGraph side." into devel...
Eunki Hong [Mon, 2 Jan 2023 18:50:54 +0000 (18:50 +0000)]
Merge "Move VisualRenderer properties definition in SceneGraph side." into devel/master

23 months agoTrace use scope macro instead of begin-end 73/286173/1
Eunki Hong [Thu, 29 Dec 2022 15:45:29 +0000 (00:45 +0900)]
Trace use scope macro instead of begin-end

Since we don't need to follow functions usecase,
use trace scope macro instead of begin-end.

Change-Id: I958cb1d97089cafeac507613068b1c574c3ebb0e
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 years agoReduce Render::Renderer size 94/286094/1
Heeyong Song [Wed, 28 Dec 2022 01:01:13 +0000 (10:01 +0900)]
Reduce Render::Renderer size

Allocate RenderCallbackInput when needed

Change-Id: I376a2dede159457b1887ce28d2dfa5126b30f4a7

2 years agoRemove object pointer from SceneGraph::PropertyNotification 62/286062/1
Heeyong Song [Tue, 27 Dec 2022 03:27:56 +0000 (12:27 +0900)]
Remove object pointer from SceneGraph::PropertyNotification

Change-Id: I4cc0912d36e7ff3c39e6b48fecc030432947137f

2 years agoDALi Version 2.2.7 85/285985/1 dali_2.2.7
Adeel Kazmi [Fri, 23 Dec 2022 11:34:37 +0000 (11:34 +0000)]
DALi Version 2.2.7

Change-Id: I11776a8dc1e60dd4ee63a8aded537e56231a2791

2 years agoFix to do not use GetCurrentSize in actor-sizer 66/285966/4
seungho baek [Fri, 23 Dec 2022 07:40:31 +0000 (16:40 +0900)]
Fix to do not use GetCurrentSize in actor-sizer

Change-Id: I75c0502a33dcb67e90092b1a8a92e9cf9f6bbe37
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
2 years agoMove VisualRenderer properties definition in SceneGraph side. 61/285961/2
Eunki, Hong [Fri, 23 Dec 2022 06:37:18 +0000 (15:37 +0900)]
Move VisualRenderer properties definition in SceneGraph side.

Move definition of VisualRenderer used properties SceneGraph::VisualRenderer::~~~.

Now sizeof(SceneGraph::Renderer) reduced from 328 --> 272

Change-Id: Ia943c6c09f8b7185ebbb4b5138ad02d1828634ce
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoDo not block during process message queue 61/285861/4
Eunki Hong [Wed, 21 Dec 2022 12:03:26 +0000 (21:03 +0900)]
Do not block during process message queue

We don't need to block update thread during
whole message Process works.

Follow as NotificationManager::ProcessMessages()

Change-Id: I04549bcd91f426d5c98dc159a01f0ec7be950f5f
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 years agoRemove annoying logs when we use astc image file 38/285938/1
Eunki, Hong [Thu, 22 Dec 2022 11:57:25 +0000 (20:57 +0900)]
Remove annoying logs when we use astc image file

We don't use bpp value when we don't use sub pixeldata.
Move that code into what it used.

Change-Id: I771318ec96e0da9ba0ce565d0a8cca52a47ed2f6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoAdd trace log to NotificationManager::ProcessMessages 56/285856/1
Heeyong Song [Wed, 21 Dec 2022 09:13:50 +0000 (18:13 +0900)]
Add trace log to NotificationManager::ProcessMessages

Change-Id: I8a7d3080087ef29448e3ac4b9ce333ce93e08e99

2 years agoAdd Renderer::BlendMode::USE_ACTOR_OPACITY 03/285403/10
seungho baek [Mon, 12 Dec 2022 08:00:52 +0000 (17:00 +0900)]
Add Renderer::BlendMode::USE_ACTOR_OPACITY

 - This option make the renderer opaque only when its Actor::Color is opaque.

Change-Id: I931b54bd42d83aa8460a9e6ee932f3511cf19401
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
2 years agoMerge "Reduce GetCurrentSize call time" into devel/master
Eunki Hong [Mon, 19 Dec 2022 19:10:10 +0000 (19:10 +0000)]
Merge "Reduce GetCurrentSize call time" into devel/master

2 years agoMerge "Sync UTC harness" into devel/master
David Steele [Mon, 19 Dec 2022 18:55:26 +0000 (18:55 +0000)]
Merge "Sync UTC harness" into devel/master

2 years agoReduce GetCurrentSize call time 38/285738/2
Eunki, Hong [Mon, 19 Dec 2022 06:59:13 +0000 (15:59 +0900)]
Reduce GetCurrentSize call time

Call mOwner.GetCurrentSize() only if we use it

Change-Id: I1a22b4d86ad97856a14aa367f1b3d4b62b7e31bf
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoFix transform matrix in case child actor didn't inherit some of its parent's transforms. 74/285174/7
seungho baek [Wed, 7 Dec 2022 07:28:03 +0000 (16:28 +0900)]
Fix transform matrix in case child actor didn't inherit some of its parent's transforms.

Change-Id: Ib711eae4ca1a33872927a54e04c8228aabc1d256
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
2 years agoAdd trace log to FrameCallbackProcessor::Update 16/285716/2
Heeyong Song [Mon, 19 Dec 2022 01:59:45 +0000 (10:59 +0900)]
Add trace log to FrameCallbackProcessor::Update

Change-Id: I68f66b12400082d477518d6376c37ed53f144b4a

2 years agoChange DebugPriority name and Debug priority 11/285611/4
Heeyong Song [Thu, 15 Dec 2022 09:09:41 +0000 (18:09 +0900)]
Change DebugPriority name and Debug priority

Change-Id: I01dc0b22802a66b51d4ad3fb338b270c7d810142

2 years agoMerge "DALi Version 2.2.6" into devel/master
Adeel Kazmi [Fri, 16 Dec 2022 12:35:23 +0000 (12:35 +0000)]
Merge "DALi Version 2.2.6" into devel/master

2 years agoDALi Version 2.2.6 88/285688/1 dali_2.2.6
David Steele [Fri, 16 Dec 2022 12:12:38 +0000 (12:12 +0000)]
DALi Version 2.2.6

Change-Id: Ic92bbd0dbf8c066f667173312a1a9b68dd78e954

2 years agoMerge "Added memory pool logging" into devel/master
Adeel Kazmi [Fri, 16 Dec 2022 11:45:52 +0000 (11:45 +0000)]
Merge "Added memory pool logging" into devel/master

2 years agoAdded memory pool logging 98/285298/5
David Steele [Thu, 22 Sep 2022 10:04:26 +0000 (11:04 +0100)]
Added memory pool logging

Added methods to fetch the current capacity of memory pools
Added a method to Core to dump the capacities to the log output
(This is triggered by setting DALI_MEMORY_POOL_INTERVAL to a non-zero
value)

Added logging to PixelData to log individual allocations (By setting
DALI_LOG_PIXEL_DATA_SIZE to "1" or higher and enabling debug).

Added method to PixelData to log total allocation (By setting
DALI_OBJECT_PROFILER_INTERVAL to a non-zero value and enabling debug).

Change-Id: I45220005a652ca978ea552dd93564bedad784ba7

2 years agoMerge "Reducing Node struct size" into devel/master
David Steele [Fri, 16 Dec 2022 11:03:15 +0000 (11:03 +0000)]
Merge "Reducing Node struct size" into devel/master

2 years agoReducing Node struct size 26/285626/3
David Steele [Thu, 15 Dec 2022 10:50:11 +0000 (10:50 +0000)]
Reducing Node struct size

Removed ptr to transform manager data from templated
transform manager properties - replaced with compile
time offset to the data, so the ptr can be computed
quickly.

Added macros to make the template code simpler.

Change-Id: I3b94bcf3cf886b7477fc540d377efd6df605c94d

2 years ago(Partial Update) Remove unnecessary data 07/285607/1
Heeyong Song [Thu, 15 Dec 2022 08:15:21 +0000 (17:15 +0900)]
(Partial Update) Remove unnecessary data

Change-Id: I2132b9cff9e04a377784e81e5482e49d2f16fe15

2 years ago(Partial Update) Fix the issue when we have several RenderTasks 75/285575/2
Heeyong Song [Tue, 13 Dec 2022 06:00:32 +0000 (15:00 +0900)]
(Partial Update) Fix the issue when we have several RenderTasks

They may render on the off-screen buffer or the camera position may be moved.
Do not break the damaged rect calculation in the cases

Change-Id: Ie36922355bf979c5961bb9e7c12cde44a5644116

2 years agoSync UTC harness 73/285373/1
Eunki, Hong [Fri, 9 Dec 2022 14:10:28 +0000 (23:10 +0900)]
Sync UTC harness

Change-Id: I55204fa777d47c342bef9fb80eab887d4fd9bd0e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoMerge "DALi Version 2.2.5" into devel/master
Adeel Kazmi [Fri, 9 Dec 2022 11:24:29 +0000 (11:24 +0000)]
Merge "DALi Version 2.2.5" into devel/master

2 years agoDALi Version 2.2.5 58/285358/1 dali_2.2.5
Richard Huang [Fri, 9 Dec 2022 11:13:57 +0000 (11:13 +0000)]
DALi Version 2.2.5

Change-Id: I8d363182fdc3d6e028e3484aac0aae775e36e81a

2 years agoFix partial update issues 61/284761/7
Heeyong Song [Fri, 25 Nov 2022 06:36:00 +0000 (15:36 +0900)]
Fix partial update issues

Try to reuse RenderItems of the default root layer

Handle below cases for partial update
- One actor has multiple renderers
- One renderer is used by multiple actors
- Update uniform hash every frame

Change-Id: Iac12c5e00f9eb3fc507bbd4d15560f39f13b3061

2 years agoRefactoring node partial update cache 66/285066/3
David Steele [Mon, 5 Dec 2022 17:48:45 +0000 (17:48 +0000)]
Refactoring node partial update cache

Removing a level of inheritance, moving struct to node
Removed 1 buffer's worth of data, keep only last frame's data.
Instead, compute hash of node data and store that.

Cleaned up other data-provider structs and headers

Change-Id: I7b1033f37d0f22349f9c9cf0488feab28d63036b

2 years agoDALi Version 2.2.4 05/285005/1 dali_2.2.4
Adam Bialogonski [Fri, 2 Dec 2022 10:24:02 +0000 (10:24 +0000)]
DALi Version 2.2.4

Change-Id: I1266608b9f75391a447681fa3c0ca46c062d6644

2 years agoMerge "Minor coverity issue fixes" into devel/master
Eunki Hong [Thu, 1 Dec 2022 11:14:01 +0000 (11:14 +0000)]
Merge "Minor coverity issue fixes" into devel/master

2 years agoAdd MultiSampling FrameBuffer implement. 13/284213/8
Eunki, Hong [Fri, 11 Nov 2022 13:39:21 +0000 (22:39 +0900)]
Add MultiSampling FrameBuffer implement.

Let we allow to call FramebufferTexture2DMultisample if possible.

Change-Id: I4874ad78dfe1e468b5571ba4bc0112e7f710f492
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoMinor coverity issue fixes 10/282610/17
Eunki, Hong [Thu, 6 Oct 2022 10:49:02 +0000 (19:49 +0900)]
Minor coverity issue fixes

Fix some minor coverity issues that might has meanful

1. Implement missing move operation.
2. Remove float equal checks by ==, != operator.
3. Remove useless std::move.
4. Resolve type missed operator (use enum BufferState as bool)
5. Remove virtual operation in Constructor/Destructor.
6. Use referenced iterator so we don't copy value.
7. Remove cyclic header include (a.k.a render-task-list-impl.h -> render-task-impl.h -> render-task-list-impl.h)

Change-Id: If01bd4df71f0bc661a9fda10e668204cd35301ad
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoDALi Version 2.2.3 67/284767/1 dali_2.2.3
Richard Huang [Fri, 25 Nov 2022 11:06:29 +0000 (11:06 +0000)]
DALi Version 2.2.3

Change-Id: Iad5fe97118bf4b4bd6bcd54ce04b7f867d3b9d9e

2 years agoDALi Version 2.2.2 45/284545/1 dali_2.2.2
David Steele [Fri, 18 Nov 2022 11:49:38 +0000 (11:49 +0000)]
DALi Version 2.2.2

Change-Id: If912d17446af50ed6a3a33bebf093baa5260e841

2 years agoMerge "Deprecate Plane Distance setter + Implement OrthographicSize + Animatable...
Eunki Hong [Wed, 16 Nov 2022 08:09:03 +0000 (08:09 +0000)]
Merge "Deprecate Plane Distance setter + Implement OrthographicSize + Animatable AspectRatio" into devel/master

2 years agoMerge "Fix typo error" into devel/master
Eunki Hong [Wed, 16 Nov 2022 04:00:39 +0000 (04:00 +0000)]
Merge "Fix typo error" into devel/master

2 years agoDeprecate Plane Distance setter + Implement OrthographicSize + Animatable AspectRatio 15/283315/14
Eunki, Hong [Mon, 24 Oct 2022 06:04:28 +0000 (15:04 +0900)]
Deprecate Plane Distance setter + Implement OrthographicSize + Animatable AspectRatio

Deprecate API s.t Left/Right/Top/Bottom value setter directly.
Instead of these things, let we use OrthographicSize.
It will make that each plane distnaces symmetric so that center of camera.

Due to we can disconnect dependency of plane distance parameters,
now we can make AspectRatio animatable.

Change-Id: I7e18af1871d1efc805c11e2f6b7f12d0ee47d47a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years agoFix typo error 03/284303/1
Eunki, Hong [Tue, 15 Nov 2022 06:52:20 +0000 (15:52 +0900)]
Fix typo error

Maybe is this typo error?

Change-Id: I450bd5ec74252f0c59616110aeb3f9b55b05d0e9
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 years ago(DR) Fix texture binding 87/278987/4
Heeyong Song [Fri, 29 Jul 2022 02:35:32 +0000 (11:35 +0900)]
(DR) Fix texture binding

Change-Id: Idc56257d5864962facd7dc33628b24167ff0598b

2 years agoEnable Trace Filter with 0/1 37/284237/2
Heeyong Song [Mon, 14 Nov 2022 06:14:29 +0000 (15:14 +0900)]
Enable Trace Filter with 0/1

Change-Id: Ibe5ac416fff314fbb4a54b648df60763e5233533