Markup procesor - Font.
[platform/core/uifw/dali-toolkit.git] / docs / content / shared-javascript-and-cpp-documentation / high-level-design.md
1 <!--
2 /**-->
3
4 # High Level Design {#dali-hld}
5
6 ## Components {#dali-components}
7
8  + **DALi Core:** Event handling, Scene Graph, Rendering, Resource Management
9  + **DALi Adaptor:** Threading Model, Integration with the main loop.
10  + **DALi Platform Abstraction:** Resource loading & decoding in multiple threads (part of dali-adaptor)
11  + **DALi Toolkit:** Reusable UI Controls, Effects & Scripting Support
12
13 ![ ](../assets/img/architecture.png)
14 ![ ](architecture.png)
15
16 ## Main, Update & Render Threads {#dali-threads}
17
18 DALi uses a multithreaded architecture in order to provide the best performance and scalability.
19
20  + **Event Thread:** The main thread in which application code and event handling runs.
21  + **Update Thread:** Updates the nodes on the scene as well as running animations & constraints
22  + **Render Thread:** OpenGL drawing, texture and geometry uploading etc.
23  + **Resource Threads:** Loads images and decodes into bitmaps etc.
24
25 ![ ](../assets/img/dali-threads.png)
26 ![ ](dali-threads.png)
27
28 */