platform/core/uifw/dali-core.git
3 years agoConverted GPU buffers for geometry to new API 20/253120/5
David Steele [Wed, 27 Jan 2021 23:29:45 +0000 (23:29 +0000)]
Converted GPU buffers for geometry to new API

Added test code and traces to ensure gl behaviour can be followed.

Existing buffer test cases pass.

Change-Id: I53ebd874c708fc44b9d1d4484f0cea29b9e60a27

3 years agoMigrating render-texture and render-sampler to new API 80/252980/8
David Steele [Tue, 19 Jan 2021 16:03:30 +0000 (16:03 +0000)]
Migrating render-texture and render-sampler to new API

Implementation of CommandBuffer::BindTextures &
Controller::SubmitCommandBuffers to handle binding textures
before drawing.

Upgrading test harness to allow traced calls to be logged.

Added first pass of TestGraphicsController with enough setup to
emulate textures using the GlAbstraction.

Added test-graphics-samplers.

All gl tests are now passing, w/exception of GenerateMipmaps, which
has been commented out.

Change-Id: I08050f1e9784fa9e73b3a2959f304c4187babddc

3 years agoAdded custom deleter for graphics types 31/253231/5
Adam Bialogonski [Mon, 8 Feb 2021 15:48:40 +0000 (15:48 +0000)]
Added custom deleter for graphics types

Change-Id: Ic4718808048f874f489e91b73661c430e43f7c20

3 years agoMerge branch 'devel/master' into devel/graphics 10/253310/1
Adeel Kazmi [Mon, 8 Feb 2021 17:50:00 +0000 (17:50 +0000)]
Merge branch 'devel/master' into devel/graphics

Change-Id: I1de1d81b5d76d785c86466e5c15f28eb70480b3e

3 years agoDALi Version 2.0.12 03/253203/1 dali_2.0.12
Richard Huang [Fri, 5 Feb 2021 11:58:09 +0000 (11:58 +0000)]
DALi Version 2.0.12

Change-Id: I55e9f95139bb3d023d2d0cd03ff4c8a15a708948

3 years agoMerge branch 'devel/master' into devel/graphics 24/253124/1
Adeel Kazmi [Thu, 4 Feb 2021 17:55:56 +0000 (17:55 +0000)]
Merge branch 'devel/master' into devel/graphics

Change-Id: I761cfc0f25774b14003e936be295501aeb71bcd1

3 years agoGraphics API 70/252970/4
Adam Bialogonski [Wed, 3 Feb 2021 12:30:53 +0000 (12:30 +0000)]
Graphics API

Change-Id: I3eee6d5ce548614231b3e9786bb4eb91bb3c1b6c

3 years ago(HitTest) Check clipped actor if it is really touchable before using as hit-actor 07/252707/3
Adeel Kazmi [Mon, 1 Feb 2021 19:55:58 +0000 (19:55 +0000)]
(HitTest) Check clipped actor if it is really touchable before using as hit-actor

Change-Id: I073f6ddab910acb7aaf850d1f1c93fd6d15e1ebe

3 years agoTemporarily removed caching for GL call status 03/252703/1
Richard Huang [Fri, 29 Jan 2021 15:02:37 +0000 (15:02 +0000)]
Temporarily removed caching for GL call status

Change-Id: I303944970af86251fe03fcc5e4696af1700d3aef

3 years agoDo not call NotifyObjects in case of finished animations 36/252436/2
Heeyong Song [Thu, 28 Jan 2021 04:35:15 +0000 (13:35 +0900)]
Do not call NotifyObjects in case of finished animations

Change-Id: Iaa0f7d0dca73fdfd672a869d83a899ff8755a992

3 years agoDALi Version 2.0.11 83/252583/1 dali_2.0.11
David Steele [Fri, 29 Jan 2021 12:53:28 +0000 (12:53 +0000)]
DALi Version 2.0.11

Change-Id: I8f648ae125c4cd74a4e132e3b73c5fe9ab5b8b2d

3 years agoMerge "Updated all code to new format" into devel/master
Adeel Kazmi [Thu, 28 Jan 2021 16:52:37 +0000 (16:52 +0000)]
Merge "Updated all code to new format" into devel/master

3 years agoUpdated all code to new format 01/252401/2
David Steele [Wed, 27 Jan 2021 13:12:32 +0000 (13:12 +0000)]
Updated all code to new format

Change-Id: Ieac01f36cf9d059ea83ad10c2877fefb070328e5

3 years agoAdd EraseIf() api to OwnerContainer for proper implementaion of Erase-Remove idiom. 87/252387/2
Subhransu Mohanty [Wed, 27 Jan 2021 09:20:24 +0000 (18:20 +0900)]
Add EraseIf() api to OwnerContainer for proper implementaion of Erase-Remove idiom.

std::remove_if() moves the end object to the removed object position.
as OwnerContainer keeps the raw pointer, have introduced a higher order function
which will free the object if predicate returns true.

Change-Id: I0e69fee7ef115d9e15cc36e8cbe6889b3ad77c4d

3 years agoMerge "Ensure we check for null when freeing from the memory pool" into devel/master
David Steele [Tue, 26 Jan 2021 10:14:09 +0000 (10:14 +0000)]
Merge "Ensure we check for null when freeing from the memory pool" into devel/master

3 years agoMerge "Fix the synchronization issue when window is resized or rotated" into devel...
Wonsik Jung [Tue, 26 Jan 2021 00:35:48 +0000 (00:35 +0000)]
Merge "Fix the synchronization issue when window is resized or rotated" into devel/master

3 years agoEnsure we check for null when freeing from the memory pool 13/252213/3
Adeel Kazmi [Mon, 25 Jan 2021 19:18:14 +0000 (19:18 +0000)]
Ensure we check for null when freeing from the memory pool

Change-Id: Ifd805f9cd0476864455dfc1751e4f110e1ea6846

3 years agoMerge "Refactor Node class and TransformManagerproperty* class to optimize Object...
David Steele [Mon, 25 Jan 2021 13:01:29 +0000 (13:01 +0000)]
Merge "Refactor Node class and TransformManagerproperty* class to optimize Object Size." into devel/master

3 years agoRefactor Node class and TransformManagerproperty* class to optimize Object Size. 15/251315/3
Subhransu Mohanty [Tue, 12 Jan 2021 04:35:27 +0000 (13:35 +0900)]
Refactor Node class and TransformManagerproperty* class to optimize Object Size.

Introduced TransformManagerData and keep a pointer instead of keeping
{TxManager, TxId} pair. hence reducing 8bytes per member.

Also templated  TransformManagerPropertyVector3 based on TransformManagerProperty to
avoid storing the Property type in the class object.

This patch reduced the Node size from 976 byte to 896 byte, saving 80 bytes per object.

Change-Id: Ib608dfe73c12861277379208a8506904eedfc6e9

3 years agoFix performance issue in UpdateManager::AddNode() 20/251020/2
Subhransu Mohanty [Thu, 7 Jan 2021 03:11:27 +0000 (12:11 +0900)]
Fix performance issue in UpdateManager::AddNode()

As node pointes are allocated by FixedMeomrySizedPool and the pool
allocates pages and page can be allocated at any location by global new.
it won't help with cache locality by keeping nodes in sorted order by address.

creating 100,000 actor takes 3 Second and 200,000 actor takes 11 Second .

Change-Id: Ic3b0da35ebd98d994d876083ffe3ee44f082d8c0

3 years agoFix the synchronization issue when window is resized or rotated 29/248429/15
Wonsik Jung [Thu, 26 Nov 2020 10:47:10 +0000 (19:47 +0900)]
Fix the synchronization issue when window is resized or rotated

Window position, size and rotaton angle information are in both main and update thread.
To complete the works, the information should be synchronized in both main and update thread.
In addition, when multiple windows works and one of them resized or rotated, all windows are resized or rotated.
For fixing them, this patch has the informations are in the related modules (as Intergration::Scene, SceneGraph::Scene ... )
and are compared.

Change-Id: I79f12b8f7e15ce2ae07f161959f3450e65f2f1a0

3 years agoDALi Version 2.0.10 14/252114/1 dali_2.0.10
Adeel Kazmi [Fri, 22 Jan 2021 17:15:51 +0000 (17:15 +0000)]
DALi Version 2.0.10

Change-Id: I0399a258942ac6e35dfe57d6d1c99a2c6a1ff76c

3 years agoMerge "Removed scene-graph dependency from internal actor headers" into devel/master
David Steele [Wed, 20 Jan 2021 16:05:42 +0000 (16:05 +0000)]
Merge "Removed scene-graph dependency from internal actor headers" into devel/master

3 years agoRemoved scene-graph dependency from internal actor headers 29/251829/2
David Steele [Tue, 19 Jan 2021 15:11:18 +0000 (15:11 +0000)]
Removed scene-graph dependency from internal actor headers

actor-impl.h unnecessarily included update-manager.h.

Modified header to remove dependency, and fixed up errors, moving
to use forward declarations where possible, and moving inline
dependencies into source files.

Change-Id: I330a70fc374eb11a414ae257e34858ab061d84ca
Signed-off-by: David Steele <david.steele@samsung.com>
3 years agoAll test execution now outputs results to xml files 88/250088/3
David Steele [Fri, 18 Dec 2020 16:47:55 +0000 (16:47 +0000)]
All test execution now outputs results to xml files

Change-Id: I2eaba2f830dc479f2720bf5ec9b7ef726b85f888

3 years agoMerge "Reduce Actor Class Size by using ConstString" into devel/master
Adeel Kazmi [Tue, 19 Jan 2021 17:17:43 +0000 (17:17 +0000)]
Merge "Reduce Actor Class Size by using ConstString" into devel/master

3 years agoInitial refactoring of graphics interface 14/251614/5
David Steele [Thu, 14 Jan 2021 19:14:11 +0000 (19:14 +0000)]
Initial refactoring of graphics interface

Core now takes a Graphics::Controller as a parameter
For now, this wraps references to old GlAbstraction, GlSyncAbstraction &
GlContextHelperAbstraction.

Changed up internal interfaces to use this graphics controller rather
than storing refs to GlAbstraction etc (except for Context)

Change-Id: Id1707dd4bddd8578d1227244757b309b0e33228b

3 years agoDALi Version 2.0.9 99/251599/1 dali_2.0.9
adam.b [Fri, 15 Jan 2021 11:16:25 +0000 (11:16 +0000)]
DALi Version 2.0.9

Change-Id: I933b0dc928ae1935423258d43f182e0e2667969a

3 years agoReduce Actor Class Size by using ConstString 42/248642/3
Subhransu Mohanty [Tue, 1 Dec 2020 06:05:41 +0000 (15:05 +0900)]
Reduce Actor Class Size by using ConstString

Actor size reduced from 392 byte to 368 byte in 64bit system.

Change-Id: I28da21c56acfe6dc7f799b5ffe509bccb2284d2c

3 years agoDo not calculate dirty rects when rendering is skipped 78/250678/2
Heeyong Song [Thu, 31 Dec 2020 04:41:49 +0000 (13:41 +0900)]
Do not calculate dirty rects when rendering is skipped

- Dirty rect should not be calculated when rendring is skipped
- Fix also RenderItem::mUpdateSize value

Change-Id: I82472d2f1fdeccd5e1d29517cfe5cc80d3169e8d

3 years agoFix Rendering behavior issue 53/250653/2
Heeyong Song [Thu, 31 Dec 2020 00:49:02 +0000 (09:49 +0900)]
Fix Rendering behavior issue

Ensure to keep rendering if the rendering behavior is CONTINUOUSLY

Change-Id: I65bb42d4a230c48009ff65ec9a249fc2726fb774

3 years agoDALi Version 2.0.8 45/251145/1 dali_2.0.8
Richard Huang [Fri, 8 Jan 2021 14:35:24 +0000 (14:35 +0000)]
DALi Version 2.0.8

Change-Id: Idda91357d8c0c533b9918bdaacd68b25a6d3d4b3

3 years agoUpdated macOS instructions 80/251080/2
Adeel Kazmi [Thu, 7 Jan 2021 18:18:28 +0000 (18:18 +0000)]
Updated macOS instructions

Change-Id: I86c11734748764fdf374496699caa0c9191509f3

3 years agoAdd installation instructions for MacOS 17/245917/6
Lucas Cavalcante de Sousa [Tue, 13 Oct 2020 18:31:11 +0000 (15:31 -0300)]
Add installation instructions for MacOS

Change-Id: I77679aff52590015a25e53b818e6ebfdd8a81672

3 years agoMatch Apple clang 11/249211/3
Wander Lairson Costa [Tue, 8 Dec 2020 19:20:51 +0000 (16:20 -0300)]
Match Apple clang

In macOS, the clang shipped with macOS has the string 'AppleClang' in
cmake.

Change-Id: I0995c3853fded17b35e41595398421d3c4001bf1

3 years agoFix scissor clipping issue 93/250593/1
Heeyong Song [Wed, 30 Dec 2020 04:25:45 +0000 (13:25 +0900)]
Fix scissor clipping issue

- Should consider y-axis inversion for the scissor box

Change-Id: I27d3e0842d0095198caf243d80ce2b2af6825750

3 years agoDALi Version 2.0.7 01/250401/1 dali_2.0.7
György Straub [Thu, 24 Dec 2020 07:48:36 +0000 (07:48 +0000)]
DALi Version 2.0.7

Change-Id: I0248e8eb3d88b7f9b2966a01d1c4911fd49f8e0e

3 years agoMerge "Updated patch coverage script." into devel/master
Adeel Kazmi [Wed, 23 Dec 2020 16:19:36 +0000 (16:19 +0000)]
Merge "Updated patch coverage script." into devel/master

3 years agoMerge "Fix stencil clipping bug" into devel/master
Heeyong Song [Mon, 21 Dec 2020 01:51:45 +0000 (01:51 +0000)]
Merge "Fix stencil clipping bug" into devel/master

3 years agoCreated PartialRenderingDataProvider to store per-frame data 24/247424/12
adam.b [Tue, 8 Dec 2020 14:10:51 +0000 (14:10 +0000)]
Created PartialRenderingDataProvider to store per-frame data

Change-Id: Ief3717a29bced6f30faa96cfe117ffa93bd9a8d0

3 years agoDALi Version 2.0.6 48/250048/1 dali_2.0.6
adam.b [Fri, 18 Dec 2020 11:08:15 +0000 (11:08 +0000)]
DALi Version 2.0.6

Change-Id: I05de7b86bcaf019399edcb2fa6a417a19abd91ba

3 years agoAdded notes to explain the difference between GetProperty & GetCurrentProperty 90/249790/1
Adeel Kazmi [Wed, 16 Dec 2020 18:58:37 +0000 (18:58 +0000)]
Added notes to explain the difference between GetProperty & GetCurrentProperty

Change-Id: Iecb8e9d950f6c3bf77090fae82636221ae03e125

3 years agoMerge "use std::string_view to avoid shader string duplication." into devel/master
David Steele [Wed, 16 Dec 2020 18:08:37 +0000 (18:08 +0000)]
Merge "use std::string_view to avoid shader string duplication." into devel/master

3 years agoFix stencil clipping bug 84/249784/1
Heeyong Song [Wed, 16 Dec 2020 15:28:16 +0000 (00:28 +0900)]
Fix stencil clipping bug

Change-Id: I5eb8f3033774fe20976048b24b0e25d7543d915e

3 years agoMerge "Ensure actor size is set to node if different" into devel/master
David Steele [Tue, 15 Dec 2020 11:35:37 +0000 (11:35 +0000)]
Merge "Ensure actor size is set to node if different" into devel/master

3 years agoEnsure actor size is set to node if different 44/249544/2
David Steele [Mon, 14 Dec 2020 14:06:05 +0000 (14:06 +0000)]
Ensure actor size is set to node if different

Change-Id: I9a47c38321d7753747261f7bd140a6cb58330d58

3 years agoFix Svace error in actor-parent-impl.cpp 42/249542/1
Adeel Kazmi [Mon, 14 Dec 2020 14:04:28 +0000 (14:04 +0000)]
Fix Svace error in actor-parent-impl.cpp

Change-Id: I085d990f1ccbc5a503c1ac84943a0a44bf093d46

3 years agoUpdated patch coverage script. 60/249460/1
David Steele [Fri, 11 Dec 2020 18:05:48 +0000 (18:05 +0000)]
Updated patch coverage script.

Ensured that the coverage output is only shown in verbose mode after
all other errors have been found.
Clearly separate the script output from the coverage output
Added errors and warning tags to... errors and warnings.

Change-Id: Ica9abc713fd35e53bbd40031503e87a911624ced

3 years agoMerge "DALi Version 2.0.5" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 12:14:09 +0000 (12:14 +0000)]
Merge "DALi Version 2.0.5" into devel/master

3 years agoDALi Version 2.0.5 41/249441/1 dali_2.0.5
David Steele [Fri, 11 Dec 2020 12:10:16 +0000 (12:10 +0000)]
DALi Version 2.0.5

Change-Id: I3c95f358b861b57145cbd1ca215b648e001da965

3 years agoMerge "[dali-core] add libhyphen-dev library to dali-env" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 10:33:12 +0000 (10:33 +0000)]
Merge "[dali-core] add libhyphen-dev library to dali-env" into devel/master

3 years agoMerge "Refactored actor impl child/parent handling out" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 10:22:42 +0000 (10:22 +0000)]
Merge "Refactored actor impl child/parent handling out" into devel/master

3 years agoEnsure we use TransformManager const methods to retrieve values from const getter... 02/249202/3
Richard Huang [Tue, 8 Dec 2020 13:23:10 +0000 (13:23 +0000)]
Ensure we use TransformManager const methods to retrieve values from const getter methods

Change-Id: Ibf8208bca7d876bffcc0df309757645adf4ac1d0

3 years agoMerge "[dali-core] add all X11 colors to Color namespace" into devel/master
David Steele [Tue, 8 Dec 2020 12:34:13 +0000 (12:34 +0000)]
Merge "[dali-core] add all X11 colors to Color namespace" into devel/master

3 years agoMerge "(UpdateProxy) Ensure we use TransformManager const methods to retrieve values...
Adeel Kazmi [Tue, 8 Dec 2020 12:26:11 +0000 (12:26 +0000)]
Merge "(UpdateProxy) Ensure we use TransformManager const methods to retrieve values" into devel/master

3 years ago(UpdateProxy) Ensure we use TransformManager const methods to retrieve values 93/249193/1
Adeel Kazmi [Tue, 8 Dec 2020 11:31:51 +0000 (11:31 +0000)]
(UpdateProxy) Ensure we use TransformManager const methods to retrieve values

Change-Id: I4331e41ca50a8f0ca7122218b7ef56e99a184df1

3 years agoMerge "Ensure to update nodes even though they are invisible" into devel/master
Heeyong Song [Tue, 8 Dec 2020 00:37:02 +0000 (00:37 +0000)]
Merge "Ensure to update nodes even though they are invisible" into devel/master

3 years agoRefactored actor impl child/parent handling out 43/249143/1
David Steele [Mon, 7 Dec 2020 16:43:58 +0000 (16:43 +0000)]
Refactored actor impl child/parent handling out

Change-Id: I7f0750da51bff8528f55098e829d5814336e97bc

3 years ago[dali-core] add libhyphen-dev library to dali-env 50/248550/2
ali198724 [Sun, 29 Nov 2020 15:44:37 +0000 (17:44 +0200)]
[dali-core] add libhyphen-dev library to dali-env

Change-Id: I174819f4df3b72a6153fe7f78dd3297a30bba65c

3 years agoDALi Version 2.0.4 50/249050/1 dali_2.0.4
Adeel Kazmi [Fri, 4 Dec 2020 14:56:57 +0000 (14:56 +0000)]
DALi Version 2.0.4

Change-Id: I06e9413d20ccf046ce02c01fa4f049c4cb0126da

3 years agorefactor Object,TypeInfo and PropertyMetaData to use ConstString 70/248870/2
Subhransu Mohanty [Thu, 3 Dec 2020 01:55:33 +0000 (10:55 +0900)]
refactor Object,TypeInfo and PropertyMetaData to use ConstString

Change-Id: I03e7021895d3089cb1427683accdff426b40286f

3 years agouse std::string_view to avoid shader string duplication. 86/248886/1
Subhransu Mohanty [Thu, 3 Dec 2020 04:19:55 +0000 (13:19 +0900)]
use std::string_view to avoid shader string duplication.

Change-Id: Iacad7e8c45d6176d2347c8ed423edd32e58de61f

3 years agoMerge "Fixed SVACE errors" into devel/master
Adeel Kazmi [Wed, 2 Dec 2020 18:36:21 +0000 (18:36 +0000)]
Merge "Fixed SVACE errors" into devel/master

3 years agoMerge "Optimize Orphan animator Cleanup." into devel/master
David Steele [Wed, 2 Dec 2020 16:30:36 +0000 (16:30 +0000)]
Merge "Optimize Orphan animator Cleanup." into devel/master

3 years agoFixed SVACE errors 08/248808/1
Adeel Kazmi [Wed, 2 Dec 2020 09:56:19 +0000 (09:56 +0000)]
Fixed SVACE errors

Change-Id: I8ba9c64b7e20cd58834bc9ca8280840dfa8ea7ef

3 years agoOptimize Orphan animator Cleanup. 63/248763/1
Subhransu Mohanty [Wed, 2 Dec 2020 05:48:17 +0000 (14:48 +0900)]
Optimize Orphan animator Cleanup.

keep a cleanup falg and update it if cleanup is required.
and then cleanup at onece all the orphan animators.

when there are no orphan animators we don't have to walk the animators twice.

Change-Id: I9c2f7f2bef9a7655481743a22abdf366d8b12f21

3 years agoEnsure to update nodes even though they are invisible 55/248555/2
Heeyong Song [Mon, 30 Nov 2020 02:34:06 +0000 (11:34 +0900)]
Ensure to update nodes even though they are invisible

Change-Id: I5a7b77fc12ca28b18d207946b89357e9600f7d91

3 years agoRefactored Internal::Actor by moving some methods into the Relayouter 06/248706/2
Adeel Kazmi [Tue, 1 Dec 2020 18:34:58 +0000 (18:34 +0000)]
Refactored Internal::Actor by moving some methods into the Relayouter

This reduces the LOC for Actor

Change-Id: I02201d933ca315581765ea91d8e5ea191201499f

3 years agoMoved sibling order algorithms out of actor-impl 07/248707/1
David Steele [Tue, 1 Dec 2020 18:41:53 +0000 (18:41 +0000)]
Moved sibling order algorithms out of actor-impl

Reducing the line count of Internal::Actor to increase SAM score

Change-Id: Icceb9d6a4d899a988a9d203f1879f1c84df3fe07

3 years agoMerge changes I2dff9828,Ie3c8048a,Ib1b1d3bc into devel/master
David Steele [Tue, 1 Dec 2020 13:06:39 +0000 (13:06 +0000)]
Merge changes I2dff9828,Ie3c8048a,Ib1b1d3bc into devel/master

* changes:
  Avoid Heap allocation in UniformMap.
  Refactor UniformMap, PropertyOwner and Program to use ConstString
  Added String Interning Support to Dali.

3 years agoMake blend for the opaque renderer when advanced blend equation is applied. 27/248327/4
Seungho Baek [Wed, 25 Nov 2020 10:07:17 +0000 (19:07 +0900)]
Make blend for the opaque renderer when advanced blend equation is applied.

 - Not to change BlendMode.

Change-Id: Ic0d085a67d3c49e270a5cd83e703981bfd916f24
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
3 years agoAvoid Heap allocation in UniformMap. 90/248590/3
Subhransu Mohanty [Mon, 30 Nov 2020 09:04:20 +0000 (18:04 +0900)]
Avoid Heap allocation in UniformMap.

With the use of ConstString we no need to heap allocate UniformPropertyMapping.
So just keep a Dali::Vector instead of OwnerContainer.

Change-Id: I2dff9828a121f7b6b245c306e0f689f5d2073021

3 years agoRefactor UniformMap, PropertyOwner and Program to use ConstString 69/248569/5
Subhransu Mohanty [Mon, 30 Nov 2020 05:52:58 +0000 (14:52 +0900)]
Refactor UniformMap, PropertyOwner and Program to use ConstString

Change-Id: Ie3c8048a57ad667f4f8e557ba1cc4ec19b2d686f

3 years agoAdded String Interning Support to Dali. 60/248560/5
Subhransu Mohanty [Wed, 25 Nov 2020 09:16:42 +0000 (18:16 +0900)]
Added String Interning Support to Dali.

- thread safe StringPool.
- uses arena allocator to allocate the StringEntry object.
- Internal strings are allocated in String pages instead of indivisual heap allocation.
- Both StringData and length are stored in same location(StringEntry).
- StringPool implements FlatHash with open addresssing and Quadratic Probing (adopted from llvm)

Change-Id: Ib1b1d3bc74718dd613e924236bb1845e83f42353

3 years agoMerge "Reference counting made atomic" into devel/master
Adeel Kazmi [Mon, 30 Nov 2020 17:04:15 +0000 (17:04 +0000)]
Merge "Reference counting made atomic" into devel/master

3 years agoMerge "refactor AlphaFunction class to reduce size" into devel/master
David Steele [Mon, 30 Nov 2020 12:50:50 +0000 (12:50 +0000)]
Merge "refactor AlphaFunction class to reduce size" into devel/master

3 years agoAdd configuration file to enable CodeQL code scanning in github 43/248543/1
Richard Huang [Fri, 27 Nov 2020 16:40:57 +0000 (16:40 +0000)]
Add configuration file to enable CodeQL code scanning in github

Change-Id: I99cd2db52c9beef5d3fedb6199c9f83b3be65c54

3 years agoReference counting made atomic 36/248536/1
adam.b [Fri, 27 Nov 2020 11:58:52 +0000 (11:58 +0000)]
Reference counting made atomic

The ARM assembled code and GCC builtin call have been removed and replace
with std::atomic<>.

Change-Id: I86299c36b82fbc7263e5a463da1475179cb20a04

3 years agoDALi Version 2.0.3 24/248524/1 dali_2.0.3
Richard Huang [Fri, 27 Nov 2020 11:56:42 +0000 (11:56 +0000)]
DALi Version 2.0.3

Change-Id: Idffb204f3a542eef257b7c9c53ee24503abfa5a7

3 years agoMerge "Support screen and client rotation" into devel/master
Adeel Kazmi [Mon, 23 Nov 2020 16:48:36 +0000 (16:48 +0000)]
Merge "Support screen and client rotation" into devel/master

3 years agoImplement a semaphore primitive 32/244732/9
Wander Lairson Costa [Mon, 21 Sep 2020 20:03:52 +0000 (17:03 -0300)]
Implement a semaphore primitive

macOS doesn't implement unnamed POSIX semaphores (sem_*) and semaphores
is only available in the standard C++ library starting with C++20.

We implement a semaphore primitive that tries to mimic as much as
possible std::counting_semaphore, this way when we enable C++20 in the
code base we can easily migrate to the standard implementation.

Change-Id: Ifab8dbe41b57490564ad569cf53d6aa0c4100a13

3 years agoSupport screen and client rotation 21/244821/11
Wonsik Jung [Thu, 24 Sep 2020 11:32:20 +0000 (20:32 +0900)]
Support screen and client rotation

In Tizen embedded system, two types of rotation are supported.
One is Window Rotation and the other is Screen rotation
Although their use-case are different, their rotation itself  almost works are same.
Real surface buffer is not rotated.
When rotation event is received from window server,
then internal contents are rotated and drawn with angle of the event.
This patch is to support the Tizen Rotation.

Change-Id: I1745b8cefaeb1bb6ff7639ac5d942aeb3216262f

3 years agoDALi Version 2.0.2 79/248079/1 dali_2.0.2
György Straub [Fri, 20 Nov 2020 07:45:46 +0000 (07:45 +0000)]
DALi Version 2.0.2

Change-Id: Iba6ed1ee281eb70633c4425a8c55f075455368a4

3 years agoMerge "Clean up the code to build successfully on macOS" into devel/master
Adeel Kazmi [Wed, 18 Nov 2020 17:46:41 +0000 (17:46 +0000)]
Merge "Clean up the code to build successfully on macOS" into devel/master

3 years agoClean up the code to build successfully on macOS 85/243985/9
Wander Lairson Costa [Wed, 12 Aug 2020 17:49:44 +0000 (14:49 -0300)]
Clean up the code to build successfully on macOS

This commit does some code cleanup to successfully build dali-core in
macOS using the Apple provided clang compiler.

The clang version shipped with macOS doesn't have the
-Wno-class-memaccess and the -Wno-cast-function-type switches, so we
test their existence before adding them to the compiler options.

Mutex now has move constructor and assigment operator, so classes with
mutexes members can use their defaults move operations. Classes holding
references cannot have a default move assigment operator.

Virtual functions overriding parent classes are now declared with the
`override` keyword.

MAXIMUM_TIME_DIFF_ALLOWED is a global internal variable nerver used, so
it was removed.

.gitignore was updated to include some artifacts from coc-nvim
extension.

Change-Id: I76201f867240a0822e7e202c2edcbfa07b2dffd6

3 years agoDALi Version 2.0.1 04/247704/1 dali_2.0.1
Cheng-Shiun Tsai [Fri, 13 Nov 2020 14:53:14 +0000 (14:53 +0000)]
DALi Version 2.0.1

Change-Id: I60ab4275600a2a4fd7e0b6cac346357b05a5a2fa

3 years agoMerge "Blend Equation Advanced Supporting" into devel/master
Seungho BAEK [Wed, 11 Nov 2020 03:07:08 +0000 (03:07 +0000)]
Merge "Blend Equation Advanced Supporting" into devel/master

4 years ago(patch-coverage.pl) Outputs covered and total lines as well 05/247305/1
Adeel Kazmi [Mon, 9 Nov 2020 19:07:26 +0000 (19:07 +0000)]
(patch-coverage.pl) Outputs covered and total lines as well

Change-Id: Ia66f4f1fd8134548c94722e55ee3ae824af7c288

4 years ago[dali-core] add all X11 colors to Color namespace 10/246610/3
ali198724 [Mon, 2 Nov 2020 10:01:29 +0000 (12:01 +0200)]
[dali-core] add all X11 colors to Color namespace

this is subset used in CSS https://www.w3.org/TR/css-color-3

Change-Id: If180701ffa07fab4b93f36d0d204a6c076653bc7

4 years agorefactor AlphaFunction class to reduce size 11/247211/1
Subhransu Mohanty [Mon, 9 Nov 2020 02:33:12 +0000 (11:33 +0900)]
refactor AlphaFunction class to reduce size

Change-Id: I4ed9ad6e4367a97ac97f64cb5b82140fc969d99f

4 years agoDALi Version 2.0.0 72/247172/1 dali_2.0.0
Adeel Kazmi [Fri, 6 Nov 2020 09:17:46 +0000 (09:17 +0000)]
DALi Version 2.0.0

Change-Id: I0a32b1d26aa223dd728b36188726693084461e35

4 years agoRenderTaskProcessor::AddRenderablesForTask() optimization. 41/239741/9
György Straub [Wed, 29 Jul 2020 09:55:48 +0000 (10:55 +0100)]
RenderTaskProcessor::AddRenderablesForTask() optimization.

- pulled loop-invariant conditional for which RenderableContainer to add
  to, out of the loop;
- replaced branch for assigning true, with compound or-assignment of the
  result of the check;

Change-Id: I2f36f2b7a5eb95da6e3cc04bddfbede0f8437b69
Signed-off-by: György Straub <g.straub@partner.samsung.com>
4 years agoImplement GetNanoseconds() with std::chrono. 08/242608/7
Victor Cebollada [Fri, 28 Aug 2020 07:15:24 +0000 (08:15 +0100)]
Implement GetNanoseconds() with std::chrono.

* Platform independent.

Change-Id: I484dbfb5a0b6115a6ea8cd6c645420985e9aae0d
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
4 years agoImprove the logic using Erase-Remove Idiom. 36/242436/6
Subhransu Mohanty [Thu, 27 Aug 2020 03:57:28 +0000 (12:57 +0900)]
Improve the logic using Erase-Remove Idiom.

instead of erasing each element found and restarting the
loop again . first find all element and move them to the end
of list and then erase them once using std::erase(std::remove_if()).

This will improve the cache locality as this will avoid lot ofpointer chaseing.
Also avoids expensing Dali::Vector::end() call.

Change-Id: I306de3f017ef23ea7d4d1e6e5202940f84fcf872

4 years agoMerge "use string_view instead of const string literals." into devel/master
David Steele [Tue, 3 Nov 2020 15:43:52 +0000 (15:43 +0000)]
Merge "use string_view instead of const string literals." into devel/master

4 years agouse string_view instead of const string literals. 22/245322/4
Subhransu Mohanty [Wed, 7 Oct 2020 05:16:26 +0000 (14:16 +0900)]
use string_view instead of const string literals.

as constexpr stringview calculates the length of the string during
compiletime. the == comparison is fast as it first checks whether
the size of the both string are same before calling the expensive
compare() function.

Change-Id: I996faed4d82e5c478f5f55c31cfe25581aa4bbc9

4 years agorefactor dali-animation. 11/245511/11
sub.mohanty@samsung.com [Sun, 11 Oct 2020 01:26:36 +0000 (10:26 +0900)]
refactor dali-animation.

- refactor keyframeChannel class.
- refactor KeyFrameBaseSpec to avoid heap allocation.
- keep a templated form of GetSpecialization.
- in the keyframeanimation functor keep a copy of keyframeChannel instead of heap allocated object.
- remove AnimatorFunctorBase class and replace it with std::function to avoid heap allocation when possible.
- structure packing of AnimatorBase

Change-Id: I416df4601116547c79f04b2cf8e0bc95e622b869

4 years agoAdded test-harness timeout check 18/246618/2
David Steele [Mon, 2 Nov 2020 13:37:07 +0000 (13:37 +0000)]
Added test-harness timeout check

Change-Id: I82276c59de57bc29a2e6a2e895db26e5072a61e0

4 years agoDALi Version 1.9.36 29/246529/1 dali_1.9.36
David Steele [Fri, 30 Oct 2020 14:33:16 +0000 (14:33 +0000)]
DALi Version 1.9.36

Change-Id: Ie87e252297e782248c1d5222a3cabc58e2c8f76a

4 years agoBlend Equation Advanced Supporting 00/224500/45
Seungho, Baek [Tue, 11 Feb 2020 05:51:46 +0000 (14:51 +0900)]
Blend Equation Advanced Supporting

Change-Id: I7a813e3831424de2b63e1cc53fd5682bbaaa4683
Signed-off-by: Seungho, Baek <sbsh.baek@samsung.com>