From 85fdd4bfa87e99f0b8b9446ca33a236c074a661d Mon Sep 17 00:00:00 2001 From: yanansong Date: Fri, 26 May 2023 14:41:57 +0800 Subject: [PATCH 1/2] Initsinitial Version, Fork from OpenHarmony 3.2 --- display_server/.clang-format | 106 + display_server/.gitattributes | 15 + display_server/BUILD.gn | 69 + display_server/LICENSE | 177 + display_server/OAT.xml | 72 + display_server/bundle.json | 157 + display_server/default.scss | 321 ++ display_server/etc/BUILD.gn | 20 + display_server/etc/graphic.para.dac | 15 + display_server/figures/graphic.png | Bin 0 -> 46331 bytes .../figures/graphic_rosen_architecture.jpg | Bin 0 -> 144837 bytes display_server/flutter.gni | 20 + .../frameworks/bootanimation/BUILD.gn | 99 + .../data/bootanimation_tool/README.md | 79 + .../data/bootanimation_tool/raw_maker.py | 207 + .../data/bootanimation_tool/raw_player.py | 80 + .../frameworks/bootanimation/data/bootpic.zip | 3 + .../bootanimation/data/bootsound.wav | Bin 0 -> 882080 bytes .../bootanimation/data/generate_raw.sh | 124 + .../bootanimation/include/boot_animation.h | 81 + .../frameworks/bootanimation/include/log.h | 30 + .../frameworks/bootanimation/include/util.h | 103 + .../bootanimation/src/boot_animation.cpp | 245 + .../frameworks/bootanimation/src/main.cpp | 42 + .../frameworks/bootanimation/src/util.cpp | 196 + display_server/frameworks/fence/BUILD.gn | 53 + .../frameworks/fence/include/fence.h | 39 + display_server/frameworks/fence/src/fence.cpp | 149 + display_server/frameworks/fence/test/BUILD.gn | 18 + .../frameworks/fence/test/unittest/BUILD.gn | 62 + .../fence/test/unittest/fence_fd_test.cpp | 93 + .../fence/test/unittest/fence_fd_test.h | 53 + .../frameworks/opengl_wrapper/BUILD.gn | 294 ++ .../frameworks/opengl_wrapper/src/EGL/egl.cpp | 89 + .../opengl_wrapper/src/EGL/egl_core.cpp | 111 + .../opengl_wrapper/src/EGL/egl_core.h | 21 + .../opengl_wrapper/src/EGL/egl_defs.h | 45 + .../src/EGL/egl_pre_initializer.h | 48 + .../src/EGL/egl_wrapper_context.cpp | 62 + .../src/EGL/egl_wrapper_context.h | 42 + .../src/EGL/egl_wrapper_display.cpp | 910 ++++ .../src/EGL/egl_wrapper_display.h | 103 + .../src/EGL/egl_wrapper_entry.cpp | 1298 +++++ .../src/EGL/egl_wrapper_entry.h | 27 + .../src/EGL/egl_wrapper_layer.cpp | 250 + .../src/EGL/egl_wrapper_layer.h | 45 + .../src/EGL/egl_wrapper_loader.cpp | 255 + .../src/EGL/egl_wrapper_loader.h | 46 + .../src/EGL/egl_wrapper_object.cpp | 55 + .../src/EGL/egl_wrapper_object.h | 34 + .../src/EGL/egl_wrapper_surface.cpp | 37 + .../src/EGL/egl_wrapper_surface.h | 38 + .../opengl_wrapper/src/GLES1/gles1.cpp | 50 + .../opengl_wrapper/src/GLES2/gles2.cpp | 50 + .../opengl_wrapper/src/GLES3/gles3.cpp | 50 + .../opengl_wrapper/src/egl_hook_entries.in | 226 + .../opengl_wrapper/src/gl1_entries.in | 435 ++ .../opengl_wrapper/src/gl1_hook_entries.in | 2 + .../opengl_wrapper/src/gl1ext_entries.in | 459 ++ .../opengl_wrapper/src/gl2_entries.in | 426 ++ .../opengl_wrapper/src/gl2_hook_entries.in | 2 + .../opengl_wrapper/src/gl2ext_entries.in | 1593 ++++++ .../opengl_wrapper/src/gl32_entries.in | 1074 ++++ .../opengl_wrapper/src/gl3_hook_entries.in | 2 + .../frameworks/opengl_wrapper/src/hook.h | 65 + .../src/thread_private_data_ctl.cpp | 125 + .../src/thread_private_data_ctl.h | 48 + .../src/wrapper_hook_entries.in | 226 + .../opengl_wrapper/src/wrapper_log.h | 49 + .../frameworks/opengl_wrapper/test/BUILD.gn | 21 + .../opengl_wrapper/test/debug_layer_test.h | 35 + .../opengl_wrapper/test/debug_layer_test1.cpp | 78 + .../opengl_wrapper/test/debug_layer_test2.cpp | 79 + .../test/opengl_wrapper_native_test.cpp | 335 ++ .../opengl_wrapper/test/systemtest/BUILD.gn | 51 + .../systemtest/opengl_wrapper_api_test.cpp | 482 ++ .../opengl_wrapper/test/unittest/BUILD.gn | 69 + .../test/unittest/egl_core_test.cpp | 60 + .../unittest/egl_wrapper_context_test.cpp | 57 + .../unittest/egl_wrapper_display_test.cpp | 369 ++ .../test/unittest/egl_wrapper_entry_test.cpp | 2147 ++++++++ .../test/unittest/egl_wrapper_layer_test.cpp | 60 + .../test/unittest/egl_wrapper_loader_test.cpp | 228 + .../unittest/thread_private_data_ctl_test.cpp | 115 + display_server/frameworks/surface/BUILD.gn | 115 + display_server/frameworks/surface/bundle.json | 72 + .../surface/include/buffer_client_producer.h | 84 + .../surface/include/buffer_extra_data_impl.h | 56 + .../frameworks/surface/include/buffer_log.h | 99 + .../surface/include/buffer_manager.h | 51 + .../frameworks/surface/include/buffer_queue.h | 180 + .../surface/include/buffer_queue_consumer.h | 68 + .../surface/include/buffer_queue_producer.h | 126 + .../frameworks/surface/include/buffer_utils.h | 52 + .../surface/include/consumer_surface.h | 121 + .../surface/include/egl_consumer_surface.h | 35 + .../surface/include/native_window.h | 48 + .../surface/include/producer_egl_surface.h | 64 + .../surface/include/producer_surface.h | 131 + .../surface/include/surface_buffer_impl.h | 110 + .../surface/src/buffer_client_producer.cpp | 423 ++ .../surface/src/buffer_extra_data_impl.cpp | 182 + .../frameworks/surface/src/buffer_manager.cpp | 241 + .../frameworks/surface/src/buffer_queue.cpp | 1189 +++++ .../surface/src/buffer_queue_consumer.cpp | 210 + .../surface/src/buffer_queue_producer.cpp | 599 +++ .../frameworks/surface/src/buffer_utils.cpp | 213 + .../surface/src/consumer_surface.cpp | 370 ++ .../surface/src/egl_consumer_surface.cpp | 67 + .../frameworks/surface/src/egl_surface.cpp | 37 + .../frameworks/surface/src/native_buffer.cpp | 172 + .../frameworks/surface/src/native_window.cpp | 380 ++ .../surface/src/producer_egl_surface.cpp | 362 ++ .../surface/src/producer_surface.cpp | 462 ++ .../frameworks/surface/src/surface.cpp | 52 + .../surface/src/surface_buffer_impl.cpp | 567 ++ .../surface/src/surface_delegate.cpp | 58 + .../surface/src/surface_tunnel_handle.cpp | 118 + .../frameworks/surface/src/surface_utils.cpp | 69 + .../frameworks/surface/test/BUILD.gn | 22 + .../frameworks/surface/test/fuzztest/BUILD.gn | 26 + .../test/fuzztest/bufferqueue_fuzzer/BUILD.gn | 50 + .../bufferqueue_fuzzer/bufferqueue_fuzzer.cpp | 194 + .../bufferqueue_fuzzer/bufferqueue_fuzzer.h | 21 + .../fuzztest/bufferqueue_fuzzer/corpus/init | 14 + .../fuzztest/bufferqueue_fuzzer/project.xml | 25 + .../test/fuzztest/bufferutils_fuzzer/BUILD.gn | 48 + .../bufferutils_fuzzer/bufferutils_fuzzer.cpp | 116 + .../bufferutils_fuzzer/bufferutils_fuzzer.h | 21 + .../fuzztest/bufferutils_fuzzer/corpus/init | 14 + .../fuzztest/bufferutils_fuzzer/project.xml | 25 + .../fuzztest/nativebuffer_fuzzer/BUILD.gn | 48 + .../fuzztest/nativebuffer_fuzzer/corpus/init | 14 + .../nativebuffer_fuzzer.cpp | 101 + .../nativebuffer_fuzzer/nativebuffer_fuzzer.h | 21 + .../fuzztest/nativebuffer_fuzzer/project.xml | 25 + .../fuzztest/nativewindow_fuzzer/BUILD.gn | 47 + .../fuzztest/nativewindow_fuzzer/corpus/init | 14 + .../nativewindow_fuzzer.cpp | 149 + .../nativewindow_fuzzer/nativewindow_fuzzer.h | 21 + .../fuzztest/nativewindow_fuzzer/project.xml | 25 + .../test/fuzztest/surface_fuzzer/BUILD.gn | 50 + .../test/fuzztest/surface_fuzzer/corpus/init | 14 + .../test/fuzztest/surface_fuzzer/project.xml | 25 + .../surface_fuzzer/surface_fuzzer.cpp | 197 + .../fuzztest/surface_fuzzer/surface_fuzzer.h | 21 + .../fuzztest/surfacebuffer_fuzzer/BUILD.gn | 49 + .../fuzztest/surfacebuffer_fuzzer/corpus/init | 14 + .../fuzztest/surfacebuffer_fuzzer/project.xml | 25 + .../surfacebuffer_fuzzer.cpp | 128 + .../surfacebuffer_fuzzer.h | 21 + .../fuzztest/surfaceutils_fuzzer/BUILD.gn | 47 + .../fuzztest/surfaceutils_fuzzer/corpus/init | 14 + .../fuzztest/surfaceutils_fuzzer/project.xml | 25 + .../surfaceutils_fuzzer.cpp | 87 + .../surfaceutils_fuzzer/surfaceutils_fuzzer.h | 21 + .../surface/test/systemtest/BUILD.gn | 94 + .../systemtest/native_window_buffer_test.cpp | 248 + .../test/systemtest/surface_ipc_test.cpp | 264 + .../frameworks/surface/test/unittest/BUILD.gn | 240 + .../buffer_client_producer_remote_test.cpp | 515 ++ .../test/unittest/buffer_consumer_listener.h | 30 + .../test/unittest/buffer_manager_test.cpp | 284 + .../unittest/buffer_queue_consumer_test.cpp | 133 + .../buffer_queue_producer_remote_test.cpp | 293 ++ .../unittest/buffer_queue_producer_test.cpp | 228 + .../test/unittest/buffer_queue_test.cpp | 519 ++ .../test/unittest/buffer_shared_test.cpp | 236 + .../test/unittest/consumer_surface_test.cpp | 856 +++ .../test/unittest/native_buffer_test.cpp | 373 ++ .../test/unittest/native_image_test.cpp | 594 +++ .../test/unittest/native_window_test.cpp | 850 +++ .../test/unittest/producer_surface_test.cpp | 819 +++ .../unittest/surface_buffer_impl_test.cpp | 142 + .../test/unittest/surface_utils_test.cpp | 194 + .../frameworks/surfaceimage/BUILD.gn | 71 + .../surfaceimage/include/surface_image.h | 122 + .../surfaceimage/src/native_image.cpp | 105 + .../surfaceimage/src/surface_image.cpp | 428 ++ .../frameworks/vulkan_wrapper/BUILD.gn | 92 + .../vulkan_wrapper/include/driver.h | 53 + .../vulkan_wrapper/include/driver_loader.h | 62 + .../include/hardware/hdi_vulkan.h | 80 + .../vulkan_wrapper/include/swapchain.h | 51 + .../include/vulkan/vk_ohos_native_buffer.h | 103 + .../vulkan_wrapper/include/wrapper_log.h | 35 + .../vulkan_wrapper/src/api_export.cpp | 48 + .../frameworks/vulkan_wrapper/src/driver.cpp | 297 ++ .../vulkan_wrapper/src/driver_loader.cpp | 140 + .../vulkan_wrapper/src/swapchain.cpp | 826 +++ .../frameworks/vulkan_wrapper/test/BUILD.gn | 21 + .../vulkan_wrapper/test/systemtest/BUILD.gn | 64 + .../systemtest/vulkan_wrapper_api_test.cpp | 332 ++ .../vulkan_wrapper/test/unittest/BUILD.gn | 78 + .../unittest/vulkan_wrapper_unit_test.cpp | 875 ++++ .../test/vulkan_wrapper_native_test.cpp | 56 + display_server/graphic.cfg | 43 + display_server/graphic_config.gni | 82 + display_server/hisysevent.yaml | 62 + .../color_manager/color_manager_common.h | 47 + .../inner_api/common/graphic_common.h | 122 + .../inner_api/common/graphic_common_c.h | 107 + .../inner_api/composer/native_vsync.h | 87 + .../inner_api/composer/vsync_receiver.h | 107 + .../inner_api/surface/buffer_extra_data.h | 41 + .../interfaces/inner_api/surface/egl_data.h | 31 + .../inner_api/surface/egl_surface.h | 46 + .../inner_api/surface/external_window.h | 457 ++ .../surface/ibuffer_consumer_listener.h | 42 + .../inner_api/surface/ibuffer_producer.h | 114 + .../inner_api/surface/native_buffer.h | 152 + .../inner_api/surface/native_buffer_inner.h | 40 + .../inner_api/surface/native_image.h | 150 + .../inner_api/surface/native_surface.h | 76 + .../interfaces/inner_api/surface/surface.h | 123 + .../inner_api/surface/surface_buffer.h | 103 + .../inner_api/surface/surface_delegate.h | 169 + .../inner_api/surface/surface_tunnel_handle.h | 44 + .../inner_api/surface/surface_type.h | 377 ++ .../inner_api/surface/surface_utils.h | 44 + .../interfaces/inner_api/surface/window.h | 68 + .../interfaces/inner_api/wm/window_manager.h | 108 + .../inner_api/wm/window_manager_common.h | 45 + .../wmclient/iscreen_shot_callback.h | 31 + .../wmclient/iwindow_shot_callback.h | 31 + .../interfaces/inner_api/wmclient/subwindow.h | 45 + .../inner_api/wmclient/subwindow_option.h | 45 + .../wmclient/virtual_display_option.h | 46 + .../interfaces/inner_api/wmclient/window.h | 83 + .../inner_api/wmclient/window_manager.h | 56 + .../inner_api/wmclient/window_manager_type.h | 115 + .../inner_api/wmclient/window_option.h | 54 + .../interfaces/inner_api/wmclient/wm_common.h | 160 + .../wmservice/iwindow_change_listener_clazz.h | 29 + .../iwindow_manager_display_listener_clazz.h | 29 + .../wmservice/iwindow_manager_service.h | 90 + .../wmservice/window_manager_service_client.h | 34 + .../wmservice/window_manager_service_type.h | 62 + .../interfaces/kits/js/declaration/BUILD.gn | 29 + .../js/declaration/api/@ohos.display.d.ts | 135 + .../kits/js/declaration/api/@ohos.window.d.ts | 81 + display_server/interfaces/kits/napi/BUILD.gn | 21 + .../window_animation_manager/BUILD.gn | 51 + .../rs_window_animation_callback.cpp | 41 + .../rs_window_animation_callback.h | 37 + .../rs_window_animation_controller.cpp | 375 ++ .../rs_window_animation_controller.h | 98 + .../rs_window_animation_manager.cpp | 144 + .../rs_window_animation_manager.h | 48 + .../rs_window_animation_module.cpp | 29 + .../rs_window_animation_utils.cpp | 150 + .../rs_window_animation_utils.h | 44 + .../kits/napi/graphic/color_manager/BUILD.gn | 82 + .../api/@ohos.graphics.colorSpaceManager.d.ts | 184 + .../color_space_object_convertor.cpp | 63 + .../color_space_object_convertor.h | 32 + .../js_color_space.cpp | 133 + .../js_color_space.h | 51 + .../js_color_space_utils.cpp | 132 + .../js_color_space_utils.h | 160 + .../color_space_manager_module.cpp | 29 + .../js_color_space_manager.cpp | 174 + .../js_color_space_manager.h | 39 + .../kits/napi/graphic/effect_kit/BUILD.gn | 77 + .../effect_kit/include/color_picker_napi.h | 68 + .../graphic/effect_kit/include/filter_napi.h | 51 + .../include/native_module_ohos_effect.h | 23 + .../effect_kit/src/color_picker_napi.cpp | 520 ++ .../graphic/effect_kit/src/filter_napi.cpp | 299 ++ .../src/native_module_ohos_effect.cpp | 55 + .../kits/napi/graphic/webgl/BUILD.gn | 101 + .../graphic/webgl/src/common/napi/n_class.cpp | 76 + .../graphic/webgl/src/common/napi/n_class.h | 83 + .../webgl/src/common/napi/n_exporter.h | 46 + .../webgl/src/common/napi/n_func_arg.cpp | 102 + .../webgl/src/common/napi/n_func_arg.h | 94 + .../graphic/webgl/src/common/napi/n_val.cpp | 321 ++ .../graphic/webgl/src/common/napi/n_val.h | 116 + .../webgl/src/common/napi/uni_header.h | 25 + .../include/canvas_render_context_base.h | 46 + .../context/webgl2_rendering_context.h | 43 + .../context/webgl2_rendering_context_base.h | 484 ++ .../webgl2_rendering_context_overloads.h | 79 + .../context/webgl_context_attributes.h | 40 + .../include/context/webgl_rendering_context.h | 43 + .../context/webgl_rendering_context_base.h | 578 ++ .../webgl_rendering_context_basic_base.h | 89 + .../webgl_rendering_context_overloads.h | 75 + .../src/webgl/include/util/egl_manager.h | 94 + .../webgl/src/webgl/include/util/log.h | 43 + .../src/webgl/include/util/object_manager.h | 62 + .../src/webgl/include/util/object_source.h | 57 + .../webgl/src/webgl/include/util/util.h | 65 + .../webgl/include/webgl/webgl_active_info.h | 67 + .../src/webgl/include/webgl/webgl_buffer.h | 63 + .../webgl/include/webgl/webgl_framebuffer.h | 54 + .../src/webgl/include/webgl/webgl_program.h | 54 + .../src/webgl/include/webgl/webgl_query.h | 54 + .../webgl/include/webgl/webgl_renderbuffer.h | 54 + .../src/webgl/include/webgl/webgl_sampler.h | 54 + .../src/webgl/include/webgl/webgl_shader.h | 54 + .../webgl/webgl_shader_precision_format.h | 76 + .../src/webgl/include/webgl/webgl_sync.h | 54 + .../src/webgl/include/webgl/webgl_texture.h | 54 + .../include/webgl/webgl_transform_feedback.h | 54 + .../include/webgl/webgl_uniform_location.h | 54 + .../include/webgl/webgl_vertex_array_object.h | 54 + .../napi/graphic/webgl/src/webgl/module.cpp | 153 + .../webgl/src/webgl/src/egl_manager.cpp | 166 + .../napi/graphic/webgl/src/webgl/src/util.cpp | 128 + .../webgl/src/webgl2_rendering_context.cpp | 1778 +++++++ .../src/webgl2_rendering_context_base.cpp | 4659 +++++++++++++++++ .../webgl2_rendering_context_overloads.cpp | 1880 +++++++ .../webgl/src/webgl/src/webgl_active_info.cpp | 74 + .../webgl/src/webgl/src/webgl_buffer.cpp | 74 + .../webgl/src/webgl/src/webgl_framebuffer.cpp | 74 + .../webgl/src/webgl/src/webgl_program.cpp | 74 + .../webgl/src/webgl/src/webgl_query.cpp | 74 + .../src/webgl/src/webgl_renderbuffer.cpp | 74 + .../src/webgl/src/webgl_rendering_context.cpp | 2000 +++++++ .../src/webgl_rendering_context_base.cpp | 4192 +++++++++++++++ .../webgl_rendering_context_basic_base.cpp | 109 + .../src/webgl_rendering_context_overloads.cpp | 1590 ++++++ .../webgl/src/webgl/src/webgl_sampler.cpp | 62 + .../webgl/src/webgl/src/webgl_shader.cpp | 62 + .../src/webgl_shader_precision_format.cpp | 76 + .../webgl/src/webgl/src/webgl_sync.cpp | 74 + .../webgl/src/webgl/src/webgl_texture.cpp | 62 + .../webgl/src/webgl_transform_feedback.cpp | 63 + .../src/webgl/src/webgl_uniform_location.cpp | 63 + .../webgl/src/webgl_vertex_array_object.cpp | 63 + .../graphic/window_hap/entry/package.json | 1 + .../window_hap/entry/src/main/config.json | 62 + .../src/main/java/com/test/window/Test.java | 25 + .../java/com/test/window/TestAbility.java | 31 + .../entry/src/main/js/default/i18n/en-US.json | 6 + .../entry/src/main/js/default/i18n/zh-CN.json | 6 + .../src/main/js/default/pages/index/index.css | 24 + .../src/main/js/default/pages/index/index.hml | 21 + .../main/resources/base/element/string.json | 12 + .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../interfaces/kits/ndk/EGL/BUILD.gn | 36 + .../interfaces/kits/ndk/EGL/libEGL.ndk.json | 46 + .../interfaces/kits/ndk/GLES3/BUILD.gn | 38 + .../kits/ndk/GLES3/libGLESv3.ndk.json | 360 ++ .../interfaces/kits/ndk/KHR/BUILD.gn | 20 + .../kits/ndk/native_buffer/BUILD.gn | 28 + .../native_buffer/libnative_buffer.ndk.json | 9 + .../kits/ndk/native_drawing/BUILD.gn | 50 + .../native_drawing/libnative_drawing.ndk.json | 85 + .../interfaces/kits/ndk/native_image/BUILD.gn | 28 + .../ndk/native_image/libnative_image.ndk.json | 10 + .../interfaces/kits/ndk/native_vsync/BUILD.gn | 28 + .../ndk/native_vsync/libnative_vsync.ndk.json | 5 + .../kits/ndk/native_window/BUILD.gn | 34 + .../native_window/libnative_window.ndk.json | 18 + display_server/rosen/build/flutter/BUILD.gn | 593 +++ .../rosen/build/flutter/freetype/BUILD.gn | 77 + .../rosen/build/flutter/glfw/BUILD.gn | 170 + .../rosen/build/flutter/harfbuzz/BUILD.gn | 145 + .../rosen/build/flutter/icu/BUILD.gn | 591 +++ .../rosen/build/flutter/libjpeg/BUILD.gn | 104 + .../rosen/build/flutter/libpng/BUILD.gn | 64 + .../rosen/build/flutter/libtxt/BUILD.gn | 128 + .../rosen/build/flutter/libwebp/BUILD.gn | 190 + .../rosen/build/flutter/ohos_layers/BUILD.gn | 40 + .../rosen/build/flutter/sfntly/BUILD.gn | 140 + .../rosen/include/common/graphic_error.h | 118 + .../rosen/modules/2d_engine/README.md | 1 + .../modules/2d_engine/rosen_text/BUILD.gn | 30 + .../modules/2d_engine/rosen_text/config.gni | 26 + .../2d_engine/rosen_text/properties/BUILD.gn | 79 + .../properties/font_collection_base.h | 36 + .../properties/font_collection_txt.cpp | 94 + .../properties/font_collection_txt.h | 47 + .../properties/font_collection_txt_base.h | 37 + .../rosen_text/properties/placeholder_run.cpp | 29 + .../rosen_text/properties/placeholder_run.h | 44 + .../properties/rosen_converter_txt.cpp | 447 ++ .../properties/rosen_converter_txt.h | 57 + .../rosen_text/properties/text_style.cpp | 86 + .../rosen_text/properties/text_style.h | 118 + .../rosen_text/properties/typography_base.h | 58 + .../properties/typography_create_base.h | 44 + .../properties/typography_create_txt.cpp | 67 + .../properties/typography_create_txt.h | 47 + .../properties/typography_properties.h | 78 + .../properties/typography_style.cpp | 51 + .../rosen_text/properties/typography_style.h | 94 + .../rosen_text/properties/typography_txt.cpp | 144 + .../rosen_text/properties/typography_txt.h | 61 + .../modules/2d_engine/rosen_text/ui/BUILD.gn | 66 + .../2d_engine/rosen_text/ui/base_impl.h | 53 + .../rosen_text/ui/font_collection.cpp | 60 + .../2d_engine/rosen_text/ui/font_collection.h | 42 + .../2d_engine/rosen_text/ui/typography.cpp | 109 + .../2d_engine/rosen_text/ui/typography.h | 60 + .../rosen_text/ui/typography_create.cpp | 60 + .../rosen_text/ui/typography_create.h | 46 + .../rosen/modules/2d_graphics/.clang-format | 107 + .../2d_graphics/2d_graphics.versionscript | 26 + .../rosen/modules/2d_graphics/BUILD.gn | 250 + .../2d_graphics/include/c/drawing_bitmap.h | 132 + .../2d_graphics/include/c/drawing_brush.h | 117 + .../2d_graphics/include/c/drawing_canvas.h | 182 + .../2d_graphics/include/c/drawing_color.h | 64 + .../include/c/drawing_font_collection.h | 69 + .../2d_graphics/include/c/drawing_path.h | 166 + .../2d_graphics/include/c/drawing_pen.h | 254 + .../include/c/drawing_text_declaration.h | 89 + .../include/c/drawing_text_typography.h | 518 ++ .../2d_graphics/include/c/drawing_types.h | 141 + .../2d_graphics/include/draw/blend_mode.h | 63 + .../modules/2d_graphics/include/draw/brush.h | 78 + .../modules/2d_graphics/include/draw/canvas.h | 38 + .../modules/2d_graphics/include/draw/clip.h | 33 + .../modules/2d_graphics/include/draw/color.h | 145 + .../modules/2d_graphics/include/draw/path.h | 105 + .../modules/2d_graphics/include/draw/pen.h | 105 + .../modules/2d_graphics/include/draw/shadow.h | 31 + .../2d_graphics/include/effect/color_filter.h | 71 + .../2d_graphics/include/effect/color_matrix.h | 121 + .../2d_graphics/include/effect/color_space.h | 60 + .../2d_graphics/include/effect/filter.h | 63 + .../2d_graphics/include/effect/image_filter.h | 68 + .../2d_graphics/include/effect/mask_filter.h | 63 + .../2d_graphics/include/effect/path_effect.h | 73 + .../include/effect/shader_effect.h | 94 + .../2d_graphics/include/image/bitmap.h | 60 + .../modules/2d_graphics/include/image/image.h | 54 + .../2d_graphics/include/image/picture.h | 40 + .../modules/2d_graphics/include/text/text.h | 26 + .../2d_graphics/include/utils/camera3d.h | 52 + .../modules/2d_graphics/include/utils/log.h | 52 + .../2d_graphics/include/utils/matrix.h | 52 + .../modules/2d_graphics/include/utils/point.h | 305 ++ .../2d_graphics/include/utils/point3.h | 185 + .../modules/2d_graphics/include/utils/rect.h | 268 + .../2d_graphics/include/utils/round_rect.h | 112 + .../include/utils/sampling_options.h | 121 + .../2d_graphics/include/utils/scalar.h | 45 + .../modules/2d_graphics/include/utils/size.h | 173 + .../src/drawing/c/drawing_bitmap.cpp | 114 + .../src/drawing/c/drawing_brush.cpp | 62 + .../src/drawing/c/drawing_canvas.cpp | 109 + .../src/drawing/c/drawing_color.cpp | 22 + .../src/drawing/c/drawing_font_collection.cpp | 26 + .../src/drawing/c/drawing_path.cpp | 74 + .../2d_graphics/src/drawing/c/drawing_pen.cpp | 184 + .../src/drawing/c/drawing_text_typography.cpp | 357 ++ .../2d_graphics/src/drawing/draw/brush.cpp | 161 + .../2d_graphics/src/drawing/draw/color.cpp | 166 + .../src/drawing/draw/core_canvas.cpp | 234 + .../src/drawing/draw/core_canvas.h | 102 + .../2d_graphics/src/drawing/draw/path.cpp | 174 + .../2d_graphics/src/drawing/draw/pen.cpp | 200 + .../src/drawing/effect/color_filter.cpp | 98 + .../src/drawing/effect/color_space.cpp | 69 + .../2d_graphics/src/drawing/effect/filter.cpp | 78 + .../src/drawing/effect/image_filter.cpp | 92 + .../src/drawing/effect/mask_filter.cpp | 45 + .../src/drawing/effect/path_effect.cpp | 90 + .../src/drawing/effect/shader_effect.cpp | 149 + .../drawing/engine_adapter/impl_factory.cpp | 100 + .../src/drawing/engine_adapter/impl_factory.h | 57 + .../impl_interface/adapter_type.h | 32 + .../engine_adapter/impl_interface/base_impl.h | 52 + .../impl_interface/bitmap_impl.h | 51 + .../impl_interface/camera_impl.h | 55 + .../impl_interface/color_filter_impl.h | 49 + .../impl_interface/color_space_impl.h | 42 + .../impl_interface/core_canvas_impl.h | 115 + .../impl_interface/image_filter_impl.h | 50 + .../impl_interface/image_impl.h | 50 + .../impl_interface/mask_filter_impl.h | 44 + .../impl_interface/matrix_impl.h | 53 + .../impl_interface/path_effect_impl.h | 50 + .../engine_adapter/impl_interface/path_impl.h | 83 + .../impl_interface/picture_impl.h | 37 + .../impl_interface/shader_effect_impl.h | 66 + .../skia_adapter/skia_bitmap.cpp | 141 + .../engine_adapter/skia_adapter/skia_bitmap.h | 54 + .../skia_adapter/skia_camera.cpp | 98 + .../engine_adapter/skia_adapter/skia_camera.h | 59 + .../skia_adapter/skia_canvas.cpp | 559 ++ .../engine_adapter/skia_adapter/skia_canvas.h | 115 + .../skia_adapter/skia_color_filter.cpp | 70 + .../skia_adapter/skia_color_filter.h | 50 + .../skia_adapter/skia_color_space.cpp | 52 + .../skia_adapter/skia_color_space.h | 47 + .../skia_adapter/skia_image.cpp | 79 + .../engine_adapter/skia_adapter/skia_image.h | 58 + .../skia_adapter/skia_image_filter.cpp | 89 + .../skia_adapter/skia_image_filter.h | 51 + .../skia_adapter/skia_impl_factory.cpp | 113 + .../skia_adapter/skia_impl_factory.h | 57 + .../skia_adapter/skia_mask_filter.cpp | 36 + .../skia_adapter/skia_mask_filter.h | 45 + .../skia_adapter/skia_matrix.cpp | 94 + .../engine_adapter/skia_adapter/skia_matrix.h | 55 + .../skia_adapter/skia_paint.cpp | 234 + .../engine_adapter/skia_adapter/skia_paint.h | 63 + .../engine_adapter/skia_adapter/skia_path.cpp | 241 + .../engine_adapter/skia_adapter/skia_path.h | 80 + .../skia_adapter/skia_path_effect.cpp | 76 + .../skia_adapter/skia_path_effect.h | 49 + .../skia_adapter/skia_picture.cpp | 29 + .../skia_adapter/skia_picture.h | 43 + .../skia_adapter/skia_shader_effect.cpp | 194 + .../skia_adapter/skia_shader_effect.h | 58 + .../2d_graphics/src/drawing/image/bitmap.cpp | 93 + .../2d_graphics/src/drawing/image/image.cpp | 52 + .../2d_graphics/src/drawing/image/picture.cpp | 26 + .../2d_graphics/src/drawing/text/text.cpp | 20 + .../src/drawing/utils/camera3d.cpp | 82 + .../2d_graphics/src/drawing/utils/matrix.cpp | 70 + .../src/render_context/cache_data.cpp | 428 ++ .../src/render_context/cache_data.h | 162 + .../src/render_context/memory_handler.cpp | 32 + .../src/render_context/memory_handler.h | 34 + .../src/render_context/render_context.cpp | 421 ++ .../src/render_context/render_context.h | 155 + .../src/render_context/shader_cache.cpp | 164 + .../src/render_context/shader_cache.h | 77 + .../animation/window_animation/BUILD.gn | 44 + .../include/rs_iwindow_animation_controller.h | 78 + .../rs_iwindow_animation_finished_callback.h | 38 + .../rs_window_animation_finished_callback.h | 38 + ...window_animation_finished_callback_proxy.h | 41 + ..._window_animation_finished_callback_stub.h | 39 + .../include/rs_window_animation_log.h | 37 + .../include/rs_window_animation_proxy.h | 67 + .../include/rs_window_animation_stub.h | 63 + .../include/rs_window_animation_target.h | 47 + ..._window_animation_finish_callback_stub.cpp | 47 + .../rs_window_animation_finished_callback.cpp | 37 + ...ndow_animation_finished_callback_proxy.cpp | 60 + .../src/rs_window_animation_proxy.cpp | 392 ++ .../src/rs_window_animation_stub.cpp | 252 + .../src/rs_window_animation_target.cpp | 74 + .../animation/window_animation/test/BUILD.gn | 21 + .../window_animation/test/fuzztest/BUILD.gn | 18 + .../rswindowanimation_fuzzer/BUILD.gn | 51 + .../rswindowanimation_fuzzer/corpus/init | 14 + .../rswindowanimation_fuzzer/project.xml | 25 + .../rswindowanimation_fuzzer.cpp | 135 + .../rswindowanimation_fuzzer.h | 21 + .../window_animation/test/unittest/BUILD.gn | 64 + ...animation_finished_callback_proxy_test.cpp | 122 + ..._animation_finished_callback_stub_test.cpp | 104 + .../rs_window_animation_proxy_test.cpp | 308 ++ .../rs_window_animation_stub_test.cpp | 504 ++ .../rosen/modules/composer/BUILD.gn | 97 + .../hdi_backend/include/hdi_backend.h | 93 + .../composer/hdi_backend/include/hdi_device.h | 209 + .../include/hdi_framebuffer_surface.h | 70 + .../composer/hdi_backend/include/hdi_layer.h | 118 + .../hdi_backend/include/hdi_layer_info.h | 402 ++ .../composer/hdi_backend/include/hdi_log.h | 51 + .../composer/hdi_backend/include/hdi_output.h | 98 + .../composer/hdi_backend/include/hdi_screen.h | 73 + .../composer/hdi_backend/src/hdi_backend.cpp | 412 ++ .../composer/hdi_backend/src/hdi_device.cpp | 554 ++ .../src/hdi_framebuffer_surface.cpp | 141 + .../composer/hdi_backend/src/hdi_layer.cpp | 545 ++ .../composer/hdi_backend/src/hdi_output.cpp | 320 ++ .../composer/hdi_backend/src/hdi_screen.cpp | 261 + .../composer/hdi_backend/test/BUILD.gn | 22 + .../hdi_backend/test/fuzztest/BUILD.gn | 24 + .../test/fuzztest/hdibackend_fuzzer/BUILD.gn | 54 + .../fuzztest/hdibackend_fuzzer/corpus/init | 14 + .../hdibackend_fuzzer/hdibackend_fuzzer.cpp | 115 + .../hdibackend_fuzzer/hdibackend_fuzzer.h | 21 + .../fuzztest/hdibackend_fuzzer/project.xml | 25 + .../test/fuzztest/hdidevice_fuzzer/BUILD.gn | 54 + .../fuzztest/hdidevice_fuzzer/corpus/init | 14 + .../hdidevice_fuzzer/hdidevice_fuzzer.cpp | 177 + .../hdidevice_fuzzer/hdidevice_fuzzer.h | 21 + .../fuzztest/hdidevice_fuzzer/project.xml | 25 + .../test/fuzztest/hdilayer_fuzzer/BUILD.gn | 51 + .../test/fuzztest/hdilayer_fuzzer/corpus/init | 14 + .../hdilayer_fuzzer/hdilayer_fuzzer.cpp | 141 + .../hdilayer_fuzzer/hdilayer_fuzzer.h | 21 + .../test/fuzztest/hdilayer_fuzzer/project.xml | 25 + .../test/fuzztest/hdioutput_fuzzer/BUILD.gn | 53 + .../fuzztest/hdioutput_fuzzer/corpus/init | 14 + .../hdioutput_fuzzer/hdioutput_fuzzer.cpp | 116 + .../hdioutput_fuzzer/hdioutput_fuzzer.h | 21 + .../fuzztest/hdioutput_fuzzer/project.xml | 25 + .../test/fuzztest/hdiscreen_fuzzer/BUILD.gn | 51 + .../fuzztest/hdiscreen_fuzzer/corpus/init | 14 + .../hdiscreen_fuzzer/hdiscreen_fuzzer.cpp | 174 + .../hdiscreen_fuzzer/hdiscreen_fuzzer.h | 21 + .../fuzztest/hdiscreen_fuzzer/project.xml | 25 + .../hdi_backend/test/systemtest/BUILD.gn | 151 + .../test/systemtest/hdibackend_test.cpp | 185 + .../systemtest/hdilayer_context_systest.cpp | 121 + .../systemtest/hdilayer_context_systest.h | 43 + .../test/systemtest/hdilayer_test.cpp | 61 + .../test/systemtest/hdioutput_test.cpp | 113 + .../test/systemtest/hdiscreen_test.cpp | 103 + .../systemtest/mock_hdi_device_systest.cpp | 31 + .../test/systemtest/mock_hdi_device_systest.h | 89 + .../hdi_backend/test/unittest/BUILD.gn | 159 + .../test/unittest/hdibackend_test.cpp | 81 + .../test/unittest/hdidevice_test.cpp | 160 + .../unittest/hdiframebuffersurface_test.cpp | 44 + .../test/unittest/hdilayer_test.cpp | 159 + .../test/unittest/hdilayerinfo_test.cpp | 559 ++ .../test/unittest/hdioutput_test.cpp | 250 + .../test/unittest/hdiscreen_test.cpp | 382 ++ .../test/unittest/mock_hdi_device.cpp | 31 + .../test/unittest/mock_hdi_device.h | 90 + .../modules/composer/native_vsync/BUILD.gn | 58 + .../composer/native_vsync/native_vsync.cpp | 80 + .../rosen/modules/composer/vsync/BUILD.gn | 96 + .../vsync/include/ivsync_connection.h | 47 + .../vsync/include/vsync_connection_proxy.h | 41 + .../vsync/include/vsync_connection_stub.h | 35 + .../composer/vsync/include/vsync_controller.h | 60 + .../vsync/include/vsync_distributor.h | 111 + .../composer/vsync/include/vsync_generator.h | 98 + .../composer/vsync/include/vsync_log.h | 66 + .../composer/vsync/include/vsync_sampler.h | 105 + .../vsync/src/vsync_connection_proxy.cpp | 73 + .../vsync/src/vsync_connection_stub.cpp | 62 + .../composer/vsync/src/vsync_controller.cpp | 86 + .../composer/vsync/src/vsync_distributor.cpp | 385 ++ .../composer/vsync/src/vsync_generator.cpp | 269 + .../composer/vsync/src/vsync_receiver.cpp | 140 + .../composer/vsync/src/vsync_sampler.cpp | 257 + .../modules/composer/vsync/test/BUILD.gn | 22 + .../composer/vsync/test/fuzztest/BUILD.gn | 24 + .../fuzztest/vsyncconnection_fuzzer/BUILD.gn | 50 + .../vsyncconnection_fuzzer/corpus/init | 14 + .../vsyncconnection_fuzzer/project.xml | 25 + .../vsyncconnection_fuzzer.cpp | 86 + .../vsyncconnection_fuzzer.h | 21 + .../fuzztest/vsynccontroller_fuzzer/BUILD.gn | 49 + .../vsynccontroller_fuzzer/corpus/init | 14 + .../vsynccontroller_fuzzer/project.xml | 25 + .../vsynccontroller_fuzzer.cpp | 81 + .../vsynccontroller_fuzzer.h | 21 + .../fuzztest/vsyncdistributor_fuzzer/BUILD.gn | 50 + .../vsyncdistributor_fuzzer/corpus/init | 14 + .../vsyncdistributor_fuzzer/project.xml | 25 + .../vsyncdistributor_fuzzer.cpp | 87 + .../vsyncdistributor_fuzzer.h | 21 + .../fuzztest/vsyncreceiver_fuzzer/BUILD.gn | 51 + .../fuzztest/vsyncreceiver_fuzzer/corpus/init | 14 + .../fuzztest/vsyncreceiver_fuzzer/project.xml | 25 + .../vsyncreceiver_fuzzer.cpp | 109 + .../vsyncreceiver_fuzzer.h | 21 + .../fuzztest/vsyncsampler_fuzzer/BUILD.gn | 49 + .../fuzztest/vsyncsampler_fuzzer/corpus/init | 14 + .../fuzztest/vsyncsampler_fuzzer/project.xml | 25 + .../vsyncsampler_fuzzer.cpp | 81 + .../vsyncsampler_fuzzer/vsyncsampler_fuzzer.h | 21 + .../composer/vsync/test/systemtest/BUILD.gn | 57 + .../vsync/test/systemtest/vsync_test.cpp | 203 + .../composer/vsync/test/unittest/BUILD.gn | 150 + .../vsync/test/unittest/native_vsync_test.cpp | 139 + .../test/unittest/vsync_connection_test.cpp | 121 + .../test/unittest/vsync_controller_test.cpp | 100 + .../test/unittest/vsync_distributor_test.cpp | 257 + .../test/unittest/vsync_generator_test.cpp | 186 + .../test/unittest/vsync_receiver_test.cpp | 126 + .../test/unittest/vsync_sampler_test.cpp | 217 + .../modules/effect/color_picker/BUILD.gn | 67 + .../color_picker/include/color_picker.h | 55 + .../color_picker/include/effect_errors.h | 30 + .../effect/color_picker/include/effect_type.h | 29 + .../color_picker/include/effect_utils.h | 31 + .../effect/color_picker/src/color_picker.cpp | 106 + .../rosen/modules/effect/effectChain/BUILD.gn | 99 + .../effect/effectChain/include/algo_filter.h | 46 + .../effectChain/include/brightness_filter.h | 40 + .../effect/effectChain/include/builder.h | 52 + .../effectChain/include/contrast_filter.h | 40 + .../effect/effectChain/include/ec_log.h | 40 + .../effect/effectChain/include/filter.h | 68 + .../effectChain/include/filter_factory.h | 45 + .../include/gaussian_blur_filter.h | 47 + .../include/horizontal_blur_filter.h | 49 + .../effect/effectChain/include/image_chain.h | 43 + .../effect/effectChain/include/input.h | 50 + .../modules/effect/effectChain/include/mesh.h | 55 + .../effect/effectChain/include/output.h | 54 + .../effect/effectChain/include/program.h | 42 + .../effectChain/include/saturation_filter.h | 41 + .../effect/effectChain/include/scale_filter.h | 42 + .../include/vertical_blur_filter.h | 49 + .../effect/effectChain/src/algo_filter.cpp | 73 + .../effectChain/src/brightness_filter.cpp | 74 + .../effect/effectChain/src/builder.cpp | 147 + .../effectChain/src/contrast_filter.cpp | 74 + .../modules/effect/effectChain/src/filter.cpp | 90 + .../effect/effectChain/src/filter_factory.cpp | 75 + .../effectChain/src/gaussian_blur_filter.cpp | 62 + .../src/horizontal_blur_filter.cpp | 99 + .../effect/effectChain/src/image_chain.cpp | 65 + .../modules/effect/effectChain/src/input.cpp | 115 + .../modules/effect/effectChain/src/mesh.cpp | 57 + .../modules/effect/effectChain/src/output.cpp | 156 + .../effect/effectChain/src/program.cpp | 78 + .../effectChain/src/saturation_filter.cpp | 78 + .../effect/effectChain/src/scale_filter.cpp | 76 + .../effectChain/src/vertical_blur_filter.cpp | 97 + .../rosen/modules/effect/effect_config.gni | 19 + .../rosen/modules/effect/egl/BUILD.gn | 60 + .../modules/effect/egl/include/egl_manager.h | 65 + .../modules/effect/egl/src/egl_manager.cpp | 123 + .../modules/effect/skia_effectChain/BUILD.gn | 84 + .../skia_effectChain/include/sk_image_chain.h | 74 + .../include/sk_image_filter_factory.h | 31 + .../skia_effectChain/src/sk_image_chain.cpp | 210 + .../src/sk_image_filter_factory.cpp | 53 + .../rosen/modules/effect/test/BUILD.gn | 54 + .../effect/test/resource/images/test.jpg | Bin 0 -> 2431 bytes .../effect/test/resource/images/test.png | Bin 0 -> 389 bytes .../modules/effect/test/test_effect_chain.cpp | 30 + .../modules/effect/test/unittest/BUILD.gn | 91 + .../test/unittest/algo_filter_unittest.cpp | 165 + .../test/unittest/algo_filter_unittest.h | 33 + .../unittest/brightness_filter_unittest.cpp | 211 + .../unittest/brightness_filter_unittest.h | 33 + .../test/unittest/color_picker_unittest.cpp | 277 + .../test/unittest/color_picker_unittest.h | 33 + .../unittest/contrast_filter_unittest.cpp | 211 + .../test/unittest/contrast_filter_unittest.h | 33 + .../test/unittest/effect_chain_unittest.cpp | 240 + .../test/unittest/effect_chain_unittest.h | 33 + .../test/unittest/filter_factory_unittest.cpp | 93 + .../test/unittest/filter_factory_unittest.h | 33 + .../effect/test/unittest/filter_unittest.cpp | 521 ++ .../effect/test/unittest/filter_unittest.h | 33 + .../gaussian_blur_filter_unittest.cpp | 161 + .../unittest/gaussian_blur_filter_unittest.h | 33 + .../horizontal_blur_filter_unittest.cpp | 246 + .../horizontal_blur_filter_unittest.h | 33 + .../test/unittest/image_chain_unittest.cpp | 122 + .../test/unittest/image_chain_unittest.h | 33 + .../effect/test/unittest/input_unittest.cpp | 176 + .../effect/test/unittest/input_unittest.h | 33 + .../effect/test/unittest/mesh_unittest.cpp | 71 + .../effect/test/unittest/mesh_unittest.h | 33 + .../effect/test/unittest/output_unittest.cpp | 409 ++ .../effect/test/unittest/output_unittest.h | 33 + .../effect/test/unittest/program_unittest.cpp | 121 + .../effect/test/unittest/program_unittest.h | 33 + .../unittest/saturation_filter_unittest.cpp | 215 + .../unittest/saturation_filter_unittest.h | 33 + .../test/unittest/scale_filter_unittest.cpp | 208 + .../test/unittest/scale_filter_unittest.h | 33 + .../test/unittest/test_picture_files.cpp | 277 + .../effect/test/unittest/test_picture_files.h | 28 + .../vertical_blur_filter_unittest.cpp | 246 + .../unittest/vertical_blur_filter_unittest.h | 33 + .../rosen/modules/frame_analyzer/BUILD.gn | 74 + .../frame_analyzer/export/frame_collector.h | 76 + .../frame_analyzer/export/frame_info.h | 145 + .../frame_analyzer/export/frame_painter.h | 52 + .../frame_analyzer/export/ring_queue.h | 168 + .../frame_analyzer/src/frame_collector.cpp | 211 + .../frame_analyzer/src/frame_painter.cpp | 165 + .../frame_analyzer/src/frame_saver.cpp | 76 + .../modules/frame_analyzer/src/frame_saver.h | 39 + .../src/mingw/frame_collector.cpp | 53 + .../src/mingw/frame_painter.cpp | 35 + .../modules/glfw_render_context/BUILD.gn | 48 + .../export/glfw_render_context.h | 80 + .../src/glfw_render_context.cpp | 221 + .../rosen/modules/platform/BUILD.gn | 152 + .../rosen/modules/platform/config.gni | 35 + .../modules/platform/eventhandler/dumper.h | 40 + .../platform/eventhandler/event_handler.h | 963 ++++ .../eventhandler/event_handler_errors.h | 46 + .../platform/eventhandler/event_queue.h | 264 + .../platform/eventhandler/event_runner.h | 223 + .../eventhandler/file_descriptor_listener.h | 98 + .../platform/eventhandler/inner_event.h | 530 ++ .../modules/platform/eventhandler/logger.h | 33 + .../native_implement_eventhandler.h | 86 + .../eventhandler_impl/epoll_io_waiter.h | 77 + .../epoll_io_waiter_mingw.cpp | 146 + .../eventhandler_impl/event_handler.cpp | 387 ++ .../eventhandler_impl/event_handler_utils.h | 80 + .../eventhandler_impl/event_inner_runner.h | 69 + .../eventhandler_impl/event_queue.cpp | 621 +++ .../eventhandler_impl/event_runner.cpp | 569 ++ .../file_descriptor_listener.cpp | 32 + .../eventhandler_impl/inner_event.cpp | 272 + .../platform/eventhandler_impl/io_waiter.h | 89 + .../native_implement_eventhandler.cpp | 166 + .../eventhandler_impl/none_io_waiter.cpp | 93 + .../eventhandler_impl/none_io_waiter.h | 54 + .../eventhandler_impl/thread_local_data.h | 93 + .../platform/image_native/image_type.h | 183 + .../platform/image_native/pixel_map.cpp | 59 + .../modules/platform/image_native/pixel_map.h | 247 + .../image_native/pixel_map_rosen_utils.cpp | 36 + .../image_native/pixel_map_rosen_utils.h | 37 + .../platform/ipc_core/ipc_object_proxy.h | 119 + .../platform/ipc_core/ipc_object_stub.cpp | 125 + .../platform/ipc_core/ipc_object_stub.h | 97 + .../modules/platform/ipc_core/ipc_types.h | 131 + .../platform/ipc_core/iremote_broker.cpp | 43 + .../platform/ipc_core/iremote_broker.h | 125 + .../platform/ipc_core/iremote_object.cpp | 58 + .../platform/ipc_core/iremote_object.h | 87 + .../modules/platform/ipc_core/iremote_proxy.h | 43 + .../modules/platform/ipc_core/iremote_stub.h | 44 + .../platform/ipc_core/message_option.cpp | 38 + .../platform/ipc_core/message_option.h | 39 + .../platform/ipc_core/message_parcel.cpp | 140 + .../platform/ipc_core/message_parcel.h | 80 + .../modules/platform/ipc_core/peer_holder.cpp | 25 + .../modules/platform/ipc_core/peer_holder.h | 34 + .../rosen/modules/platform/utils/ashmem.h | 205 + .../modules/platform/utils/directory_ex.cpp | 325 ++ .../modules/platform/utils/directory_ex.h | 146 + .../rosen/modules/platform/utils/errors.h | 146 + .../rosen/modules/platform/utils/flat_obj.h | 77 + .../rosen/modules/platform/utils/nocopyable.h | 54 + .../rosen/modules/platform/utils/parcel.cpp | 684 +++ .../rosen/modules/platform/utils/parcel.h | 837 +++ .../rosen/modules/platform/utils/refbase.cpp | 613 +++ .../rosen/modules/platform/utils/refbase.h | 1489 ++++++ .../rosen/modules/platform/utils/singleton.h | 213 + .../rosen/modules/platform/utils/utils_log.h | 62 + .../rosen/modules/render_frame_trace/BUILD.gn | 35 + .../include/render_frame_trace.h | 54 + .../include/render_frame_trace_impl.h | 47 + .../src/render_frame_trace.cpp | 37 + .../src/render_frame_trace_impl.cpp | 82 + .../rosen/modules/render_service/BUILD.gn | 126 + .../modules/render_service/core/main.cpp | 51 + .../core/pipeline/rs_base_render_engine.cpp | 316 ++ .../core/pipeline/rs_base_render_engine.h | 181 + .../core/pipeline/rs_base_render_util.cpp | 1305 +++++ .../core/pipeline/rs_base_render_util.h | 128 + .../core/pipeline/rs_cold_start_thread.cpp | 288 + .../core/pipeline/rs_cold_start_thread.h | 96 + .../core/pipeline/rs_composer_adapter.cpp | 735 +++ .../core/pipeline/rs_composer_adapter.h | 93 + .../core/pipeline/rs_divided_render_util.cpp | 160 + .../core/pipeline/rs_divided_render_util.h | 48 + .../core/pipeline/rs_egl_image_manager.cpp | 295 ++ .../core/pipeline/rs_egl_image_manager.h | 85 + .../core/pipeline/rs_main_thread.cpp | 1258 +++++ .../core/pipeline/rs_main_thread.h | 239 + .../pipeline/rs_physical_screen_processor.cpp | 98 + .../pipeline/rs_physical_screen_processor.h | 44 + .../core/pipeline/rs_processor.cpp | 196 + .../core/pipeline/rs_processor.h | 65 + .../core/pipeline/rs_processor_factory.cpp | 42 + .../core/pipeline/rs_processor_factory.h | 29 + .../core/pipeline/rs_qos_thread.cpp | 115 + .../core/pipeline/rs_qos_thread.h | 61 + .../core/pipeline/rs_render_engine.cpp | 206 + .../core/pipeline/rs_render_engine.h | 53 + .../core/pipeline/rs_render_service.cpp | 321 ++ .../core/pipeline/rs_render_service.h | 75 + .../pipeline/rs_render_service_connection.cpp | 554 ++ .../pipeline/rs_render_service_connection.h | 187 + .../pipeline/rs_render_service_listener.cpp | 95 + .../pipeline/rs_render_service_listener.h | 40 + .../pipeline/rs_render_service_visitor.cpp | 234 + .../core/pipeline/rs_render_service_visitor.h | 73 + .../core/pipeline/rs_surface_capture_task.cpp | 532 ++ .../core/pipeline/rs_surface_capture_task.h | 103 + .../core/pipeline/rs_uni_render_engine.cpp | 34 + .../core/pipeline/rs_uni_render_engine.h | 37 + .../core/pipeline/rs_uni_render_judgement.cpp | 84 + .../core/pipeline/rs_uni_render_judgement.h | 53 + .../core/pipeline/rs_uni_render_listener.cpp | 41 + .../core/pipeline/rs_uni_render_listener.h | 37 + .../rs_uni_render_mirror_processor.cpp | 87 + .../pipeline/rs_uni_render_mirror_processor.h | 45 + .../core/pipeline/rs_uni_render_processor.cpp | 113 + .../core/pipeline/rs_uni_render_processor.h | 43 + .../core/pipeline/rs_uni_render_util.cpp | 211 + .../core/pipeline/rs_uni_render_util.h | 51 + .../core/pipeline/rs_uni_render_visitor.cpp | 1228 +++++ .../core/pipeline/rs_uni_render_visitor.h | 144 + .../core/pipeline/rs_unmarshal_thread.cpp | 74 + .../core/pipeline/rs_unmarshal_thread.h | 50 + .../pipeline/rs_virtual_screen_processor.cpp | 116 + .../pipeline/rs_virtual_screen_processor.h | 40 + .../core/screen_manager/rs_screen.cpp | 622 +++ .../core/screen_manager/rs_screen.h | 175 + .../core/screen_manager/rs_screen_manager.cpp | 958 ++++ .../core/screen_manager/rs_screen_manager.h | 324 ++ .../rs_render_service_connection_stub.cpp | 686 +++ .../rs_render_service_connection_stub.h | 37 + .../transaction/rs_render_service_stub.cpp | 68 + .../core/transaction/rs_render_service_stub.h | 37 + .../modules/render_service_base/BUILD.gn | 218 + .../modules/render_service_base/config.gni | 63 + .../include/animation/rs_animation_common.h | 37 + .../include/animation/rs_animation_fraction.h | 66 + .../include/animation/rs_animation_manager.h | 66 + .../animation/rs_animation_timing_protocol.h | 118 + .../animation/rs_cubic_bezier_interpolator.h | 101 + .../include/animation/rs_interpolator.h | 101 + .../include/animation/rs_render_animation.h | 173 + .../animation/rs_render_curve_animation.h | 61 + .../animation/rs_render_keyframe_animation.h | 52 + .../animation/rs_render_path_animation.h | 102 + .../animation/rs_render_property_animation.h | 74 + .../animation/rs_render_spring_animation.h | 69 + .../include/animation/rs_render_transition.h | 54 + .../animation/rs_render_transition_effect.h | 122 + .../animation/rs_spring_interpolator.h | 38 + .../include/animation/rs_spring_model.h | 61 + .../include/animation/rs_steps_interpolator.h | 47 + .../include/animation/rs_transition_effect.h | 65 + .../include/animation/rs_value_estimator.h | 206 + .../include/command/rs_animation_command.h | 147 + .../include/command/rs_base_node_command.h | 72 + .../include/command/rs_canvas_node_command.h | 52 + .../include/command/rs_command.h | 88 + .../include/command/rs_command_factory.h | 57 + .../include/command/rs_command_templates.h | 92 + .../include/command/rs_display_node_command.h | 57 + .../include/command/rs_message_processor.h | 54 + .../include/command/rs_node_command.h | 131 + .../include/command/rs_proxy_node_command.h | 44 + .../include/command/rs_root_node_command.h | 58 + .../include/command/rs_surface_node_command.h | 119 + .../include/common/rs_color.h | 79 + .../include/common/rs_color_palette.h | 94 + .../include/common/rs_common_def.h | 183 + .../include/common/rs_macros.h | 70 + .../include/common/rs_matrix3.h | 528 ++ .../include/common/rs_obj_abs_geometry.h | 74 + .../include/common/rs_obj_geometry.h | 307 ++ .../include/common/rs_occlusion_region.h | 314 ++ .../include/common/rs_rect.h | 214 + .../include/common/rs_shared_context.h | 49 + .../include/common/rs_singleton.h | 57 + .../include/common/rs_thread_handler.h | 53 + .../include/common/rs_thread_looper.h | 38 + .../include/common/rs_vector2.h | 273 + .../include/common/rs_vector3.h | 272 + .../include/common/rs_vector4.h | 479 ++ .../include/delegate/rs_delegate.h | 28 + .../include/delegate/rs_functional_delegate.h | 42 + .../ipc_callbacks/buffer_available_callback.h | 41 + .../ipc_callbacks/iapplication_agent.h | 46 + .../rs_iocclusion_change_callback.h | 37 + .../rs_irender_mode_change_callback.h | 39 + .../ipc_callbacks/screen_change_callback.h | 40 + .../ipc_callbacks/surface_capture_callback.h | 42 + .../modifier/rs_animatable_arithmetic.h | 87 + .../include/modifier/rs_modifier_type.h | 100 + .../include/modifier/rs_modifiers_def.in | 97 + .../include/modifier/rs_render_modifier.h | 160 + .../include/modifier/rs_render_property.h | 271 + .../include/pipeline/rs_base_render_node.h | 236 + .../include/pipeline/rs_canvas_render_node.h | 62 + .../include/pipeline/rs_context.h | 77 + .../pipeline/rs_dirty_region_manager.h | 106 + .../include/pipeline/rs_display_render_node.h | 199 + .../include/pipeline/rs_draw_cmd.h | 844 +++ .../include/pipeline/rs_draw_cmd_list.h | 99 + .../include/pipeline/rs_frame_report.h | 59 + .../include/pipeline/rs_occlusion_config.h | 45 + .../include/pipeline/rs_paint_filter_canvas.h | 91 + .../include/pipeline/rs_proxy_render_node.h | 63 + .../include/pipeline/rs_recording_canvas.h | 141 + .../include/pipeline/rs_render_node.h | 140 + .../include/pipeline/rs_render_node_map.h | 67 + .../include/pipeline/rs_render_result.h | 49 + .../include/pipeline/rs_root_render_node.h | 85 + .../include/pipeline/rs_surface_handler.h | 181 + .../include/pipeline/rs_surface_render_node.h | 622 +++ .../platform/common/rs_accessibility.h | 43 + .../platform/common/rs_event_detector.h | 119 + .../platform/common/rs_event_manager.h | 57 + .../include/platform/common/rs_innovation.h | 69 + .../include/platform/common/rs_log.h | 60 + .../platform/common/rs_system_properties.h | 109 + .../include/platform/drawing/rs_surface.h | 63 + .../platform/drawing/rs_surface_converter.h | 31 + .../platform/drawing/rs_surface_frame.h | 47 + .../platform/drawing/rs_vsync_client.h | 36 + .../ohos/overdraw/rs_canvas_listener.h | 70 + .../rs_cpu_overdraw_canvas_listener.h | 69 + .../rs_gpu_overdraw_canvas_listener.h | 68 + .../ohos/overdraw/rs_listened_canvas.h | 63 + .../ohos/overdraw/rs_overdraw_controller.h | 95 + .../platform/ohos/rs_irender_service.h | 47 + .../ohos/rs_irender_service_connection.h | 187 + .../include/property/rs_properties.h | 251 + .../include/property/rs_properties_def.h | 59 + .../include/property/rs_properties_painter.h | 55 + .../include/property/rs_property_trace.h | 65 + .../include/render/rs_blur_filter.h | 41 + .../include/render/rs_border.h | 97 + .../include/render/rs_filter.h | 67 + .../include/render/rs_image.h | 117 + .../include/render/rs_image_cache.h | 47 + .../include/render/rs_mask.h | 92 + .../include/render/rs_material_filter.h | 73 + .../include/render/rs_path.h | 65 + .../include/render/rs_shader.h | 47 + .../include/render/rs_shadow.h | 76 + .../include/render/rs_skia_filter.h | 43 + .../screen_manager/rs_screen_capability.h | 74 + .../include/screen_manager/rs_screen_data.h | 63 + .../screen_manager/rs_screen_hdr_capability.h | 58 + .../screen_manager/rs_screen_mode_info.h | 56 + .../include/screen_manager/rs_screen_props.h | 52 + .../rs_virtual_screen_resolution.h | 50 + .../include/screen_manager/screen_types.h | 163 + .../include/transaction/rs_ashmem_helper.h | 62 + .../include/transaction/rs_irender_client.h | 44 + .../transaction/rs_marshalling_helper.h | 228 + .../include/transaction/rs_occlusion_data.h | 50 + .../transaction/rs_render_service_client.h | 166 + .../include/transaction/rs_transaction_data.h | 126 + .../transaction/rs_transaction_proxy.h | 86 + .../include/visitor/rs_node_visitor.h | 54 + .../src/animation/rs_animation_fraction.cpp | 221 + .../src/animation/rs_animation_manager.cpp | 152 + .../src/animation/rs_interpolator.cpp | 114 + .../src/animation/rs_render_animation.cpp | 279 + .../animation/rs_render_curve_animation.cpp | 115 + .../rs_render_keyframe_animation.cpp | 139 + .../animation/rs_render_path_animation.cpp | 318 ++ .../rs_render_property_animation.cpp | 156 + .../animation/rs_render_spring_animation.cpp | 190 + .../src/animation/rs_render_transition.cpp | 136 + .../animation/rs_render_transition_effect.cpp | 228 + .../src/animation/rs_spring_interpolator.cpp | 69 + .../src/animation/rs_spring_model.cpp | 272 + .../src/animation/rs_steps_interpolator.cpp | 64 + .../src/animation/rs_transition_effect.cpp | 108 + .../src/animation/rs_value_estimator.cpp | 79 + .../src/command/rs_animation_command.cpp | 66 + .../src/command/rs_base_node_command.cpp | 122 + .../src/command/rs_canvas_node_command.cpp | 46 + .../src/command/rs_command_factory.cpp | 70 + .../src/command/rs_display_node_command.cpp | 85 + .../src/command/rs_message_processor.cpp | 98 + .../src/command/rs_node_command.cpp | 39 + .../src/command/rs_proxy_node_command.cpp | 39 + .../src/command/rs_root_node_command.cpp | 69 + .../src/command/rs_surface_node_command.cpp | 152 + .../src/common/rs_color.cpp | 168 + .../src/common/rs_common_def.cpp | 137 + .../src/common/rs_obj_abs_geometry.cpp | 264 + .../src/common/rs_occlusion_region.cpp | 364 ++ .../src/common/rs_shared_context.cpp | 99 + .../src/common/rs_thread_handler_generic.cpp | 103 + .../src/common/rs_thread_handler_generic.h | 46 + .../src/common/rs_thread_looper_generic.cpp | 45 + .../src/common/rs_thread_looper_generic.h | 39 + .../src/common/rs_thread_looper_impl.cpp | 158 + .../src/common/rs_thread_looper_impl.h | 84 + .../src/delegate/rs_functional_delegate.cpp | 30 + .../buffer_available_callback_proxy.cpp | 47 + .../buffer_available_callback_proxy.h | 38 + .../buffer_available_callback_stub.cpp | 46 + .../buffer_available_callback_stub.h | 36 + .../rs_application_agent_proxy.cpp | 90 + .../rs_application_agent_proxy.h | 40 + .../rs_application_agent_stub.cpp | 55 + .../ipc_callbacks/rs_application_agent_stub.h | 36 + .../rs_occlusion_change_callback_proxy.cpp | 48 + .../rs_occlusion_change_callback_proxy.h | 36 + .../rs_occlusion_change_callback_stub.cpp | 46 + .../rs_occlusion_change_callback_stub.h | 36 + .../rs_render_mode_change_callback_proxy.cpp | 48 + .../rs_render_mode_change_callback_proxy.h | 40 + .../rs_render_mode_change_callback_stub.cpp | 45 + .../rs_render_mode_change_callback_stub.h | 38 + .../screen_change_callback_proxy.cpp | 48 + .../screen_change_callback_proxy.h | 38 + .../screen_change_callback_stub.cpp | 45 + .../screen_change_callback_stub.h | 36 + .../surface_capture_callback_proxy.cpp | 46 + .../surface_capture_callback_proxy.h | 38 + .../surface_capture_callback_stub.cpp | 46 + .../surface_capture_callback_stub.h | 36 + .../src/modifier/rs_render_modifier.cpp | 200 + .../src/modifier/rs_render_property.cpp | 283 + .../src/pipeline/rs_base_render_node.cpp | 477 ++ .../src/pipeline/rs_canvas_render_node.cpp | 118 + .../src/pipeline/rs_context.cpp | 28 + .../src/pipeline/rs_dirty_region_manager.cpp | 238 + .../src/pipeline/rs_display_render_node.cpp | 200 + .../src/pipeline/rs_draw_cmd.cpp | 1529 ++++++ .../src/pipeline/rs_draw_cmd_list.cpp | 291 + .../src/pipeline/rs_occlusion_config.cpp | 50 + .../src/pipeline/rs_paint_filter_canvas.cpp | 110 + .../src/pipeline/rs_proxy_render_node.cpp | 119 + .../src/pipeline/rs_recording_canvas.cpp | 406 ++ .../src/pipeline/rs_render_node.cpp | 325 ++ .../src/pipeline/rs_render_node_map.cpp | 112 + .../src/pipeline/rs_root_render_node.cpp | 85 + .../src/pipeline/rs_surface_handler.cpp | 47 + .../src/pipeline/rs_surface_render_node.cpp | 478 ++ .../render_service_base/src/platform/BUILD.gn | 28 + .../src/platform/darwin/BUILD.gn | 70 + .../src/platform/darwin/rs_accessibility.cpp | 35 + .../src/platform/darwin/rs_ashmem_helper.cpp | 103 + .../src/platform/darwin/rs_frame_report.cpp | 57 + .../platform/darwin/rs_marshalling_helper.cpp | 430 ++ .../darwin/rs_render_service_client.cpp | 265 + .../src/platform/darwin/rs_surface_darwin.cpp | 202 + .../src/platform/darwin/rs_surface_darwin.h | 62 + .../darwin/rs_surface_frame_darwin.cpp | 70 + .../platform/darwin/rs_surface_frame_darwin.h | 52 + .../darwin/rs_surface_ohos_converter.cpp | 31 + .../platform/darwin/rs_system_properties.cpp | 120 + .../darwin/rs_vsync_client_darwin.cpp | 74 + .../platform/darwin/rs_vsync_client_darwin.h | 77 + .../src/platform/ohos/BUILD.gn | 146 + .../ohos/backend/rs_surface_frame_ohos_gl.cpp | 77 + .../ohos/backend/rs_surface_frame_ohos_gl.h | 51 + .../backend/rs_surface_frame_ohos_raster.cpp | 101 + .../backend/rs_surface_frame_ohos_raster.h | 71 + .../ohos/backend/rs_surface_ohos_gl.cpp | 142 + .../ohos/backend/rs_surface_ohos_gl.h | 57 + .../ohos/backend/rs_surface_ohos_raster.cpp | 117 + .../ohos/backend/rs_surface_ohos_raster.h | 48 + .../rs_cpu_overdraw_canvas_listener.cpp | 215 + .../rs_gpu_overdraw_canvas_listener.cpp | 145 + .../ohos/overdraw/rs_listened_canvas.cpp | 174 + .../ohos/overdraw/rs_overdraw_controller.cpp | 144 + .../src/platform/ohos/rs_accessibility.cpp | 79 + .../src/platform/ohos/rs_ashmem_helper.cpp | 283 + .../src/platform/ohos/rs_event_detector.cpp | 106 + .../src/platform/ohos/rs_event_manager.cpp | 212 + .../src/platform/ohos/rs_frame_report.cpp | 150 + .../src/platform/ohos/rs_innovation.cpp | 142 + .../src/platform/ohos/rs_log.cpp | 75 + .../platform/ohos/rs_marshalling_helper.cpp | 916 ++++ .../ohos/rs_render_service_client.cpp | 616 +++ .../ohos/rs_render_service_connect_hub.cpp | 180 + .../ohos/rs_render_service_connect_hub.h | 77 + .../rs_render_service_connection_proxy.cpp | 1014 ++++ .../ohos/rs_render_service_connection_proxy.h | 128 + .../platform/ohos/rs_render_service_proxy.cpp | 59 + .../platform/ohos/rs_render_service_proxy.h | 39 + .../platform/ohos/rs_surface_frame_ohos.cpp | 27 + .../src/platform/ohos/rs_surface_frame_ohos.h | 36 + .../src/platform/ohos/rs_surface_ohos.cpp | 52 + .../src/platform/ohos/rs_surface_ohos.h | 55 + .../ohos/rs_surface_ohos_converter.cpp | 38 + .../platform/ohos/rs_system_properties.cpp | 184 + .../platform/ohos/rs_vsync_client_ohos.cpp | 82 + .../src/platform/ohos/rs_vsync_client_ohos.h | 51 + .../src/platform/windows/BUILD.gn | 70 + .../src/platform/windows/rs_accessibility.cpp | 35 + .../src/platform/windows/rs_ashmem_helper.cpp | 103 + .../src/platform/windows/rs_frame_report.cpp | 58 + .../windows/rs_marshalling_helper.cpp | 430 ++ .../windows/rs_render_service_client.cpp | 265 + .../windows/rs_surface_frame_windows.cpp | 70 + .../windows/rs_surface_frame_windows.h | 52 + .../platform/windows/rs_surface_windows.cpp | 202 + .../src/platform/windows/rs_surface_windows.h | 62 + .../platform/windows/rs_system_properties.cpp | 120 + .../windows/rs_vsync_client_windows.cpp | 74 + .../windows/rs_vsync_client_windows.h | 77 + .../src/property/rs_properties.cpp | 1241 +++++ .../src/property/rs_properties_painter.cpp | 492 ++ .../src/property/rs_property_trace.cpp | 153 + .../src/render/rs_blur_filter.cpp | 70 + .../src/render/rs_border.cpp | 488 ++ .../src/render/rs_filter.cpp | 70 + .../src/render/rs_image.cpp | 344 ++ .../src/render/rs_image_cache.cpp | 56 + .../src/render/rs_mask.cpp | 213 + .../src/render/rs_material_filter.cpp | 128 + .../src/render/rs_path.cpp | 115 + .../src/render/rs_shader.cpp | 43 + .../src/render/rs_shadow.cpp | 107 + .../src/render/rs_skia_filter.cpp | 33 + .../screen_manager/rs_screen_capability.cpp | 207 + .../src/screen_manager/rs_screen_data.cpp | 140 + .../rs_screen_hdr_capability.cpp | 134 + .../screen_manager/rs_screen_mode_info.cpp | 100 + .../src/screen_manager/rs_screen_props.cpp | 87 + .../rs_virtual_screen_resolution.cpp | 74 + .../src/transaction/rs_occlusion_data.cpp | 46 + .../src/transaction/rs_transaction_data.cpp | 149 + .../src/transaction/rs_transaction_proxy.cpp | 184 + .../modules/render_service_base/test/BUILD.gn | 34 + .../test/fuzztest/BUILD.gn | 18 + .../fuzztest/rsanimationbase_fuzzer/BUILD.gn | 50 + .../rsanimationbase_fuzzer/corpus/init | 14 + .../rsanimationbase_fuzzer/project.xml | 25 + .../rsanimationbase_fuzzer.cpp | 247 + .../rsanimationbase_fuzzer.h | 21 + .../modules/render_service_base/test/main.cpp | 44 + .../test/unittest/BUILD.gn | 20 + .../test/unittest/animation/BUILD.gn | 63 + .../animation/rs_animation_fraction_test.cpp | 132 + .../animation/rs_animation_manager_test.cpp | 182 + .../animation/rs_interpolator_test.cpp | 117 + .../animation/rs_property_trace_test.cpp | 165 + .../rs_render_curve_animation_test.cpp | 118 + .../rs_render_keyframe_animation_test.cpp | 177 + .../rs_render_path_animation_test.cpp | 266 + .../rs_render_spring_animation_test.cpp | 171 + .../rs_render_transition_effect_test.cpp | 147 + .../animation/rs_spring_model_test.cpp | 345 ++ .../animation/rs_value_estimator_test.cpp | 93 + .../modules/render_service_client/BUILD.gn | 174 + .../core/animation/rs_animation.cpp | 380 ++ .../core/animation/rs_animation.h | 126 + .../core/animation/rs_animation_callback.cpp | 34 + .../core/animation/rs_animation_callback.h | 42 + .../core/animation/rs_animation_group.cpp | 182 + .../core/animation/rs_animation_group.h | 53 + .../animation/rs_animation_manager_map.cpp | 40 + .../core/animation/rs_animation_manager_map.h | 49 + .../animation/rs_animation_timing_curve.cpp | 101 + .../animation/rs_animation_timing_curve.h | 81 + .../core/animation/rs_curve_animation.cpp | 100 + .../core/animation/rs_curve_animation.h | 53 + .../animation/rs_implicit_animation_param.cpp | 155 + .../animation/rs_implicit_animation_param.h | 130 + .../core/animation/rs_implicit_animator.cpp | 374 ++ .../core/animation/rs_implicit_animator.h | 82 + .../animation/rs_implicit_animator_map.cpp | 38 + .../core/animation/rs_implicit_animator_map.h | 48 + .../core/animation/rs_keyframe_animation.cpp | 121 + .../core/animation/rs_keyframe_animation.h | 61 + .../core/animation/rs_motion_path_option.h | 88 + .../core/animation/rs_path_animation.cpp | 417 ++ .../core/animation/rs_path_animation.h | 116 + .../core/animation/rs_property_animation.cpp | 182 + .../core/animation/rs_property_animation.h | 79 + .../core/animation/rs_spring_animation.cpp | 106 + .../core/animation/rs_spring_animation.h | 55 + .../core/animation/rs_transition.cpp | 61 + .../core/animation/rs_transition.h | 58 + .../animation/rs_ui_animation_manager.cpp | 172 + .../core/animation/rs_ui_animation_manager.h | 70 + .../core/animation/test/BUILD.gn | 19 + .../test/unittest/animation/BUILD.gn | 144 + .../unittest/animation/rs_animation_test.cpp | 789 +++ .../unittest/animation/rs_animation_test.h | 33 + .../core/jank_detector/rs_jank_detector.cpp | 121 + .../core/jank_detector/rs_jank_detector.h | 49 + .../core/modifier/rs_extended_modifier.cpp | 56 + .../core/modifier/rs_extended_modifier.h | 168 + .../core/modifier/rs_modifier.h | 102 + .../core/modifier/rs_modifier_extractor.cpp | 289 + .../core/modifier/rs_modifier_extractor.h | 90 + .../core/modifier/rs_modifier_manager.cpp | 41 + .../core/modifier/rs_modifier_manager.h | 42 + .../core/modifier/rs_property.cpp | 292 ++ .../core/modifier/rs_property.h | 561 ++ .../core/modifier/rs_property_modifier.cpp | 58 + .../core/modifier/rs_property_modifier.h | 412 ++ .../core/pipeline/rs_node_map.cpp | 106 + .../core/pipeline/rs_node_map.h | 64 + .../core/pipeline/rs_render_thread.cpp | 549 ++ .../core/pipeline/rs_render_thread.h | 162 + .../pipeline/rs_render_thread_visitor.cpp | 640 +++ .../core/pipeline/rs_render_thread_visitor.h | 84 + .../transaction/rs_application_agent_impl.cpp | 74 + .../transaction/rs_application_agent_impl.h | 51 + .../core/transaction/rs_interfaces.cpp | 225 + .../core/transaction/rs_interfaces.h | 136 + .../transaction/rs_render_thread_client.cpp | 52 + .../transaction/rs_render_thread_client.h | 36 + .../core/transaction/rs_transaction.cpp | 31 + .../core/transaction/rs_transaction.h | 37 + .../core/ui/rs_base_node.cpp | 395 ++ .../core/ui/rs_base_node.h | 126 + .../core/ui/rs_canvas_node.cpp | 137 + .../core/ui/rs_canvas_node.h | 66 + .../core/ui/rs_display_node.cpp | 104 + .../core/ui/rs_display_node.h | 67 + .../render_service_client/core/ui/rs_node.cpp | 949 ++++ .../render_service_client/core/ui/rs_node.h | 247 + .../core/ui/rs_pixel_map_util.cpp | 32 + .../core/ui/rs_pixel_map_util.h | 38 + .../core/ui/rs_proxy_node.cpp | 110 + .../core/ui/rs_proxy_node.h | 76 + .../core/ui/rs_root_node.cpp | 92 + .../core/ui/rs_root_node.h | 53 + .../core/ui/rs_surface_extractor.cpp | 33 + .../core/ui/rs_surface_extractor.h | 31 + .../core/ui/rs_surface_node.cpp | 409 ++ .../core/ui/rs_surface_node.h | 143 + .../core/ui/rs_ui_director.cpp | 294 ++ .../core/ui/rs_ui_director.h | 92 + .../core/ui/rs_ui_share_context.cpp | 35 + .../core/ui/rs_ui_share_context.h | 34 + .../render_service_client.gni | 27 + .../render_service_client/test/BUILD.gn | 331 ++ .../test/fuzztest/BUILD.gn | 17 + .../test/fuzztest/rsanimation_fuzzer/BUILD.gn | 53 + .../fuzztest/rsanimation_fuzzer/corpus/init | 14 + .../fuzztest/rsanimation_fuzzer/project.xml | 25 + .../rsanimation_fuzzer/rsanimation_fuzzer.cpp | 419 ++ .../rsanimation_fuzzer/rsanimation_fuzzer.h | 21 + .../test/media_callback.h | 84 + .../test/render_service_client_app_demo.cpp | 120 + .../render_service_client_gravity_demo.cpp | 169 + .../render_service_client_modifier_demo.cpp | 278 + .../render_service_client_overlay_demo.cpp | 94 + ...ender_service_client_rs_animation_demo.cpp | 149 + .../test/render_service_client_rs_demo.cpp | 386 ++ .../test/render_service_client_scale_demo.cpp | 175 + ...ender_service_client_surface_node_demo.cpp | 206 + ...nder_service_client_tunnel_handle_demo.cpp | 69 + .../render_service_client_uni_render_demo.cpp | 129 + .../test/render_service_display_mode_demo.cpp | 301 ++ .../test/rs_uni_render_pixelmap_demo.cpp | 169 + .../test/security_layer_demo.cpp | 109 + .../test/surface_capture_test.cpp | 289 + .../test/systemtest/BUILD.gn | 79 + .../systemtest/rs_interfaces_system_test.cpp | 221 + .../systemtest/rs_interfaces_test_utils.cpp | 139 + .../systemtest/rs_interfaces_test_utils.h | 80 + .../test/unittest/BUILD.gn | 131 + .../test/unittest/animation/BUILD.gn | 69 + .../animation/rs_animation_base_test.cpp | 155 + .../animation/rs_animation_base_test.h | 46 + .../animation/rs_animation_group_test.cpp | 521 ++ .../rs_animation_supplement_test.cpp | 455 ++ .../unittest/animation/rs_animation_test.cpp | 557 ++ .../animation/rs_animation_test_utils.h | 79 + .../rs_animation_timing_curve_test.cpp | 427 ++ .../animation/rs_curve_animation_test.cpp | 375 ++ .../animation/rs_keyframe_animation_test.cpp | 390 ++ .../animation/rs_motion_path_option_test.cpp | 128 + .../rs_node_animate_supplement_test.cpp | 611 +++ .../animation/rs_path_animation_test.cpp | 413 ++ .../animation/rs_spring_animation_test.cpp | 268 + .../unittest/animation/rs_transition_test.cpp | 283 + .../test/unittest/rs_dirty_manager_test.cpp | 276 + .../test/unittest/rs_display_mode_test.cpp | 191 + .../test/unittest/rs_dropframe_test.cpp | 211 + .../test/unittest/rs_event_test.cpp | 68 + .../test/unittest/rs_interfaces_test.cpp | 936 ++++ .../test/unittest/rs_jank_detector_test.cpp | 84 + .../test/unittest/rs_region_test.cpp | 96 + .../test/unittest/rs_tunnel_handle_test.cpp | 82 + display_server/rosen/modules/utils/README.md | 1 + .../rosen/modules/utils/error_code.h | 32 + .../rosen/modules/utils/string_utils.h | 43 + .../rosen/samples/2d_graphics/BUILD.gn | 158 + .../2d_graphics/benchmarks/benchmark.h | 39 + .../benchmarks/benchmark_api/drawing_api.h | 33 + .../benchmarks/benchmark_config.cpp | 36 + .../2d_graphics/benchmarks/benchmark_config.h | 40 + .../drawing_multithread.h | 32 + .../drawing_mutilthread.cpp | 34 + .../2d_graphics/benchmarks/benchmark_result.h | 45 + .../drawing_singlethread.cpp | 57 + .../drawing_singlethread.h | 33 + .../samples/2d_graphics/drawing_c_sample.cpp | 223 + .../drawing_engine/canvas_context.cpp | 81 + .../drawing_engine/canvas_context.h | 41 + .../drawing_engine/drawing_proxy.cpp | 73 + .../drawing_engine/drawing_proxy.h | 38 + .../drawing_surface/surface_base.h | 53 + .../drawing_surface/surface_frame.h | 36 + .../drawing_surface/surface_frame_ohos.h | 60 + .../drawing_surface/surface_frame_ohos_gl.cpp | 44 + .../drawing_surface/surface_frame_ohos_gl.h | 43 + .../surface_frame_ohos_raster.cpp | 53 + .../surface_frame_ohos_raster.h | 62 + .../drawing_surface/surface_ohos.cpp | 51 + .../drawing_surface/surface_ohos.h | 49 + .../drawing_surface/surface_ohos_gl.cpp | 65 + .../drawing_surface/surface_ohos_gl.h | 45 + .../drawing_surface/surface_ohos_raster.cpp | 80 + .../drawing_surface/surface_ohos_raster.h | 39 + .../drawing_engine/drawing_utils.h | 56 + .../drawing_engine/egl_manager.cpp | 206 + .../2d_graphics/drawing_engine/egl_manager.h | 46 + .../drawing_engine/gles_render_backend.cpp | 176 + .../drawing_engine/gles_render_backend.h | 72 + .../drawing_engine/interface_render_backend.h | 41 + .../software_render_backend.cpp | 46 + .../drawing_engine/software_render_backend.h | 45 + .../2d_graphics/drawing_engine_sample.cpp | 387 ++ .../2d_graphics/drawing_engine_sample.h | 88 + .../drawing_sample_canvaskit0310.cpp | 650 +++ .../samples/2d_graphics/drawing_sample_rs.cpp | 605 +++ .../rosen/samples/2d_graphics/main.cpp | 62 + .../2d_graphics/render_context_sample.cpp | 512 ++ .../2d_graphics/render_context_sample.h | 95 + .../rosen/samples/2d_graphics/test/BUILD.gn | 74 + .../2d_graphics/test/drawing_sample.cpp | 306 ++ .../samples/2d_graphics/test/drawing_sample.h | 87 + .../2d_graphics/test/include/bitmap_test.h | 51 + .../2d_graphics/test/include/camera_test.h | 50 + .../2d_graphics/test/include/filter_test.h | 48 + .../2d_graphics/test/include/image_test.h | 53 + .../2d_graphics/test/include/layer_context.h | 66 + .../2d_graphics/test/include/matrix_test.h | 50 + .../test/include/path_effect_test.h | 50 + .../2d_graphics/test/include/path_test.h | 73 + .../2d_graphics/test/include/shader_test.h | 49 + .../2d_graphics/test/include/shadow_test.h | 71 + .../rosen/samples/2d_graphics/test/main.cpp | 65 + .../2d_graphics/test/src/bitmap_test.cpp | 50 + .../2d_graphics/test/src/camera_test.cpp | 58 + .../2d_graphics/test/src/filter_test.cpp | 60 + .../2d_graphics/test/src/image_test.cpp | 86 + .../2d_graphics/test/src/layer_context.cpp | 154 + .../2d_graphics/test/src/matrix_test.cpp | 81 + .../2d_graphics/test/src/path_effect_test.cpp | 52 + .../2d_graphics/test/src/path_test.cpp | 702 +++ .../2d_graphics/test/src/shader_test.cpp | 47 + .../rosen/samples/composer/BUILD.gn | 65 + .../rosen/samples/composer/hello_composer.cpp | 502 ++ .../rosen/samples/composer/hello_composer.h | 84 + .../rosen/samples/composer/layer_context.cpp | 297 ++ .../rosen/samples/composer/layer_context.h | 96 + .../rosen/samples/composer/main.cpp | 34 + .../samples/hello_native_buffer/BUILD.gn | 53 + .../hello_native_buffer.cpp | 124 + .../rosen/samples/hello_native_image/BUILD.gn | 64 + .../hello_native_image/hello_native_image.cpp | 281 + .../hello_native_image_unsupported.cpp | 22 + .../samples/hello_native_window/BUILD.gn | 49 + .../hello_native_window.cpp | 138 + .../rosen/samples/hello_rosen/BUILD.gn | 55 + .../rosen/samples/hello_rosen/HelloRosen.cpp | 22 + .../rosen/samples/hello_vsync/BUILD.gn | 48 + .../rosen/samples/hello_vsync/hello_vsync.cpp | 47 + .../rosen/samples/text/renderservice/BUILD.gn | 42 + .../renderservice/drawing_text_c_sample.cpp | 162 + .../text/renderservice/etc/renderservice.cfg | 15 + .../text/renderservice/etc/renderservice.rc | 7 + .../samples/text/renderservice/include/util.h | 33 + .../rosen/samples/text/renderservice/main.cpp | 176 + display_server/rosen/test/2d_engine/BUILD.gn | 18 + .../rosen/test/2d_engine/unittest/BUILD.gn | 21 + .../unittest/rosen_text/properties/BUILD.gn | 57 + .../properties/place_holder_test.cpp | 47 + .../properties/rosen_coverter_txt_test.cpp | 294 ++ .../rosen_text/properties/text_style_test.cpp | 89 + .../properties/typography_style_test.cpp | 69 + .../2d_engine/unittest/rosen_text/ui/BUILD.gn | 45 + .../rosen_text/ui/typography_test.cpp | 61 + .../rosen/test/2d_graphics/BUILD.gn | 21 + .../rosen/test/2d_graphics/fuzztest/BUILD.gn | 26 + .../test/2d_graphics/fuzztest/draw/BUILD.gn | 22 + .../fuzztest/draw/brush_fuzzer/BUILD.gn | 57 + .../draw/brush_fuzzer/brush_fuzzer.cpp | 104 + .../fuzztest/draw/brush_fuzzer/brush_fuzzer.h | 26 + .../fuzztest/draw/brush_fuzzer/corpus/init | 14 + .../fuzztest/draw/brush_fuzzer/project.xml | 25 + .../fuzztest/draw/color_fuzzer/BUILD.gn | 60 + .../draw/color_fuzzer/color_fuzzer.cpp | 68 + .../fuzztest/draw/color_fuzzer/color_fuzzer.h | 21 + .../fuzztest/draw/color_fuzzer/corpus/init | 14 + .../fuzztest/draw/color_fuzzer/project.xml | 25 + .../fuzztest/draw/path_fuzzer/BUILD.gn | 60 + .../fuzztest/draw/path_fuzzer/corpus/init | 14 + .../fuzztest/draw/path_fuzzer/path_fuzzer.cpp | 83 + .../fuzztest/draw/path_fuzzer/path_fuzzer.h | 21 + .../fuzztest/draw/path_fuzzer/project.xml | 25 + .../test/2d_graphics/fuzztest/effect/BUILD.gn | 18 + .../effect/patheffect_fuzzer/BUILD.gn | 60 + .../effect/patheffect_fuzzer/corpus/init | 14 + .../patheffect_fuzzer/patheffect_fuzzer.cpp | 59 + .../patheffect_fuzzer/patheffect_fuzzer.h | 21 + .../effect/patheffect_fuzzer/project.xml | 25 + .../test/2d_graphics/fuzztest/get_object.h | 46 + .../test/2d_graphics/fuzztest/image/BUILD.gn | 21 + .../fuzztest/image/bitmap_fuzzer/BUILD.gn | 56 + .../image/bitmap_fuzzer/bitmap_fuzzer.cpp | 59 + .../image/bitmap_fuzzer/bitmap_fuzzer.h | 21 + .../fuzztest/image/bitmap_fuzzer/corpus/init | 14 + .../fuzztest/image/bitmap_fuzzer/project.xml | 25 + .../fuzztest/image/image_fuzzer/BUILD.gn | 56 + .../fuzztest/image/image_fuzzer/corpus/init | 14 + .../image/image_fuzzer/image_fuzzer.cpp | 60 + .../image/image_fuzzer/image_fuzzer.h | 21 + .../fuzztest/image/image_fuzzer/project.xml | 25 + .../test/2d_graphics/fuzztest/utils/BUILD.gn | 21 + .../fuzztest/utils/camera3d_fuzzer/BUILD.gn | 60 + .../utils/camera3d_fuzzer/camera3d_fuzzer.cpp | 73 + .../utils/camera3d_fuzzer/camera3d_fuzzer.h | 21 + .../utils/camera3d_fuzzer/corpus/init | 14 + .../utils/camera3d_fuzzer/project.xml | 25 + .../fuzztest/utils/matrix_fuzzer/BUILD.gn | 60 + .../fuzztest/utils/matrix_fuzzer/corpus/init | 14 + .../utils/matrix_fuzzer/matrix_fuzzer.cpp | 62 + .../utils/matrix_fuzzer/matrix_fuzzer.h | 21 + .../fuzztest/utils/matrix_fuzzer/project.xml | 25 + .../rosen/test/2d_graphics/unittest/BUILD.gn | 26 + .../test/2d_graphics/unittest/draw/BUILD.gn | 49 + .../2d_graphics/unittest/draw/brush_test.cpp | 607 +++ .../2d_graphics/unittest/draw/canvas_test.cpp | 53 + .../2d_graphics/unittest/draw/color_test.cpp | 676 +++ .../2d_graphics/unittest/draw/path_test.cpp | 823 +++ .../2d_graphics/unittest/draw/pen_test.cpp | 720 +++ .../test/2d_graphics/unittest/effect/BUILD.gn | 51 + .../unittest/effect/color_filter_test.cpp | 310 ++ .../unittest/effect/color_matrix_test.cpp | 178 + .../unittest/effect/color_space_test.cpp | 160 + .../unittest/effect/filter_test.cpp | 219 + .../unittest/effect/mask_filter_test.cpp | 122 + .../unittest/effect/path_effect_test.cpp | 314 ++ .../unittest/effect/shader_effect_test.cpp | 635 +++ .../test/2d_graphics/unittest/image/BUILD.gn | 47 + .../unittest/image/bitmap_test.cpp | 353 ++ .../2d_graphics/unittest/image/image_test.cpp | 144 + .../unittest/image/picture_test.cpp | 54 + .../test/2d_graphics/unittest/ndk/BUILD.gn | 53 + .../unittest/ndk/drawing_bitmap_test.cpp | 127 + .../unittest/ndk/drawing_brush_test.cpp | 69 + .../unittest/ndk/drawing_canvas_test.cpp | 152 + .../unittest/ndk/drawing_color_test.cpp | 56 + .../ndk/drawing_font_collection_test.cpp | 39 + .../unittest/ndk/drawing_path_test.cpp | 151 + .../unittest/ndk/drawing_pen_test.cpp | 148 + .../ndk/drawing_text_typography_test.cpp | 342 ++ .../unittest/render_context/BUILD.gn | 91 + .../render_context/cache_data_test.cpp | 257 + .../render_context/render_context_test.cpp | 128 + .../render_context/shader_cache_test.cpp | 240 + .../unittest/skia_adapter/BUILD.gn | 56 + .../skia_adapter/skia_canvas_test.cpp | 306 ++ .../unittest/skia_adapter/skia_image_test.cpp | 75 + .../skia_adapter/skia_matrix_test.cpp | 86 + .../unittest/skia_adapter/skia_paint_test.cpp | 328 ++ .../skia_adapter/skia_path_effect_test.cpp | 57 + .../skia_adapter/skia_shader_effect_test.cpp | 145 + .../test/2d_graphics/unittest/utils/BUILD.gn | 52 + .../unittest/utils/camera3d_test.cpp | 291 + .../unittest/utils/matrix_test.cpp | 306 ++ .../unittest/utils/point3_test.cpp | 616 +++ .../2d_graphics/unittest/utils/point_test.cpp | 1085 ++++ .../2d_graphics/unittest/utils/rect_test.cpp | 657 +++ .../unittest/utils/round_rect_test.cpp | 195 + .../unittest/utils/sampling_options_test.cpp | 211 + .../2d_graphics/unittest/utils/size_test.cpp | 266 + display_server/rosen/test/README.md | 1 + .../rosen/test/frame_analyzer/BUILD.gn | 18 + .../test/frame_analyzer/unittest/BUILD.gn | 39 + .../unittest/frame_collector_test.cpp | 160 + .../unittest/frame_painter_test.cpp | 52 + .../rosen/test/include/limit_number.h | 39 + .../rosen/test/render_service/BUILD.gn | 51 + .../systemtest/pipeline/BUILD.gn | 125 + .../pipeline/rs_base_render_engine_test.cpp | 85 + .../pipeline/rs_drop_frame_processor_test.cpp | 117 + .../pipeline/rs_render_service_test.cpp | 154 + .../pipeline/rs_uni_render_test.cpp | 202 + .../render_service/unittest/pipeline/BUILD.gn | 248 + .../pipeline/rs_base_render_util_test.cpp | 293 ++ .../pipeline/rs_cold_start_thread_test.cpp | 156 + .../pipeline/rs_composer_adapter_test.cpp | 334 ++ .../pipeline/rs_divided_render_util_test.cpp | 202 + .../pipeline/rs_drop_frame_processor_test.cpp | 169 + .../unittest/pipeline/rs_main_thread_test.cpp | 442 ++ .../rs_physical_screen_processor_test.cpp | 257 + .../pipeline/rs_processor_factory_test.cpp | 93 + .../unittest/pipeline/rs_qos_thread_test.cpp | 123 + .../rs_render_service_listener_test.cpp | 95 + .../rs_render_service_visitor_test.cpp | 1091 ++++ .../pipeline/rs_surface_capture_task_test.cpp | 514 ++ .../unittest/pipeline/rs_test_util.cpp | 55 + .../unittest/pipeline/rs_test_util.h | 49 + .../pipeline/rs_uni_render_judgement_test.cpp | 71 + .../pipeline/rs_uni_render_util_test.cpp | 77 + .../pipeline/rs_uni_render_visitor_test.cpp | 137 + .../rs_virtual_screen_processor_test.cpp | 132 + .../unittest/screen_manager/BUILD.gn | 114 + .../screen_manager/rs_screen_manager_test.cpp | 510 ++ .../screen_manager/rs_screen_test.cpp | 51 + .../unittest/transaction/BUILD.gn | 99 + ...rs_render_service_connection_stub_test.cpp | 248 + .../rs_render_service_stub_test.cpp | 102 + .../pipeline/rspipelinerender_fuzzer/BUILD.gn | 54 + .../rspipelinerender_fuzzer/corpus/init | 14 + .../rspipelinerender_fuzzer/project.xml | 25 + .../rspipelinerender_fuzzer.cpp | 102 + .../rspipelinerender_fuzzer.h | 24 + .../pipeline/rsrendernode_fuzzer/BUILD.gn | 54 + .../pipeline/rsrendernode_fuzzer/corpus/init | 14 + .../pipeline/rsrendernode_fuzzer/project.xml | 25 + .../rsrendernode_fuzzer.cpp | 340 ++ .../rsrendernode_fuzzer/rsrendernode_fuzzer.h | 24 + .../fuzztest/rsbasecommon_fuzzer/BUILD.gn | 55 + .../fuzztest/rsbasecommon_fuzzer/corpus/init | 14 + .../fuzztest/rsbasecommon_fuzzer/project.xml | 25 + .../rsbasecommon_fuzzer.cpp | 221 + .../rsbasecommon_fuzzer/rsbasecommon_fuzzer.h | 24 + .../rsbasescreenmanager_fuzzer/BUILD.gn | 43 + .../rsbasescreenmanager_fuzzer/corpus/init | 14 + .../rsbasescreenmanager_fuzzer/project.xml | 25 + .../rsbasescreenmanager_fuzzer.cpp | 146 + .../rsbasescreenmanager_fuzzer.h | 24 + .../fuzztest/rsproperty_fuzzer/BUILD.gn | 54 + .../fuzztest/rsproperty_fuzzer/corpus/init | 14 + .../fuzztest/rsproperty_fuzzer/project.xml | 25 + .../rsproperty_fuzzer/rsproperty_fuzzer.cpp | 334 ++ .../rsproperty_fuzzer/rsproperty_fuzzer.h | 24 + .../fuzztest/rsrenderimage_fuzzer/BUILD.gn | 54 + .../fuzztest/rsrenderimage_fuzzer/corpus/init | 14 + .../fuzztest/rsrenderimage_fuzzer/project.xml | 25 + .../rsrenderimage_fuzzer.cpp | 365 ++ .../rsrenderimage_fuzzer.h | 24 + .../fuzztest/rssurfaceohos_fuzzer/BUILD.gn | 47 + .../fuzztest/rssurfaceohos_fuzzer/corpus/init | 14 + .../fuzztest/rssurfaceohos_fuzzer/project.xml | 25 + .../rssurfaceohos_fuzzer.cpp | 101 + .../rssurfaceohos_fuzzer.h | 24 + .../unittest/animation/BUILD.gn | 64 + .../animation/rs_steps_interpolator_test.cpp | 123 + .../unittest/command/BUILD.gn | 72 + .../command/rs_animation_command_test.cpp | 51 + .../command/rs_base_node_command_test.cpp | 139 + .../command/rs_canvas_node_command_test.cpp | 61 + .../command/rs_display_node_command_test.cpp | 101 + .../unittest/command/rs_node_command_test.cpp | 61 + .../command/rs_proxy_node_command_test.cpp | 47 + .../command/rs_root_node_command_test.cpp | 88 + .../command/rs_surface_node_command_test.cpp | 309 ++ .../unittest/common/BUILD.gn | 70 + .../common/rs_occlusion_region_test.cpp | 173 + .../common/rs_thread_looper_impl_test.cpp | 54 + .../unittest/delegate/BUILD.gn | 67 + .../delegate/rs_functional_delegate_test.cpp | 65 + .../unittest/modifier/BUILD.gn | 63 + .../modifier/rs_render_modifier_test.cpp | 131 + .../modifier/rs_render_property_test.cpp | 235 + .../unittest/overdraw/BUILD.gn | 43 + .../rs_cpu_overdraw_canvas_listener_test.cpp | 236 + .../rs_gpu_overdraw_canvas_listener_test.cpp | 53 + .../overdraw/rs_listened_canvas_test.cpp | 415 ++ .../overdraw/rs_overdraw_controller_test.cpp | 240 + .../unittest/pipeline/BUILD.gn | 79 + .../pipeline/rs_base_render_node_test.cpp | 216 + .../pipeline/rs_canvas_render_node_test.cpp | 66 + .../pipeline/rs_dirty_region_manager_test.cpp | 95 + .../pipeline/rs_draw_cmd_list_test.cpp | 51 + .../unittest/pipeline/rs_draw_cmd_test.cpp | 164 + .../pipeline/rs_frame_report_test.cpp | 83 + .../pipeline/rs_occlusion_config_test.cpp | 52 + .../pipeline/rs_paint_filter_canvas_test.cpp | 72 + .../pipeline/rs_proxy_render_node_test.cpp | 67 + .../pipeline/rs_recording_canvas_test.cpp | 101 + .../unittest/pipeline/rs_render_node_test.cpp | 56 + .../pipeline/rs_surface_render_node_test.cpp | 93 + .../unittest/platform/ohos/BUILD.gn | 104 + .../unittest/platform/ohos/backend/BUILD.gn | 70 + .../backend/rs_surface_frame_ohos_gl_test.cpp | 66 + .../rs_surface_frame_ohos_raster_test.cpp | 66 + .../ohos/backend/rs_surface_ohos_gl_test.cpp | 62 + .../backend/rs_surface_ohos_raster_test.cpp | 65 + .../platform/ohos/rs_event_manager_test.cpp | 97 + .../ohos/rs_render_service_client_test.cpp | 189 + .../ohos/rs_render_service_proxy_test.cpp | 68 + .../platform/ohos/rs_surface_ohos_test.cpp | 93 + .../ohos/rs_vsync_client_ohos_test.cpp | 73 + .../unittest/property/BUILD.gn | 69 + .../property/rs_properties_painter_test.cpp | 525 ++ .../unittest/property/rs_properties_test.cpp | 298 ++ .../property/rs_property_trace_test.cpp | 62 + .../unittest/render/BUILD.gn | 69 + .../unittest/render/rs_border_test.cpp | 137 + .../unittest/render/rs_image_test.cpp | 193 + .../unittest/render/rs_mask_test.cpp | 273 + .../unittest/render/rs_shadow_test.cpp | 75 + .../unittest/screen_manager/BUILD.gn | 70 + .../rs_screen_capability_test.cpp | 97 + .../screen_manager/rs_screen_data_test.cpp | 100 + .../rs_screen_hdr_capability_test.cpp | 95 + .../screen_manager/rs_screen_props_test.cpp | 94 + .../unittest/transaction/BUILD.gn | 70 + .../unittest/transaction/rs_ashmem_test.cpp | 275 + .../transaction/rs_marshalling_test.cpp | 708 +++ .../transaction/rs_transaction_proxy_test.cpp | 102 + .../fuzztest/rsinterfaces_fuzzer/BUILD.gn | 57 + .../fuzztest/rsinterfaces_fuzzer/corpus/init | 14 + .../fuzztest/rsinterfaces_fuzzer/project.xml | 25 + .../rsinterfaces_fuzzer.cpp | 112 + .../rsinterfaces_fuzzer/rsinterfaces_fuzzer.h | 24 + .../rsmodifiermanager_fuzzer/BUILD.gn | 56 + .../rsmodifiermanager_fuzzer/corpus/init | 14 + .../rsmodifiermanager_fuzzer/project.xml | 25 + .../rsmodifiermanager_fuzzer.cpp | 86 + .../rsmodifiermanager_fuzzer.h | 24 + .../fuzztest/rsnodemap_fuzzer/BUILD.gn | 55 + .../fuzztest/rsnodemap_fuzzer/corpus/init | 14 + .../fuzztest/rsnodemap_fuzzer/project.xml | 25 + .../rsnodemap_fuzzer/rsnodemap_fuzzer.cpp | 79 + .../rsnodemap_fuzzer/rsnodemap_fuzzer.h | 24 + .../fuzztest/rspropertyclient_fuzzer/BUILD.gn | 56 + .../rspropertyclient_fuzzer/corpus/init | 14 + .../rspropertyclient_fuzzer/project.xml | 25 + .../rspropertyclient_fuzzer.cpp | 82 + .../rspropertyclient_fuzzer.h | 24 + .../fuzztest/ui/rsnode_fuzzer/BUILD.gn | 54 + .../fuzztest/ui/rsnode_fuzzer/corpus/init | 14 + .../fuzztest/ui/rsnode_fuzzer/project.xml | 25 + .../ui/rsnode_fuzzer/rsnode_fuzzer.cpp | 219 + .../fuzztest/ui/rsnode_fuzzer/rsnode_fuzzer.h | 24 + .../fuzztest/ui/rsuisurface_fuzzer/BUILD.gn | 54 + .../ui/rsuisurface_fuzzer/corpus/init | 14 + .../ui/rsuisurface_fuzzer/project.xml | 25 + .../rsuisurface_fuzzer/rsuisurface_fuzzer.cpp | 123 + .../rsuisurface_fuzzer/rsuisurface_fuzzer.h | 24 + .../systemtest/ui/BUILD.gn | 60 + .../ui/rs_uni_render_surface_node_test.cpp | 78 + .../unittest/modifier/BUILD.gn | 53 + .../unittest/modifier/rs_modifier_test.cpp | 1819 +++++++ .../unittest/modifier/rs_property_test.cpp | 114 + .../unittest/pipeline/BUILD.gn | 69 + .../unittest/pipeline/rs_node_map_test.cpp | 85 + .../pipeline/rs_render_thread_test.cpp | 140 + .../rs_render_thread_visitor_test.cpp | 649 +++ .../unittest/transaction/BUILD.gn | 53 + .../transaction/rs_transaction_test.cpp | 49 + .../unittest/ui/BUILD.gn | 65 + .../unittest/ui/rs_canvas_node_test.cpp | 2997 +++++++++++ .../unittest/ui/rs_display_node_test.cpp | 175 + .../unittest/ui/rs_node_test.cpp | 3140 +++++++++++ .../unittest/ui/rs_proxy_node_test.cpp | 61 + .../unittest/ui/rs_root_node_test.cpp | 95 + .../unittest/ui/rs_surface_extractor_test.cpp | 56 + .../unittest/ui/rs_surface_node_test.cpp | 1093 ++++ .../unittest/ui/rs_ui_director_test.cpp | 211 + .../unittest/ui/rs_ui_share_context_test.cpp | 51 + .../rosen/tools/gn_project_to_cmake.py | 190 + display_server/utils/BUILD.gn | 77 + display_server/utils/buffer_handle/BUILD.gn | 40 + .../export/buffer_handle_parcel.h | 40 + .../export/buffer_handle_utils.h | 52 + .../utils/buffer_handle/src/buffer_handle.cpp | 210 + .../utils/build/graphic_2d_ext_exists.py | 27 + display_server/utils/color_manager/BUILD.gn | 62 + .../utils/color_manager/export/color.h | 47 + .../utils/color_manager/export/color_space.h | 200 + .../export/color_space_convertor.h | 53 + .../utils/color_manager/src/color.cpp | 108 + .../utils/color_manager/src/color_space.cpp | 342 ++ .../src/color_space_convertor.cpp | 57 + .../utils/color_manager/test/BUILD.gn | 20 + .../color_manager/test/fuzztest/BUILD.gn | 18 + .../fuzztest/colormanager_fuzzer/BUILD.gn | 44 + .../colormanager_fuzzer.cpp | 148 + .../colormanager_fuzzer/colormanager_fuzzer.h | 24 + .../fuzztest/colormanager_fuzzer/corpus/init | 14 + .../fuzztest/colormanager_fuzzer/project.xml | 25 + .../color_manager/test/unittest/BUILD.gn | 53 + .../test/unittest/color_manager_test.cpp | 274 + .../utils/lex_yacc/gen_flexlexer_header.py | 31 + display_server/utils/lex_yacc/gen_lex_cpp.py | 32 + display_server/utils/lex_yacc/gen_yacc_cpp.py | 32 + display_server/utils/lex_yacc/lex_yacc.gni | 130 + display_server/utils/log/rs_trace.h | 44 + display_server/utils/matrix/BUILD.gn | 22 + display_server/utils/matrix/export/matrix.h | 149 + display_server/utils/promise/BUILD.gn | 22 + display_server/utils/promise/export/promise.h | 99 + display_server/utils/sandbox/BUILD.gn | 26 + .../utils/sandbox/sandbox_utils.cpp | 79 + display_server/utils/sandbox/sandbox_utils.h | 30 + display_server/utils/scoped_bytrace/BUILD.gn | 45 + .../scoped_bytrace/export/scoped_bytrace.h | 33 + .../scoped_bytrace/src/scoped_bytrace.cpp | 39 + display_server/utils/socketpair/BUILD.gn | 63 + .../socketpair/export/local_socketpair.h | 58 + .../utils/socketpair/src/local_socketpair.cpp | 176 + display_server/utils/socketpair/test/BUILD.gn | 17 + .../utils/socketpair/test/unittest/BUILD.gn | 52 + .../test/unittest/socketpair_test.cpp | 80 + display_server/utils/sync_fence/BUILD.gn | 70 + .../utils/sync_fence/export/sw_sync.h | 82 + .../utils/sync_fence/export/sync_fence.h | 105 + .../sync_fence/export/sync_fence_timeline.h | 69 + .../sync_fence/export/sync_fence_tracker.h | 43 + .../utils/sync_fence/src/sync_fence.cpp | 320 ++ .../sync_fence/src/sync_fence_timeline.cpp | 100 + .../sync_fence/src/sync_fence_tracker.cpp | 70 + display_server/utils/sync_fence/test/BUILD.gn | 18 + .../utils/sync_fence/test/unittest/BUILD.gn | 60 + .../test/unittest/sync_fence_test.cpp | 279 + display_server/utils/test_header/BUILD.gn | 24 + .../utils/test_header/export/test_header.h | 43 + display_server/utils/wmlayout/gen_scss.py | 33 + display_server/utils/wmlayout/wmlayout.gni | 59 + 1792 files changed, 257686 insertions(+) create mode 100644 display_server/.clang-format create mode 100644 display_server/.gitattributes create mode 100755 display_server/BUILD.gn create mode 100644 display_server/LICENSE create mode 100755 display_server/OAT.xml create mode 100755 display_server/bundle.json create mode 100644 display_server/default.scss create mode 100644 display_server/etc/BUILD.gn create mode 100644 display_server/etc/graphic.para.dac create mode 100644 display_server/figures/graphic.png create mode 100644 display_server/figures/graphic_rosen_architecture.jpg create mode 100644 display_server/flutter.gni create mode 100644 display_server/frameworks/bootanimation/BUILD.gn create mode 100644 display_server/frameworks/bootanimation/data/bootanimation_tool/README.md create mode 100644 display_server/frameworks/bootanimation/data/bootanimation_tool/raw_maker.py create mode 100644 display_server/frameworks/bootanimation/data/bootanimation_tool/raw_player.py create mode 100644 display_server/frameworks/bootanimation/data/bootpic.zip create mode 100755 display_server/frameworks/bootanimation/data/bootsound.wav create mode 100644 display_server/frameworks/bootanimation/data/generate_raw.sh create mode 100644 display_server/frameworks/bootanimation/include/boot_animation.h create mode 100644 display_server/frameworks/bootanimation/include/log.h create mode 100644 display_server/frameworks/bootanimation/include/util.h create mode 100644 display_server/frameworks/bootanimation/src/boot_animation.cpp create mode 100644 display_server/frameworks/bootanimation/src/main.cpp create mode 100644 display_server/frameworks/bootanimation/src/util.cpp create mode 100755 display_server/frameworks/fence/BUILD.gn create mode 100755 display_server/frameworks/fence/include/fence.h create mode 100755 display_server/frameworks/fence/src/fence.cpp create mode 100755 display_server/frameworks/fence/test/BUILD.gn create mode 100755 display_server/frameworks/fence/test/unittest/BUILD.gn create mode 100755 display_server/frameworks/fence/test/unittest/fence_fd_test.cpp create mode 100755 display_server/frameworks/fence/test/unittest/fence_fd_test.h create mode 100644 display_server/frameworks/opengl_wrapper/BUILD.gn create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_core.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_core.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_defs.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_pre_initializer.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_context.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_context.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_display.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_display.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_entry.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_entry.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_layer.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_layer.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_loader.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_loader.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_object.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_object.h create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_surface.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/EGL/egl_wrapper_surface.h create mode 100644 display_server/frameworks/opengl_wrapper/src/GLES1/gles1.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/GLES2/gles2.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/GLES3/gles3.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/egl_hook_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl1_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl1_hook_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl1ext_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl2_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl2_hook_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl2ext_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl32_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/gl3_hook_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/hook.h create mode 100644 display_server/frameworks/opengl_wrapper/src/thread_private_data_ctl.cpp create mode 100644 display_server/frameworks/opengl_wrapper/src/thread_private_data_ctl.h create mode 100644 display_server/frameworks/opengl_wrapper/src/wrapper_hook_entries.in create mode 100644 display_server/frameworks/opengl_wrapper/src/wrapper_log.h create mode 100644 display_server/frameworks/opengl_wrapper/test/BUILD.gn create mode 100644 display_server/frameworks/opengl_wrapper/test/debug_layer_test.h create mode 100644 display_server/frameworks/opengl_wrapper/test/debug_layer_test1.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/debug_layer_test2.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/opengl_wrapper_native_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/systemtest/BUILD.gn create mode 100644 display_server/frameworks/opengl_wrapper/test/systemtest/opengl_wrapper_api_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/BUILD.gn create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_core_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_wrapper_context_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_wrapper_display_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_wrapper_entry_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_wrapper_layer_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/egl_wrapper_loader_test.cpp create mode 100644 display_server/frameworks/opengl_wrapper/test/unittest/thread_private_data_ctl_test.cpp create mode 100644 display_server/frameworks/surface/BUILD.gn create mode 100644 display_server/frameworks/surface/bundle.json create mode 100644 display_server/frameworks/surface/include/buffer_client_producer.h create mode 100644 display_server/frameworks/surface/include/buffer_extra_data_impl.h create mode 100644 display_server/frameworks/surface/include/buffer_log.h create mode 100644 display_server/frameworks/surface/include/buffer_manager.h create mode 100644 display_server/frameworks/surface/include/buffer_queue.h create mode 100644 display_server/frameworks/surface/include/buffer_queue_consumer.h create mode 100644 display_server/frameworks/surface/include/buffer_queue_producer.h create mode 100644 display_server/frameworks/surface/include/buffer_utils.h create mode 100644 display_server/frameworks/surface/include/consumer_surface.h create mode 100644 display_server/frameworks/surface/include/egl_consumer_surface.h create mode 100644 display_server/frameworks/surface/include/native_window.h create mode 100644 display_server/frameworks/surface/include/producer_egl_surface.h create mode 100644 display_server/frameworks/surface/include/producer_surface.h create mode 100644 display_server/frameworks/surface/include/surface_buffer_impl.h create mode 100644 display_server/frameworks/surface/src/buffer_client_producer.cpp create mode 100644 display_server/frameworks/surface/src/buffer_extra_data_impl.cpp create mode 100644 display_server/frameworks/surface/src/buffer_manager.cpp create mode 100644 display_server/frameworks/surface/src/buffer_queue.cpp create mode 100644 display_server/frameworks/surface/src/buffer_queue_consumer.cpp create mode 100644 display_server/frameworks/surface/src/buffer_queue_producer.cpp create mode 100644 display_server/frameworks/surface/src/buffer_utils.cpp create mode 100644 display_server/frameworks/surface/src/consumer_surface.cpp create mode 100644 display_server/frameworks/surface/src/egl_consumer_surface.cpp create mode 100644 display_server/frameworks/surface/src/egl_surface.cpp create mode 100644 display_server/frameworks/surface/src/native_buffer.cpp create mode 100644 display_server/frameworks/surface/src/native_window.cpp create mode 100644 display_server/frameworks/surface/src/producer_egl_surface.cpp create mode 100644 display_server/frameworks/surface/src/producer_surface.cpp create mode 100644 display_server/frameworks/surface/src/surface.cpp create mode 100644 display_server/frameworks/surface/src/surface_buffer_impl.cpp create mode 100644 display_server/frameworks/surface/src/surface_delegate.cpp create mode 100644 display_server/frameworks/surface/src/surface_tunnel_handle.cpp create mode 100644 display_server/frameworks/surface/src/surface_utils.cpp create mode 100644 display_server/frameworks/surface/test/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferqueue_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferqueue_fuzzer/bufferqueue_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferqueue_fuzzer/bufferqueue_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferqueue_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferqueue_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferutils_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferutils_fuzzer/bufferutils_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferutils_fuzzer/bufferutils_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferutils_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/bufferutils_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/nativebuffer_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/nativebuffer_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/nativebuffer_fuzzer/nativebuffer_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/nativebuffer_fuzzer/nativebuffer_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/nativebuffer_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/nativewindow_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/nativewindow_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/nativewindow_fuzzer/nativewindow_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/nativewindow_fuzzer/nativewindow_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/nativewindow_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/surface_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/surface_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/surface_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/surface_fuzzer/surface_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/surface_fuzzer/surface_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/surfacebuffer_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/surfacebuffer_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/surfacebuffer_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/surfacebuffer_fuzzer/surfacebuffer_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/surfacebuffer_fuzzer/surfacebuffer_fuzzer.h create mode 100644 display_server/frameworks/surface/test/fuzztest/surfaceutils_fuzzer/BUILD.gn create mode 100644 display_server/frameworks/surface/test/fuzztest/surfaceutils_fuzzer/corpus/init create mode 100644 display_server/frameworks/surface/test/fuzztest/surfaceutils_fuzzer/project.xml create mode 100644 display_server/frameworks/surface/test/fuzztest/surfaceutils_fuzzer/surfaceutils_fuzzer.cpp create mode 100644 display_server/frameworks/surface/test/fuzztest/surfaceutils_fuzzer/surfaceutils_fuzzer.h create mode 100644 display_server/frameworks/surface/test/systemtest/BUILD.gn create mode 100644 display_server/frameworks/surface/test/systemtest/native_window_buffer_test.cpp create mode 100644 display_server/frameworks/surface/test/systemtest/surface_ipc_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/BUILD.gn create mode 100644 display_server/frameworks/surface/test/unittest/buffer_client_producer_remote_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_consumer_listener.h create mode 100644 display_server/frameworks/surface/test/unittest/buffer_manager_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_queue_consumer_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_queue_producer_remote_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_queue_producer_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_queue_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/buffer_shared_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/consumer_surface_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/native_buffer_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/native_image_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/native_window_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/producer_surface_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/surface_buffer_impl_test.cpp create mode 100644 display_server/frameworks/surface/test/unittest/surface_utils_test.cpp create mode 100644 display_server/frameworks/surfaceimage/BUILD.gn create mode 100644 display_server/frameworks/surfaceimage/include/surface_image.h create mode 100644 display_server/frameworks/surfaceimage/src/native_image.cpp create mode 100644 display_server/frameworks/surfaceimage/src/surface_image.cpp create mode 100755 display_server/frameworks/vulkan_wrapper/BUILD.gn create mode 100644 display_server/frameworks/vulkan_wrapper/include/driver.h create mode 100644 display_server/frameworks/vulkan_wrapper/include/driver_loader.h create mode 100644 display_server/frameworks/vulkan_wrapper/include/hardware/hdi_vulkan.h create mode 100644 display_server/frameworks/vulkan_wrapper/include/swapchain.h create mode 100644 display_server/frameworks/vulkan_wrapper/include/vulkan/vk_ohos_native_buffer.h create mode 100644 display_server/frameworks/vulkan_wrapper/include/wrapper_log.h create mode 100644 display_server/frameworks/vulkan_wrapper/src/api_export.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/src/driver.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/src/driver_loader.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/src/swapchain.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/test/BUILD.gn create mode 100644 display_server/frameworks/vulkan_wrapper/test/systemtest/BUILD.gn create mode 100644 display_server/frameworks/vulkan_wrapper/test/systemtest/vulkan_wrapper_api_test.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/test/unittest/BUILD.gn create mode 100644 display_server/frameworks/vulkan_wrapper/test/unittest/vulkan_wrapper_unit_test.cpp create mode 100644 display_server/frameworks/vulkan_wrapper/test/vulkan_wrapper_native_test.cpp create mode 100644 display_server/graphic.cfg create mode 100644 display_server/graphic_config.gni create mode 100644 display_server/hisysevent.yaml create mode 100644 display_server/interfaces/inner_api/color_manager/color_manager_common.h create mode 100644 display_server/interfaces/inner_api/common/graphic_common.h create mode 100644 display_server/interfaces/inner_api/common/graphic_common_c.h create mode 100644 display_server/interfaces/inner_api/composer/native_vsync.h create mode 100644 display_server/interfaces/inner_api/composer/vsync_receiver.h create mode 100644 display_server/interfaces/inner_api/surface/buffer_extra_data.h create mode 100644 display_server/interfaces/inner_api/surface/egl_data.h create mode 100644 display_server/interfaces/inner_api/surface/egl_surface.h create mode 100644 display_server/interfaces/inner_api/surface/external_window.h create mode 100644 display_server/interfaces/inner_api/surface/ibuffer_consumer_listener.h create mode 100644 display_server/interfaces/inner_api/surface/ibuffer_producer.h create mode 100644 display_server/interfaces/inner_api/surface/native_buffer.h create mode 100644 display_server/interfaces/inner_api/surface/native_buffer_inner.h create mode 100644 display_server/interfaces/inner_api/surface/native_image.h create mode 100644 display_server/interfaces/inner_api/surface/native_surface.h create mode 100644 display_server/interfaces/inner_api/surface/surface.h create mode 100644 display_server/interfaces/inner_api/surface/surface_buffer.h create mode 100644 display_server/interfaces/inner_api/surface/surface_delegate.h create mode 100644 display_server/interfaces/inner_api/surface/surface_tunnel_handle.h create mode 100644 display_server/interfaces/inner_api/surface/surface_type.h create mode 100644 display_server/interfaces/inner_api/surface/surface_utils.h create mode 100644 display_server/interfaces/inner_api/surface/window.h create mode 100755 display_server/interfaces/inner_api/wm/window_manager.h create mode 100644 display_server/interfaces/inner_api/wm/window_manager_common.h create mode 100644 display_server/interfaces/inner_api/wmclient/iscreen_shot_callback.h create mode 100644 display_server/interfaces/inner_api/wmclient/iwindow_shot_callback.h create mode 100644 display_server/interfaces/inner_api/wmclient/subwindow.h create mode 100644 display_server/interfaces/inner_api/wmclient/subwindow_option.h create mode 100644 display_server/interfaces/inner_api/wmclient/virtual_display_option.h create mode 100755 display_server/interfaces/inner_api/wmclient/window.h create mode 100644 display_server/interfaces/inner_api/wmclient/window_manager.h create mode 100644 display_server/interfaces/inner_api/wmclient/window_manager_type.h create mode 100644 display_server/interfaces/inner_api/wmclient/window_option.h create mode 100755 display_server/interfaces/inner_api/wmclient/wm_common.h create mode 100644 display_server/interfaces/inner_api/wmservice/iwindow_change_listener_clazz.h create mode 100644 display_server/interfaces/inner_api/wmservice/iwindow_manager_display_listener_clazz.h create mode 100644 display_server/interfaces/inner_api/wmservice/iwindow_manager_service.h create mode 100644 display_server/interfaces/inner_api/wmservice/window_manager_service_client.h create mode 100644 display_server/interfaces/inner_api/wmservice/window_manager_service_type.h create mode 100644 display_server/interfaces/kits/js/declaration/BUILD.gn create mode 100644 display_server/interfaces/kits/js/declaration/api/@ohos.display.d.ts create mode 100644 display_server/interfaces/kits/js/declaration/api/@ohos.window.d.ts create mode 100644 display_server/interfaces/kits/napi/BUILD.gn create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/BUILD.gn create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_callback.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_callback.h create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_controller.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_controller.h create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_manager.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_manager.h create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_module.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_utils.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/animation/window_animation_manager/rs_window_animation_utils.h create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/BUILD.gn create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/api/@ohos.graphics.colorSpaceManager.d.ts create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/color_space_object_convertor.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/color_space_object_convertor.h create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/js_color_space.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/js_color_space.h create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/js_color_space_utils.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/color_space_object_convertor/js_color_space_utils.h create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/colorspacemanager_napi/color_space_manager_module.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/colorspacemanager_napi/js_color_space_manager.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/color_manager/colorspacemanager_napi/js_color_space_manager.h create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/BUILD.gn create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/include/color_picker_napi.h create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/include/filter_napi.h create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/include/native_module_ohos_effect.h create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/src/color_picker_napi.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/src/filter_napi.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/effect_kit/src/native_module_ohos_effect.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/BUILD.gn create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_class.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_class.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_exporter.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_func_arg.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_func_arg.h create mode 100755 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_val.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/n_val.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/common/napi/uni_header.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/canvas_render_context_base.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl2_rendering_context.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl2_rendering_context_base.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl2_rendering_context_overloads.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl_context_attributes.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl_rendering_context.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl_rendering_context_base.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl_rendering_context_basic_base.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/context/webgl_rendering_context_overloads.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/util/egl_manager.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/util/log.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/util/object_manager.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/util/object_source.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/util/util.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_active_info.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_buffer.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_framebuffer.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_program.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_query.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_renderbuffer.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_sampler.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_shader.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_shader_precision_format.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_sync.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_texture.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_transform_feedback.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_uniform_location.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/include/webgl/webgl_vertex_array_object.h create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/module.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/egl_manager.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/util.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl2_rendering_context.cpp create mode 100755 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl2_rendering_context_base.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl2_rendering_context_overloads.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_active_info.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_buffer.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_framebuffer.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_program.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_query.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_renderbuffer.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_rendering_context.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_rendering_context_base.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_rendering_context_basic_base.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_rendering_context_overloads.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_sampler.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_shader.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_shader_precision_format.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_sync.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_texture.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_transform_feedback.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_uniform_location.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/webgl/src/webgl/src/webgl_vertex_array_object.cpp create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/package.json create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/config.json create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/java/com/test/window/Test.java create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/java/com/test/window/TestAbility.java create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/js/default/i18n/en-US.json create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/js/default/i18n/zh-CN.json create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/js/default/pages/index/index.css create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/js/default/pages/index/index.hml create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/resources/base/element/string.json create mode 100644 display_server/interfaces/kits/napi/graphic/window_hap/entry/src/main/resources/base/media/icon.png create mode 100644 display_server/interfaces/kits/ndk/EGL/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/EGL/libEGL.ndk.json create mode 100644 display_server/interfaces/kits/ndk/GLES3/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/GLES3/libGLESv3.ndk.json create mode 100644 display_server/interfaces/kits/ndk/KHR/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_buffer/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_buffer/libnative_buffer.ndk.json create mode 100644 display_server/interfaces/kits/ndk/native_drawing/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_drawing/libnative_drawing.ndk.json create mode 100644 display_server/interfaces/kits/ndk/native_image/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_image/libnative_image.ndk.json create mode 100644 display_server/interfaces/kits/ndk/native_vsync/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_vsync/libnative_vsync.ndk.json create mode 100644 display_server/interfaces/kits/ndk/native_window/BUILD.gn create mode 100644 display_server/interfaces/kits/ndk/native_window/libnative_window.ndk.json create mode 100755 display_server/rosen/build/flutter/BUILD.gn create mode 100644 display_server/rosen/build/flutter/freetype/BUILD.gn create mode 100644 display_server/rosen/build/flutter/glfw/BUILD.gn create mode 100644 display_server/rosen/build/flutter/harfbuzz/BUILD.gn create mode 100644 display_server/rosen/build/flutter/icu/BUILD.gn create mode 100644 display_server/rosen/build/flutter/libjpeg/BUILD.gn create mode 100644 display_server/rosen/build/flutter/libpng/BUILD.gn create mode 100755 display_server/rosen/build/flutter/libtxt/BUILD.gn create mode 100644 display_server/rosen/build/flutter/libwebp/BUILD.gn create mode 100644 display_server/rosen/build/flutter/ohos_layers/BUILD.gn create mode 100644 display_server/rosen/build/flutter/sfntly/BUILD.gn create mode 100644 display_server/rosen/include/common/graphic_error.h create mode 100755 display_server/rosen/modules/2d_engine/README.md create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/BUILD.gn create mode 100644 display_server/rosen/modules/2d_engine/rosen_text/config.gni create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/BUILD.gn create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/font_collection_base.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/font_collection_txt.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/font_collection_txt.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/font_collection_txt_base.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/placeholder_run.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/placeholder_run.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/rosen_converter_txt.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/rosen_converter_txt.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/text_style.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/text_style.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_base.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_create_base.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_create_txt.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_create_txt.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_properties.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_style.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_style.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_txt.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/properties/typography_txt.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/BUILD.gn create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/base_impl.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/font_collection.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/font_collection.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/typography.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/typography.h create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/typography_create.cpp create mode 100755 display_server/rosen/modules/2d_engine/rosen_text/ui/typography_create.h create mode 100644 display_server/rosen/modules/2d_graphics/.clang-format create mode 100644 display_server/rosen/modules/2d_graphics/2d_graphics.versionscript create mode 100755 display_server/rosen/modules/2d_graphics/BUILD.gn create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_bitmap.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_brush.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_canvas.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_color.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_font_collection.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_path.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_pen.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_text_declaration.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_text_typography.h create mode 100644 display_server/rosen/modules/2d_graphics/include/c/drawing_types.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/blend_mode.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/brush.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/canvas.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/clip.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/color.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/path.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/pen.h create mode 100644 display_server/rosen/modules/2d_graphics/include/draw/shadow.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/color_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/color_matrix.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/color_space.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/filter.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/image_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/mask_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/path_effect.h create mode 100644 display_server/rosen/modules/2d_graphics/include/effect/shader_effect.h create mode 100644 display_server/rosen/modules/2d_graphics/include/image/bitmap.h create mode 100644 display_server/rosen/modules/2d_graphics/include/image/image.h create mode 100644 display_server/rosen/modules/2d_graphics/include/image/picture.h create mode 100644 display_server/rosen/modules/2d_graphics/include/text/text.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/camera3d.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/log.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/matrix.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/point.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/point3.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/rect.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/round_rect.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/sampling_options.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/scalar.h create mode 100644 display_server/rosen/modules/2d_graphics/include/utils/size.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_bitmap.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_brush.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_canvas.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_color.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_font_collection.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_path.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_pen.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/c/drawing_text_typography.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/draw/brush.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/draw/color.cpp create mode 100755 display_server/rosen/modules/2d_graphics/src/drawing/draw/core_canvas.cpp create mode 100755 display_server/rosen/modules/2d_graphics/src/drawing/draw/core_canvas.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/draw/path.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/draw/pen.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/color_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/color_space.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/image_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/mask_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/path_effect.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/effect/shader_effect.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_factory.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_factory.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/adapter_type.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/base_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/bitmap_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/camera_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/color_filter_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/color_space_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/core_canvas_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/image_filter_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/image_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/mask_filter_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/matrix_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/path_effect_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/path_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/picture_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/impl_interface/shader_effect_impl.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_bitmap.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_bitmap.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_camera.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_camera.h create mode 100755 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_canvas.cpp create mode 100755 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_canvas.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_color_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_color_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_color_space.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_color_space.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_image.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_image.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_image_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_image_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_impl_factory.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_impl_factory.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_mask_filter.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_mask_filter.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_matrix.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_matrix.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_paint.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_paint.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_path.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_path.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_path_effect.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_path_effect.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_picture.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_picture.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_shader_effect.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/engine_adapter/skia_adapter/skia_shader_effect.h create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/image/bitmap.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/image/image.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/image/picture.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/text/text.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/utils/camera3d.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/drawing/utils/matrix.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/cache_data.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/cache_data.h create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/memory_handler.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/memory_handler.h create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/render_context.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/render_context.h create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/shader_cache.cpp create mode 100644 display_server/rosen/modules/2d_graphics/src/render_context/shader_cache.h create mode 100644 display_server/rosen/modules/animation/window_animation/BUILD.gn create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_iwindow_animation_controller.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_iwindow_animation_finished_callback.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_finished_callback.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_finished_callback_proxy.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_finished_callback_stub.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_log.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_proxy.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_stub.h create mode 100644 display_server/rosen/modules/animation/window_animation/include/rs_window_animation_target.h create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_finish_callback_stub.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_finished_callback.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_finished_callback_proxy.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_proxy.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_stub.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/src/rs_window_animation_target.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/test/BUILD.gn create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/BUILD.gn create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/rswindowanimation_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/rswindowanimation_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/rswindowanimation_fuzzer/project.xml create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/rswindowanimation_fuzzer/rswindowanimation_fuzzer.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/test/fuzztest/rswindowanimation_fuzzer/rswindowanimation_fuzzer.h create mode 100644 display_server/rosen/modules/animation/window_animation/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/animation/window_animation/test/unittest/rs_window_animation_finished_callback_proxy_test.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/test/unittest/rs_window_animation_finished_callback_stub_test.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/test/unittest/rs_window_animation_proxy_test.cpp create mode 100644 display_server/rosen/modules/animation/window_animation/test/unittest/rs_window_animation_stub_test.cpp create mode 100644 display_server/rosen/modules/composer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_backend.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_device.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_framebuffer_surface.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_layer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_layer_info.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_log.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_output.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/include/hdi_screen.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_backend.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_device.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_framebuffer_surface.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_layer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_output.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/src/hdi_screen.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdibackend_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdibackend_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdibackend_fuzzer/hdibackend_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdibackend_fuzzer/hdibackend_fuzzer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdibackend_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdidevice_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdidevice_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdidevice_fuzzer/hdidevice_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdidevice_fuzzer/hdidevice_fuzzer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdidevice_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdilayer_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdilayer_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdilayer_fuzzer/hdilayer_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdilayer_fuzzer/hdilayer_fuzzer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdilayer_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdioutput_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdioutput_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdioutput_fuzzer/hdioutput_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdioutput_fuzzer/hdioutput_fuzzer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdioutput_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdiscreen_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdiscreen_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdiscreen_fuzzer/hdiscreen_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdiscreen_fuzzer/hdiscreen_fuzzer.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/fuzztest/hdiscreen_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdibackend_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdilayer_context_systest.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdilayer_context_systest.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdilayer_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdioutput_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/hdiscreen_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/mock_hdi_device_systest.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/systemtest/mock_hdi_device_systest.h create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdibackend_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdidevice_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdiframebuffersurface_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdilayer_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdilayerinfo_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdioutput_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/hdiscreen_test.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/mock_hdi_device.cpp create mode 100644 display_server/rosen/modules/composer/hdi_backend/test/unittest/mock_hdi_device.h create mode 100644 display_server/rosen/modules/composer/native_vsync/BUILD.gn create mode 100644 display_server/rosen/modules/composer/native_vsync/native_vsync.cpp create mode 100644 display_server/rosen/modules/composer/vsync/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/include/ivsync_connection.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_connection_proxy.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_connection_stub.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_controller.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_distributor.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_generator.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_log.h create mode 100644 display_server/rosen/modules/composer/vsync/include/vsync_sampler.h create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_connection_proxy.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_connection_stub.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_controller.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_distributor.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_generator.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_receiver.cpp create mode 100644 display_server/rosen/modules/composer/vsync/src/vsync_sampler.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncconnection_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncconnection_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncconnection_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncconnection_fuzzer/vsyncconnection_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncconnection_fuzzer/vsyncconnection_fuzzer.h create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsynccontroller_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsynccontroller_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsynccontroller_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsynccontroller_fuzzer/vsynccontroller_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsynccontroller_fuzzer/vsynccontroller_fuzzer.h create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncdistributor_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncdistributor_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncdistributor_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncdistributor_fuzzer/vsyncdistributor_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncdistributor_fuzzer/vsyncdistributor_fuzzer.h create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncreceiver_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncreceiver_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncreceiver_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncreceiver_fuzzer/vsyncreceiver_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncreceiver_fuzzer/vsyncreceiver_fuzzer.h create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncsampler_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncsampler_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncsampler_fuzzer/project.xml create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncsampler_fuzzer/vsyncsampler_fuzzer.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/fuzztest/vsyncsampler_fuzzer/vsyncsampler_fuzzer.h create mode 100644 display_server/rosen/modules/composer/vsync/test/systemtest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/systemtest/vsync_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/native_vsync_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_connection_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_controller_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_distributor_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_generator_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_receiver_test.cpp create mode 100644 display_server/rosen/modules/composer/vsync/test/unittest/vsync_sampler_test.cpp create mode 100644 display_server/rosen/modules/effect/color_picker/BUILD.gn create mode 100644 display_server/rosen/modules/effect/color_picker/include/color_picker.h create mode 100644 display_server/rosen/modules/effect/color_picker/include/effect_errors.h create mode 100644 display_server/rosen/modules/effect/color_picker/include/effect_type.h create mode 100644 display_server/rosen/modules/effect/color_picker/include/effect_utils.h create mode 100644 display_server/rosen/modules/effect/color_picker/src/color_picker.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/BUILD.gn create mode 100644 display_server/rosen/modules/effect/effectChain/include/algo_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/brightness_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/builder.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/contrast_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/ec_log.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/filter_factory.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/gaussian_blur_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/horizontal_blur_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/image_chain.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/input.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/mesh.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/output.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/program.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/saturation_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/scale_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/include/vertical_blur_filter.h create mode 100644 display_server/rosen/modules/effect/effectChain/src/algo_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/brightness_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/builder.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/contrast_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/filter_factory.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/gaussian_blur_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/horizontal_blur_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/image_chain.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/input.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/mesh.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/output.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/program.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/saturation_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/scale_filter.cpp create mode 100644 display_server/rosen/modules/effect/effectChain/src/vertical_blur_filter.cpp create mode 100644 display_server/rosen/modules/effect/effect_config.gni create mode 100644 display_server/rosen/modules/effect/egl/BUILD.gn create mode 100644 display_server/rosen/modules/effect/egl/include/egl_manager.h create mode 100644 display_server/rosen/modules/effect/egl/src/egl_manager.cpp create mode 100644 display_server/rosen/modules/effect/skia_effectChain/BUILD.gn create mode 100644 display_server/rosen/modules/effect/skia_effectChain/include/sk_image_chain.h create mode 100644 display_server/rosen/modules/effect/skia_effectChain/include/sk_image_filter_factory.h create mode 100644 display_server/rosen/modules/effect/skia_effectChain/src/sk_image_chain.cpp create mode 100644 display_server/rosen/modules/effect/skia_effectChain/src/sk_image_filter_factory.cpp create mode 100644 display_server/rosen/modules/effect/test/BUILD.gn create mode 100644 display_server/rosen/modules/effect/test/resource/images/test.jpg create mode 100644 display_server/rosen/modules/effect/test/resource/images/test.png create mode 100644 display_server/rosen/modules/effect/test/test_effect_chain.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/effect/test/unittest/algo_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/algo_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/brightness_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/brightness_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/color_picker_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/color_picker_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/contrast_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/contrast_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/effect_chain_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/effect_chain_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/filter_factory_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/filter_factory_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/gaussian_blur_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/gaussian_blur_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/horizontal_blur_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/horizontal_blur_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/image_chain_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/image_chain_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/input_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/input_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/mesh_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/mesh_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/output_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/output_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/program_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/program_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/saturation_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/saturation_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/scale_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/scale_filter_unittest.h create mode 100644 display_server/rosen/modules/effect/test/unittest/test_picture_files.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/test_picture_files.h create mode 100644 display_server/rosen/modules/effect/test/unittest/vertical_blur_filter_unittest.cpp create mode 100644 display_server/rosen/modules/effect/test/unittest/vertical_blur_filter_unittest.h create mode 100644 display_server/rosen/modules/frame_analyzer/BUILD.gn create mode 100644 display_server/rosen/modules/frame_analyzer/export/frame_collector.h create mode 100644 display_server/rosen/modules/frame_analyzer/export/frame_info.h create mode 100644 display_server/rosen/modules/frame_analyzer/export/frame_painter.h create mode 100644 display_server/rosen/modules/frame_analyzer/export/ring_queue.h create mode 100644 display_server/rosen/modules/frame_analyzer/src/frame_collector.cpp create mode 100644 display_server/rosen/modules/frame_analyzer/src/frame_painter.cpp create mode 100644 display_server/rosen/modules/frame_analyzer/src/frame_saver.cpp create mode 100644 display_server/rosen/modules/frame_analyzer/src/frame_saver.h create mode 100644 display_server/rosen/modules/frame_analyzer/src/mingw/frame_collector.cpp create mode 100644 display_server/rosen/modules/frame_analyzer/src/mingw/frame_painter.cpp create mode 100644 display_server/rosen/modules/glfw_render_context/BUILD.gn create mode 100644 display_server/rosen/modules/glfw_render_context/export/glfw_render_context.h create mode 100644 display_server/rosen/modules/glfw_render_context/src/glfw_render_context.cpp create mode 100644 display_server/rosen/modules/platform/BUILD.gn create mode 100644 display_server/rosen/modules/platform/config.gni create mode 100644 display_server/rosen/modules/platform/eventhandler/dumper.h create mode 100644 display_server/rosen/modules/platform/eventhandler/event_handler.h create mode 100644 display_server/rosen/modules/platform/eventhandler/event_handler_errors.h create mode 100644 display_server/rosen/modules/platform/eventhandler/event_queue.h create mode 100644 display_server/rosen/modules/platform/eventhandler/event_runner.h create mode 100644 display_server/rosen/modules/platform/eventhandler/file_descriptor_listener.h create mode 100644 display_server/rosen/modules/platform/eventhandler/inner_event.h create mode 100644 display_server/rosen/modules/platform/eventhandler/logger.h create mode 100644 display_server/rosen/modules/platform/eventhandler/native_implement_eventhandler.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/epoll_io_waiter.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/epoll_io_waiter_mingw.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/event_handler.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/event_handler_utils.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/event_inner_runner.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/event_queue.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/event_runner.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/file_descriptor_listener.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/inner_event.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/io_waiter.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/native_implement_eventhandler.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/none_io_waiter.cpp create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/none_io_waiter.h create mode 100644 display_server/rosen/modules/platform/eventhandler_impl/thread_local_data.h create mode 100644 display_server/rosen/modules/platform/image_native/image_type.h create mode 100644 display_server/rosen/modules/platform/image_native/pixel_map.cpp create mode 100644 display_server/rosen/modules/platform/image_native/pixel_map.h create mode 100644 display_server/rosen/modules/platform/image_native/pixel_map_rosen_utils.cpp create mode 100644 display_server/rosen/modules/platform/image_native/pixel_map_rosen_utils.h create mode 100644 display_server/rosen/modules/platform/ipc_core/ipc_object_proxy.h create mode 100644 display_server/rosen/modules/platform/ipc_core/ipc_object_stub.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/ipc_object_stub.h create mode 100644 display_server/rosen/modules/platform/ipc_core/ipc_types.h create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_broker.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_broker.h create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_object.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_object.h create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_proxy.h create mode 100644 display_server/rosen/modules/platform/ipc_core/iremote_stub.h create mode 100644 display_server/rosen/modules/platform/ipc_core/message_option.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/message_option.h create mode 100644 display_server/rosen/modules/platform/ipc_core/message_parcel.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/message_parcel.h create mode 100644 display_server/rosen/modules/platform/ipc_core/peer_holder.cpp create mode 100644 display_server/rosen/modules/platform/ipc_core/peer_holder.h create mode 100644 display_server/rosen/modules/platform/utils/ashmem.h create mode 100644 display_server/rosen/modules/platform/utils/directory_ex.cpp create mode 100644 display_server/rosen/modules/platform/utils/directory_ex.h create mode 100644 display_server/rosen/modules/platform/utils/errors.h create mode 100644 display_server/rosen/modules/platform/utils/flat_obj.h create mode 100644 display_server/rosen/modules/platform/utils/nocopyable.h create mode 100644 display_server/rosen/modules/platform/utils/parcel.cpp create mode 100644 display_server/rosen/modules/platform/utils/parcel.h create mode 100644 display_server/rosen/modules/platform/utils/refbase.cpp create mode 100644 display_server/rosen/modules/platform/utils/refbase.h create mode 100644 display_server/rosen/modules/platform/utils/singleton.h create mode 100644 display_server/rosen/modules/platform/utils/utils_log.h create mode 100644 display_server/rosen/modules/render_frame_trace/BUILD.gn create mode 100644 display_server/rosen/modules/render_frame_trace/include/render_frame_trace.h create mode 100644 display_server/rosen/modules/render_frame_trace/include/render_frame_trace_impl.h create mode 100644 display_server/rosen/modules/render_frame_trace/src/render_frame_trace.cpp create mode 100644 display_server/rosen/modules/render_frame_trace/src/render_frame_trace_impl.cpp create mode 100644 display_server/rosen/modules/render_service/BUILD.gn create mode 100644 display_server/rosen/modules/render_service/core/main.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_base_render_engine.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_base_render_engine.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_base_render_util.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_base_render_util.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_cold_start_thread.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_cold_start_thread.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_composer_adapter.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_composer_adapter.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_divided_render_util.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_divided_render_util.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_egl_image_manager.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_egl_image_manager.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_main_thread.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_main_thread.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_physical_screen_processor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_physical_screen_processor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_processor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_processor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_processor_factory.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_processor_factory.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_qos_thread.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_qos_thread.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_engine.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_engine.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_connection.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_connection.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_listener.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_listener.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_visitor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_render_service_visitor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_surface_capture_task.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_surface_capture_task.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_engine.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_engine.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_judgement.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_judgement.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_listener.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_listener.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_mirror_processor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_mirror_processor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_processor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_processor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_util.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_util.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_visitor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_uni_render_visitor.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_unmarshal_thread.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_unmarshal_thread.h create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_virtual_screen_processor.cpp create mode 100644 display_server/rosen/modules/render_service/core/pipeline/rs_virtual_screen_processor.h create mode 100644 display_server/rosen/modules/render_service/core/screen_manager/rs_screen.cpp create mode 100644 display_server/rosen/modules/render_service/core/screen_manager/rs_screen.h create mode 100644 display_server/rosen/modules/render_service/core/screen_manager/rs_screen_manager.cpp create mode 100644 display_server/rosen/modules/render_service/core/screen_manager/rs_screen_manager.h create mode 100644 display_server/rosen/modules/render_service/core/transaction/rs_render_service_connection_stub.cpp create mode 100644 display_server/rosen/modules/render_service/core/transaction/rs_render_service_connection_stub.h create mode 100644 display_server/rosen/modules/render_service/core/transaction/rs_render_service_stub.cpp create mode 100644 display_server/rosen/modules/render_service/core/transaction/rs_render_service_stub.h create mode 100644 display_server/rosen/modules/render_service_base/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/config.gni create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_animation_common.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_animation_fraction.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_animation_manager.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_animation_timing_protocol.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_cubic_bezier_interpolator.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_interpolator.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_curve_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_keyframe_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_path_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_property_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_spring_animation.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_transition.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_render_transition_effect.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_spring_interpolator.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_spring_model.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_steps_interpolator.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_transition_effect.h create mode 100644 display_server/rosen/modules/render_service_base/include/animation/rs_value_estimator.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_animation_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_base_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_canvas_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_command_factory.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_command_templates.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_display_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_message_processor.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_proxy_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_root_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/command/rs_surface_node_command.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_color.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_color_palette.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_common_def.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_macros.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_matrix3.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_obj_abs_geometry.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_obj_geometry.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_occlusion_region.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_rect.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_shared_context.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_singleton.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_thread_handler.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_thread_looper.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_vector2.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_vector3.h create mode 100644 display_server/rosen/modules/render_service_base/include/common/rs_vector4.h create mode 100644 display_server/rosen/modules/render_service_base/include/delegate/rs_delegate.h create mode 100644 display_server/rosen/modules/render_service_base/include/delegate/rs_functional_delegate.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/buffer_available_callback.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/iapplication_agent.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/rs_iocclusion_change_callback.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/rs_irender_mode_change_callback.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/screen_change_callback.h create mode 100644 display_server/rosen/modules/render_service_base/include/ipc_callbacks/surface_capture_callback.h create mode 100644 display_server/rosen/modules/render_service_base/include/modifier/rs_animatable_arithmetic.h create mode 100644 display_server/rosen/modules/render_service_base/include/modifier/rs_modifier_type.h create mode 100644 display_server/rosen/modules/render_service_base/include/modifier/rs_modifiers_def.in create mode 100644 display_server/rosen/modules/render_service_base/include/modifier/rs_render_modifier.h create mode 100644 display_server/rosen/modules/render_service_base/include/modifier/rs_render_property.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_base_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_canvas_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_context.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_dirty_region_manager.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_display_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_draw_cmd.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_draw_cmd_list.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_frame_report.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_occlusion_config.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_paint_filter_canvas.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_proxy_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_recording_canvas.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_render_node_map.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_render_result.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_root_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_surface_handler.h create mode 100644 display_server/rosen/modules/render_service_base/include/pipeline/rs_surface_render_node.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_accessibility.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_event_detector.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_event_manager.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_innovation.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_log.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/common/rs_system_properties.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/drawing/rs_surface.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/drawing/rs_surface_converter.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/drawing/rs_surface_frame.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/drawing/rs_vsync_client.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/overdraw/rs_canvas_listener.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/overdraw/rs_cpu_overdraw_canvas_listener.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/overdraw/rs_gpu_overdraw_canvas_listener.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/overdraw/rs_listened_canvas.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/overdraw/rs_overdraw_controller.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/rs_irender_service.h create mode 100644 display_server/rosen/modules/render_service_base/include/platform/ohos/rs_irender_service_connection.h create mode 100644 display_server/rosen/modules/render_service_base/include/property/rs_properties.h create mode 100644 display_server/rosen/modules/render_service_base/include/property/rs_properties_def.h create mode 100644 display_server/rosen/modules/render_service_base/include/property/rs_properties_painter.h create mode 100644 display_server/rosen/modules/render_service_base/include/property/rs_property_trace.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_blur_filter.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_border.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_filter.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_image.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_image_cache.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_mask.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_material_filter.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_path.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_shader.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_shadow.h create mode 100644 display_server/rosen/modules/render_service_base/include/render/rs_skia_filter.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_screen_capability.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_screen_data.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_screen_hdr_capability.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_screen_mode_info.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_screen_props.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/rs_virtual_screen_resolution.h create mode 100644 display_server/rosen/modules/render_service_base/include/screen_manager/screen_types.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_ashmem_helper.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_irender_client.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_marshalling_helper.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_occlusion_data.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_render_service_client.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_transaction_data.h create mode 100644 display_server/rosen/modules/render_service_base/include/transaction/rs_transaction_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/include/visitor/rs_node_visitor.h create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_animation_fraction.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_animation_manager.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_interpolator.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_curve_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_keyframe_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_path_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_property_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_spring_animation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_transition.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_render_transition_effect.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_spring_interpolator.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_spring_model.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_steps_interpolator.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_transition_effect.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/animation/rs_value_estimator.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_animation_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_base_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_canvas_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_command_factory.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_display_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_message_processor.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_proxy_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_root_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/command/rs_surface_node_command.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_color.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_common_def.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_obj_abs_geometry.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_occlusion_region.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_shared_context.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_handler_generic.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_handler_generic.h create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_looper_generic.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_looper_generic.h create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_looper_impl.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/common/rs_thread_looper_impl.h create mode 100644 display_server/rosen/modules/render_service_base/src/delegate/rs_functional_delegate.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/buffer_available_callback_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/buffer_available_callback_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/buffer_available_callback_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/buffer_available_callback_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_application_agent_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_application_agent_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_application_agent_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_application_agent_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_occlusion_change_callback_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_occlusion_change_callback_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_occlusion_change_callback_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_occlusion_change_callback_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_render_mode_change_callback_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_render_mode_change_callback_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_render_mode_change_callback_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/rs_render_mode_change_callback_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/screen_change_callback_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/screen_change_callback_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/screen_change_callback_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/screen_change_callback_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/surface_capture_callback_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/surface_capture_callback_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/surface_capture_callback_stub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/ipc_callbacks/surface_capture_callback_stub.h create mode 100644 display_server/rosen/modules/render_service_base/src/modifier/rs_render_modifier.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/modifier/rs_render_property.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_base_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_canvas_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_context.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_dirty_region_manager.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_display_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_draw_cmd.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_draw_cmd_list.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_occlusion_config.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_paint_filter_canvas.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_proxy_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_recording_canvas.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_render_node_map.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_root_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_surface_handler.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/pipeline/rs_surface_render_node.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_accessibility.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_ashmem_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_frame_report.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_marshalling_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_render_service_client.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_surface_darwin.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_surface_darwin.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_surface_frame_darwin.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_surface_frame_darwin.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_surface_ohos_converter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_system_properties.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_vsync_client_darwin.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/darwin/rs_vsync_client_darwin.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_frame_ohos_gl.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_frame_ohos_gl.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_frame_ohos_raster.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_frame_ohos_raster.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_ohos_gl.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_ohos_gl.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_ohos_raster.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/backend/rs_surface_ohos_raster.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/overdraw/rs_cpu_overdraw_canvas_listener.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/overdraw/rs_gpu_overdraw_canvas_listener.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/overdraw/rs_listened_canvas.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/overdraw/rs_overdraw_controller.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_accessibility.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_ashmem_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_event_detector.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_event_manager.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_frame_report.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_innovation.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_log.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_marshalling_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_client.cpp create mode 100755 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_connect_hub.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_connect_hub.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_connection_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_connection_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_render_service_proxy.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_surface_frame_ohos.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_surface_frame_ohos.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_surface_ohos.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_surface_ohos.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_surface_ohos_converter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_system_properties.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_vsync_client_ohos.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/ohos/rs_vsync_client_ohos.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_accessibility.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_ashmem_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_frame_report.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_marshalling_helper.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_render_service_client.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_surface_frame_windows.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_surface_frame_windows.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_surface_windows.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_surface_windows.h create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_system_properties.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_vsync_client_windows.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/platform/windows/rs_vsync_client_windows.h create mode 100644 display_server/rosen/modules/render_service_base/src/property/rs_properties.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/property/rs_properties_painter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/property/rs_property_trace.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_blur_filter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_border.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_filter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_image.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_image_cache.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_mask.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_material_filter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_path.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_shader.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_shadow.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/render/rs_skia_filter.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_screen_capability.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_screen_data.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_screen_hdr_capability.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_screen_mode_info.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_screen_props.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/screen_manager/rs_virtual_screen_resolution.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/transaction/rs_occlusion_data.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/transaction/rs_transaction_data.cpp create mode 100644 display_server/rosen/modules/render_service_base/src/transaction/rs_transaction_proxy.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/rsanimationbase_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/rsanimationbase_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/rsanimationbase_fuzzer/project.xml create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/rsanimationbase_fuzzer/rsanimationbase_fuzzer.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/fuzztest/rsanimationbase_fuzzer/rsanimationbase_fuzzer.h create mode 100644 display_server/rosen/modules/render_service_base/test/main.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_animation_fraction_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_animation_manager_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_interpolator_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_property_trace_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_render_curve_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_render_keyframe_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_render_path_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_render_spring_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_render_transition_effect_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_spring_model_test.cpp create mode 100644 display_server/rosen/modules/render_service_base/test/unittest/animation/rs_value_estimator_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_callback.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_callback.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_group.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_group.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_manager_map.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_manager_map.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_timing_curve.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_animation_timing_curve.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_curve_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_curve_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animation_param.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animation_param.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animator.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animator.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animator_map.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_implicit_animator_map.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_keyframe_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_keyframe_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_motion_path_option.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_path_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_path_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_property_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_property_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_spring_animation.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_spring_animation.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_transition.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_transition.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_ui_animation_manager.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/rs_ui_animation_manager.h create mode 100644 display_server/rosen/modules/render_service_client/core/animation/test/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/core/animation/test/unittest/animation/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/core/animation/test/unittest/animation/rs_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/animation/test/unittest/animation/rs_animation_test.h create mode 100644 display_server/rosen/modules/render_service_client/core/jank_detector/rs_jank_detector.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/jank_detector/rs_jank_detector.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_extended_modifier.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_extended_modifier.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_modifier.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_modifier_extractor.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_modifier_extractor.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_modifier_manager.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_modifier_manager.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_property.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_property.h create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_property_modifier.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/modifier/rs_property_modifier.h create mode 100644 display_server/rosen/modules/render_service_client/core/pipeline/rs_node_map.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/pipeline/rs_node_map.h create mode 100644 display_server/rosen/modules/render_service_client/core/pipeline/rs_render_thread.cpp create mode 100755 display_server/rosen/modules/render_service_client/core/pipeline/rs_render_thread.h create mode 100644 display_server/rosen/modules/render_service_client/core/pipeline/rs_render_thread_visitor.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/pipeline/rs_render_thread_visitor.h create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_application_agent_impl.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_application_agent_impl.h create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_interfaces.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_interfaces.h create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_render_thread_client.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_render_thread_client.h create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_transaction.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/transaction/rs_transaction.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_base_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_base_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_canvas_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_canvas_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_display_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_display_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_pixel_map_util.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_pixel_map_util.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_proxy_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_proxy_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_root_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_root_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_surface_extractor.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_surface_extractor.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_surface_node.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_surface_node.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_ui_director.cpp create mode 100755 display_server/rosen/modules/render_service_client/core/ui/rs_ui_director.h create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_ui_share_context.cpp create mode 100644 display_server/rosen/modules/render_service_client/core/ui/rs_ui_share_context.h create mode 100644 display_server/rosen/modules/render_service_client/render_service_client.gni create mode 100644 display_server/rosen/modules/render_service_client/test/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/rsanimation_fuzzer/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/rsanimation_fuzzer/corpus/init create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/rsanimation_fuzzer/project.xml create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/rsanimation_fuzzer/rsanimation_fuzzer.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/fuzztest/rsanimation_fuzzer/rsanimation_fuzzer.h create mode 100644 display_server/rosen/modules/render_service_client/test/media_callback.h create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_app_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_gravity_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_modifier_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_overlay_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_rs_animation_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_rs_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_scale_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_surface_node_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_tunnel_handle_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_client_uni_render_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/render_service_display_mode_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/rs_uni_render_pixelmap_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/security_layer_demo.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/surface_capture_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/systemtest/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/systemtest/rs_interfaces_system_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/systemtest/rs_interfaces_test_utils.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/systemtest/rs_interfaces_test_utils.h create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/BUILD.gn create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_base_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_base_test.h create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_group_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_supplement_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_test_utils.h create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_animation_timing_curve_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_curve_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_keyframe_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_motion_path_option_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_node_animate_supplement_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_path_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_spring_animation_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/animation/rs_transition_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_dirty_manager_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_display_mode_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_dropframe_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_event_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_interfaces_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_jank_detector_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_region_test.cpp create mode 100644 display_server/rosen/modules/render_service_client/test/unittest/rs_tunnel_handle_test.cpp create mode 100644 display_server/rosen/modules/utils/README.md create mode 100644 display_server/rosen/modules/utils/error_code.h create mode 100644 display_server/rosen/modules/utils/string_utils.h create mode 100644 display_server/rosen/samples/2d_graphics/BUILD.gn create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark.h create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_api/drawing_api.h create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_config.cpp create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_config.h create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_multithread/drawing_multithread.h create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_multithread/drawing_mutilthread.cpp create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_result.h create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_singlethread/drawing_singlethread.cpp create mode 100644 display_server/rosen/samples/2d_graphics/benchmarks/benchmark_singlethread/drawing_singlethread.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_c_sample.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/canvas_context.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/canvas_context.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_proxy.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_proxy.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_base.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame_ohos.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame_ohos_gl.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame_ohos_gl.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame_ohos_raster.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_frame_ohos_raster.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos_gl.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos_gl.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos_raster.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_surface/surface_ohos_raster.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/drawing_utils.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/egl_manager.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/egl_manager.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/gles_render_backend.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/gles_render_backend.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/interface_render_backend.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/software_render_backend.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine/software_render_backend.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine_sample.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_engine_sample.h create mode 100644 display_server/rosen/samples/2d_graphics/drawing_sample_canvaskit0310.cpp create mode 100644 display_server/rosen/samples/2d_graphics/drawing_sample_rs.cpp create mode 100755 display_server/rosen/samples/2d_graphics/main.cpp create mode 100644 display_server/rosen/samples/2d_graphics/render_context_sample.cpp create mode 100755 display_server/rosen/samples/2d_graphics/render_context_sample.h create mode 100644 display_server/rosen/samples/2d_graphics/test/BUILD.gn create mode 100644 display_server/rosen/samples/2d_graphics/test/drawing_sample.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/drawing_sample.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/bitmap_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/camera_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/filter_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/image_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/layer_context.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/matrix_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/path_effect_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/path_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/shader_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/include/shadow_test.h create mode 100644 display_server/rosen/samples/2d_graphics/test/main.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/bitmap_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/camera_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/filter_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/image_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/layer_context.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/matrix_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/path_effect_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/path_test.cpp create mode 100644 display_server/rosen/samples/2d_graphics/test/src/shader_test.cpp create mode 100644 display_server/rosen/samples/composer/BUILD.gn create mode 100644 display_server/rosen/samples/composer/hello_composer.cpp create mode 100644 display_server/rosen/samples/composer/hello_composer.h create mode 100644 display_server/rosen/samples/composer/layer_context.cpp create mode 100644 display_server/rosen/samples/composer/layer_context.h create mode 100644 display_server/rosen/samples/composer/main.cpp create mode 100644 display_server/rosen/samples/hello_native_buffer/BUILD.gn create mode 100644 display_server/rosen/samples/hello_native_buffer/hello_native_buffer.cpp create mode 100644 display_server/rosen/samples/hello_native_image/BUILD.gn create mode 100644 display_server/rosen/samples/hello_native_image/hello_native_image.cpp create mode 100644 display_server/rosen/samples/hello_native_image/hello_native_image_unsupported.cpp create mode 100644 display_server/rosen/samples/hello_native_window/BUILD.gn create mode 100644 display_server/rosen/samples/hello_native_window/hello_native_window.cpp create mode 100644 display_server/rosen/samples/hello_rosen/BUILD.gn create mode 100644 display_server/rosen/samples/hello_rosen/HelloRosen.cpp create mode 100644 display_server/rosen/samples/hello_vsync/BUILD.gn create mode 100644 display_server/rosen/samples/hello_vsync/hello_vsync.cpp create mode 100755 display_server/rosen/samples/text/renderservice/BUILD.gn create mode 100644 display_server/rosen/samples/text/renderservice/drawing_text_c_sample.cpp create mode 100755 display_server/rosen/samples/text/renderservice/etc/renderservice.cfg create mode 100755 display_server/rosen/samples/text/renderservice/etc/renderservice.rc create mode 100755 display_server/rosen/samples/text/renderservice/include/util.h create mode 100755 display_server/rosen/samples/text/renderservice/main.cpp create mode 100644 display_server/rosen/test/2d_engine/BUILD.gn create mode 100644 display_server/rosen/test/2d_engine/unittest/BUILD.gn create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/properties/BUILD.gn create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/properties/place_holder_test.cpp create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/properties/rosen_coverter_txt_test.cpp create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/properties/text_style_test.cpp create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/properties/typography_style_test.cpp create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/ui/BUILD.gn create mode 100644 display_server/rosen/test/2d_engine/unittest/rosen_text/ui/typography_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/brush_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/brush_fuzzer/brush_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/brush_fuzzer/brush_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/brush_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/brush_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/color_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/color_fuzzer/color_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/color_fuzzer/color_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/color_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/color_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/path_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/path_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/path_fuzzer/path_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/path_fuzzer/path_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/draw/path_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/patheffect_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/patheffect_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/patheffect_fuzzer/patheffect_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/patheffect_fuzzer/patheffect_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/effect/patheffect_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/get_object.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/bitmap_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/bitmap_fuzzer/bitmap_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/bitmap_fuzzer/bitmap_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/bitmap_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/bitmap_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/image_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/image_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/image_fuzzer/image_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/image_fuzzer/image_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/image/image_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/camera3d_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/camera3d_fuzzer/camera3d_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/camera3d_fuzzer/camera3d_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/camera3d_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/camera3d_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/matrix_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/matrix_fuzzer/corpus/init create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/matrix_fuzzer/matrix_fuzzer.cpp create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/matrix_fuzzer/matrix_fuzzer.h create mode 100644 display_server/rosen/test/2d_graphics/fuzztest/utils/matrix_fuzzer/project.xml create mode 100644 display_server/rosen/test/2d_graphics/unittest/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/brush_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/canvas_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/color_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/path_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/draw/pen_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/color_filter_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/color_matrix_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/color_space_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/filter_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/mask_filter_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/path_effect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/effect/shader_effect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/image/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/image/bitmap_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/image/image_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/image/picture_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_bitmap_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_brush_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_canvas_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_color_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_font_collection_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_path_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_pen_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/ndk/drawing_text_typography_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/render_context/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/render_context/cache_data_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/render_context/render_context_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/render_context/shader_cache_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_canvas_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_image_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_matrix_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_paint_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_path_effect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/skia_adapter/skia_shader_effect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/BUILD.gn create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/camera3d_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/matrix_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/point3_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/point_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/rect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/round_rect_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/sampling_options_test.cpp create mode 100644 display_server/rosen/test/2d_graphics/unittest/utils/size_test.cpp create mode 100644 display_server/rosen/test/README.md create mode 100644 display_server/rosen/test/frame_analyzer/BUILD.gn create mode 100644 display_server/rosen/test/frame_analyzer/unittest/BUILD.gn create mode 100644 display_server/rosen/test/frame_analyzer/unittest/frame_collector_test.cpp create mode 100644 display_server/rosen/test/frame_analyzer/unittest/frame_painter_test.cpp create mode 100644 display_server/rosen/test/include/limit_number.h create mode 100755 display_server/rosen/test/render_service/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service/systemtest/pipeline/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service/systemtest/pipeline/rs_base_render_engine_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/systemtest/pipeline/rs_drop_frame_processor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/systemtest/pipeline/rs_render_service_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/systemtest/pipeline/rs_uni_render_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service/unittest/pipeline/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_base_render_util_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_cold_start_thread_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_composer_adapter_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_divided_render_util_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_drop_frame_processor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_main_thread_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_physical_screen_processor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_processor_factory_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_qos_thread_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_render_service_listener_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_render_service_visitor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_surface_capture_task_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_test_util.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_test_util.h create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_uni_render_judgement_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_uni_render_util_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_uni_render_visitor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/pipeline/rs_virtual_screen_processor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/screen_manager/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service/unittest/screen_manager/rs_screen_manager_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/screen_manager/rs_screen_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/transaction/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service/unittest/transaction/rs_render_service_connection_stub_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service/unittest/transaction/rs_render_service_stub_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rspipelinerender_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rspipelinerender_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rspipelinerender_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rspipelinerender_fuzzer/rspipelinerender_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rspipelinerender_fuzzer/rspipelinerender_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rsrendernode_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rsrendernode_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rsrendernode_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rsrendernode_fuzzer/rsrendernode_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/pipeline/rsrendernode_fuzzer/rsrendernode_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasecommon_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasecommon_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasecommon_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasecommon_fuzzer/rsbasecommon_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasecommon_fuzzer/rsbasecommon_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasescreenmanager_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasescreenmanager_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasescreenmanager_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasescreenmanager_fuzzer/rsbasescreenmanager_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsbasescreenmanager_fuzzer/rsbasescreenmanager_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsproperty_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsproperty_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsproperty_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsproperty_fuzzer/rsproperty_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsproperty_fuzzer/rsproperty_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsrenderimage_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsrenderimage_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsrenderimage_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsrenderimage_fuzzer/rsrenderimage_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rsrenderimage_fuzzer/rsrenderimage_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rssurfaceohos_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rssurfaceohos_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rssurfaceohos_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rssurfaceohos_fuzzer/rssurfaceohos_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/fuzztest/rssurfaceohos_fuzzer/rssurfaceohos_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/animation/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/animation/rs_steps_interpolator_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_animation_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_base_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_canvas_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_display_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_proxy_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_root_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/command/rs_surface_node_command_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/common/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/common/rs_occlusion_region_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/common/rs_thread_looper_impl_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/delegate/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/delegate/rs_functional_delegate_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/modifier/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/modifier/rs_render_modifier_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/modifier/rs_render_property_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/overdraw/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/overdraw/rs_cpu_overdraw_canvas_listener_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/overdraw/rs_gpu_overdraw_canvas_listener_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/overdraw/rs_listened_canvas_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/overdraw/rs_overdraw_controller_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_base_render_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_canvas_render_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_dirty_region_manager_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_draw_cmd_list_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_draw_cmd_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_frame_report_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_occlusion_config_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_paint_filter_canvas_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_proxy_render_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_recording_canvas_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_render_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/pipeline/rs_surface_render_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/backend/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/backend/rs_surface_frame_ohos_gl_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/backend/rs_surface_frame_ohos_raster_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/backend/rs_surface_ohos_gl_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/backend/rs_surface_ohos_raster_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/rs_event_manager_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/rs_render_service_client_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/rs_render_service_proxy_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/rs_surface_ohos_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/platform/ohos/rs_vsync_client_ohos_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/property/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/property/rs_properties_painter_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/property/rs_properties_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/property/rs_property_trace_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/render/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/render/rs_border_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/render/rs_image_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/render/rs_mask_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/render/rs_shadow_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/screen_manager/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/screen_manager/rs_screen_capability_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/screen_manager/rs_screen_data_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/screen_manager/rs_screen_hdr_capability_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/screen_manager/rs_screen_props_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/transaction/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/transaction/rs_ashmem_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/transaction/rs_marshalling_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_base/unittest/transaction/rs_transaction_proxy_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsinterfaces_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsinterfaces_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsinterfaces_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsinterfaces_fuzzer/rsinterfaces_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsinterfaces_fuzzer/rsinterfaces_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsmodifiermanager_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsmodifiermanager_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsmodifiermanager_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsmodifiermanager_fuzzer/rsmodifiermanager_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsmodifiermanager_fuzzer/rsmodifiermanager_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsnodemap_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsnodemap_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsnodemap_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsnodemap_fuzzer/rsnodemap_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rsnodemap_fuzzer/rsnodemap_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rspropertyclient_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rspropertyclient_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rspropertyclient_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rspropertyclient_fuzzer/rspropertyclient_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/rspropertyclient_fuzzer/rspropertyclient_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsnode_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsnode_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsnode_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsnode_fuzzer/rsnode_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsnode_fuzzer/rsnode_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsuisurface_fuzzer/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsuisurface_fuzzer/corpus/init create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsuisurface_fuzzer/project.xml create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsuisurface_fuzzer/rsuisurface_fuzzer.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/fuzztest/ui/rsuisurface_fuzzer/rsuisurface_fuzzer.h create mode 100644 display_server/rosen/test/render_service/render_service_client/systemtest/ui/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/systemtest/ui/rs_uni_render_surface_node_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service_client/unittest/modifier/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/modifier/rs_modifier_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/modifier/rs_property_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/pipeline/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/pipeline/rs_node_map_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/pipeline/rs_render_thread_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/pipeline/rs_render_thread_visitor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/transaction/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/transaction/rs_transaction_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service_client/unittest/ui/BUILD.gn create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_canvas_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_display_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_proxy_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_root_node_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_surface_extractor_test.cpp create mode 100644 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_surface_node_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_ui_director_test.cpp create mode 100755 display_server/rosen/test/render_service/render_service_client/unittest/ui/rs_ui_share_context_test.cpp create mode 100644 display_server/rosen/tools/gn_project_to_cmake.py create mode 100644 display_server/utils/BUILD.gn create mode 100644 display_server/utils/buffer_handle/BUILD.gn create mode 100755 display_server/utils/buffer_handle/export/buffer_handle_parcel.h create mode 100644 display_server/utils/buffer_handle/export/buffer_handle_utils.h create mode 100644 display_server/utils/buffer_handle/src/buffer_handle.cpp create mode 100644 display_server/utils/build/graphic_2d_ext_exists.py create mode 100755 display_server/utils/color_manager/BUILD.gn create mode 100755 display_server/utils/color_manager/export/color.h create mode 100755 display_server/utils/color_manager/export/color_space.h create mode 100755 display_server/utils/color_manager/export/color_space_convertor.h create mode 100755 display_server/utils/color_manager/src/color.cpp create mode 100755 display_server/utils/color_manager/src/color_space.cpp create mode 100755 display_server/utils/color_manager/src/color_space_convertor.cpp create mode 100755 display_server/utils/color_manager/test/BUILD.gn create mode 100644 display_server/utils/color_manager/test/fuzztest/BUILD.gn create mode 100644 display_server/utils/color_manager/test/fuzztest/colormanager_fuzzer/BUILD.gn create mode 100644 display_server/utils/color_manager/test/fuzztest/colormanager_fuzzer/colormanager_fuzzer.cpp create mode 100644 display_server/utils/color_manager/test/fuzztest/colormanager_fuzzer/colormanager_fuzzer.h create mode 100644 display_server/utils/color_manager/test/fuzztest/colormanager_fuzzer/corpus/init create mode 100644 display_server/utils/color_manager/test/fuzztest/colormanager_fuzzer/project.xml create mode 100644 display_server/utils/color_manager/test/unittest/BUILD.gn create mode 100644 display_server/utils/color_manager/test/unittest/color_manager_test.cpp create mode 100755 display_server/utils/lex_yacc/gen_flexlexer_header.py create mode 100755 display_server/utils/lex_yacc/gen_lex_cpp.py create mode 100755 display_server/utils/lex_yacc/gen_yacc_cpp.py create mode 100644 display_server/utils/lex_yacc/lex_yacc.gni create mode 100644 display_server/utils/log/rs_trace.h create mode 100644 display_server/utils/matrix/BUILD.gn create mode 100644 display_server/utils/matrix/export/matrix.h create mode 100644 display_server/utils/promise/BUILD.gn create mode 100644 display_server/utils/promise/export/promise.h create mode 100644 display_server/utils/sandbox/BUILD.gn create mode 100644 display_server/utils/sandbox/sandbox_utils.cpp create mode 100644 display_server/utils/sandbox/sandbox_utils.h create mode 100644 display_server/utils/scoped_bytrace/BUILD.gn create mode 100644 display_server/utils/scoped_bytrace/export/scoped_bytrace.h create mode 100644 display_server/utils/scoped_bytrace/src/scoped_bytrace.cpp create mode 100644 display_server/utils/socketpair/BUILD.gn create mode 100644 display_server/utils/socketpair/export/local_socketpair.h create mode 100644 display_server/utils/socketpair/src/local_socketpair.cpp create mode 100644 display_server/utils/socketpair/test/BUILD.gn create mode 100644 display_server/utils/socketpair/test/unittest/BUILD.gn create mode 100644 display_server/utils/socketpair/test/unittest/socketpair_test.cpp create mode 100644 display_server/utils/sync_fence/BUILD.gn create mode 100644 display_server/utils/sync_fence/export/sw_sync.h create mode 100644 display_server/utils/sync_fence/export/sync_fence.h create mode 100644 display_server/utils/sync_fence/export/sync_fence_timeline.h create mode 100644 display_server/utils/sync_fence/export/sync_fence_tracker.h create mode 100644 display_server/utils/sync_fence/src/sync_fence.cpp create mode 100644 display_server/utils/sync_fence/src/sync_fence_timeline.cpp create mode 100644 display_server/utils/sync_fence/src/sync_fence_tracker.cpp create mode 100644 display_server/utils/sync_fence/test/BUILD.gn create mode 100644 display_server/utils/sync_fence/test/unittest/BUILD.gn create mode 100644 display_server/utils/sync_fence/test/unittest/sync_fence_test.cpp create mode 100755 display_server/utils/test_header/BUILD.gn create mode 100644 display_server/utils/test_header/export/test_header.h create mode 100755 display_server/utils/wmlayout/gen_scss.py create mode 100644 display_server/utils/wmlayout/wmlayout.gni diff --git a/display_server/.clang-format b/display_server/.clang-format new file mode 100644 index 0000000..5f4ec48 --- /dev/null +++ b/display_server/.clang-format @@ -0,0 +1,106 @@ +--- +Language: Cpp +AccessModifierOffset: -4 +AlignAfterOpenBracket: DontAlign +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +AlignOperands: true +AlignTrailingComments: true +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: Empty +AllowShortIfStatementsOnASingleLine: Never +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: Yes +BinPackArguments: true +BinPackParameters: true +BreakBeforeBraces: Custom +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: true + AfterNamespace: false + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false + IndentBraces: false + SplitEmptyFunction: false + SplitEmptyRecord: false + SplitEmptyNamespace: false +BreakBeforeBinaryOperators: None +BreakBeforeInheritanceComma: false +BreakBeforeTernaryOperators: true +BreakConstructorInitializers: BeforeColon +BreakInheritanceList: BeforeColon +BreakStringLiterals: true +BreakAfterJavaFieldAnnotations: true +ColumnLimit: 120 +CommentPragmas: '^ IWYU pragma:' +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: false +DerivePointerAlignment: false +DisableFormat: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Regroup +IncludeCategories: + - Regex: '^"(animation|backend|c|command|common|draw|drawing|effect|image|ipc_callbacks|modifier|overdraw|platform|pipeline|property|render|render_context|screen_manager|text|transaction|ui|utils|visitor)/' + Priority: 3 + - Regex: '<*>' + Priority: 1 + - Regex: '.*' + Priority: 2 +IndentCaseLabels: true +IndentPPDirectives: None +IndentWidth: 4 +IndentWrappedFunctionNames: false +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 39 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 80 +PointerAlignment: Left +ReflowComments: true +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: false +SpaceBeforeAssignmentOperators: true +SpaceBeforeCpp11BracedList: true +SpaceBeforeCtorInitializerColon: true +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInCStyleCastParentheses: false +SpacesInContainerLiterals: true +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp11 +TabWidth: 4 +UseTab: Never +... diff --git a/display_server/.gitattributes b/display_server/.gitattributes new file mode 100644 index 0000000..51c63e2 --- /dev/null +++ b/display_server/.gitattributes @@ -0,0 +1,15 @@ +*.tgz filter=lfs diff=lfs merge=lfs -text +*.trp filter=lfs diff=lfs merge=lfs -text +*.apk filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.mp4 filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.asm filter=lfs diff=lfs merge=lfs -text +*.8svn filter=lfs diff=lfs merge=lfs -text +*.9svn filter=lfs diff=lfs merge=lfs -text +*.dylib filter=lfs diff=lfs merge=lfs -text +*.exe filter=lfs diff=lfs merge=lfs -text +*.a filter=lfs diff=lfs merge=lfs -text +*.so filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.dll filter=lfs diff=lfs merge=lfs -text diff --git a/display_server/BUILD.gn b/display_server/BUILD.gn new file mode 100755 index 0000000..b913835 --- /dev/null +++ b/display_server/BUILD.gn @@ -0,0 +1,69 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/ohos.gni") +import("//foundation/graphic/graphic_2d/utils/wmlayout/wmlayout.gni") +import("graphic_config.gni") + +group("default") { + public_deps = [ ":graphic.rc" ] + + if (graphic_standard_feature_bootanimation_enable) { + public_deps += [ "frameworks/bootanimation:bootanimation" ] + public_deps += [ "frameworks/bootanimation:bootanimation_pics" ] + public_deps += [ "frameworks/bootanimation:bootanimation_sounds" ] + } +} + +group("graphic_2d_test") { + testonly = true + + public_deps = [ + "frameworks/opengl_wrapper/test:test", + "frameworks/surface/test:test", + "frameworks/vulkan_wrapper/test:test", + "rosen/modules/composer:test", + "rosen/modules/effect/test/unittest:test", + "rosen/test/frame_analyzer:test", + "rosen/test/render_service:test", + "utils/color_manager:test", + "utils/socketpair:test", + "utils/sync_fence:test", + ] +} + +## Install graphic.rc to /system/etc/init/graphic.rc {{{ +ohos_prebuilt_etc("graphic.rc") { + source = "graphic.cfg" + relative_install_dir = "init" + part_name = "graphic_standard" + subsystem_name = "graphic" +} + +## Install graphic.rc to /system/etc/init/graphic.rc }}} + +group("libsurface") { + public_deps = [ "frameworks/surface:surface" ] +} + +group("libfence") { + public_deps = [ "frameworks/fence:libfence" ] +} + +group("libgl") { + public_deps = libgl +} + +group("libnative_image") { + public_deps = [ "frameworks/surfaceimage:libnative_image" ] +} diff --git a/display_server/LICENSE b/display_server/LICENSE new file mode 100644 index 0000000..4947287 --- /dev/null +++ b/display_server/LICENSE @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/display_server/OAT.xml b/display_server/OAT.xml new file mode 100755 index 0000000..b480e90 --- /dev/null +++ b/display_server/OAT.xml @@ -0,0 +1,72 @@ + + + + + + LICENSE + + + + + + + + + + + + + diff --git a/display_server/bundle.json b/display_server/bundle.json new file mode 100755 index 0000000..755e6d2 --- /dev/null +++ b/display_server/bundle.json @@ -0,0 +1,157 @@ +{ + "name": "@ohos/graphic_standard", + "description": "graphic_standard", + "version": "3.1", + "license": "Apache License 2.0", + "publishAs": "code-segment", + "segment": { + "destPath": "foundation/graphic/graphic_2d" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "graphic_standard", + "subsystem": "graphic", + "syscap": [ + "SystemCapability.Graphic.Graphic2D.ColorManager.Core", + "SystemCapability.Graphic.Graphic2D.EGL", + "SystemCapability.Graphic.Graphic2D.GLES3", + "SystemCapability.Graphic.Graphic2D.NativeWindow", + "SystemCapability.Graphic.Graphic2D.NativeDrawing", + "SystemCapability.Graphic.Graphic2D.WebGL", + "SystemCapability.Graphic.Graphic2D.WebGL2" + ], + "adapted_system_type": [ "standard" ], + "features": [ + "graphic_standard_feature_bootanimation_enable", + "graphic_standard_feature_ace_enable_gpu", + "graphic_standard_feature_rs_enable_eglimage", + "graphic_standard_feature_color_gamut_enable", + "graphic_standard_feature_rs_enable_uni_render", + "graphic_standard_feature_wuji_enable", + "graphic_standard_feature_enable_afbc", + "graphic_standard_feature_freemem_enable" + ], + "rom": "10000KB", + "ram": "10000KB", + "hisysevent_config": [ + "//foundation/graphic/graphic_2d/hisysevent.yaml" + ], + "deps": { + "components": [ + "libhilog", + "ipc_core", + "samgr_proxy", + "utils", + "libeventhandler", + "image_native", + "hdi_display_device", + "bytrace_core" + ], + "third_party": [ + "libz" + ] + }, + "build": { + "group_type": { + "base_group": [ + "//third_party/libpng:libpng", + "//foundation/graphic/graphic_2d/interfaces/kits/napi:napi_packages", + "//foundation/graphic/graphic_2d/rosen/modules/composer:libcomposer", + "//foundation/graphic/graphic_2d/rosen/modules/composer/native_vsync:libnative_vsync", + "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics:2d_graphics", + "//foundation/graphic/graphic_2d/rosen/samples/2d_graphics:drawing_sample_rs", + "//foundation/graphic/graphic_2d/rosen/samples/2d_graphics:drawing_engine_sample", + "//foundation/graphic/graphic_2d/rosen/samples/2d_graphics/test:drawing_sample", + "//foundation/graphic/graphic_2d/rosen/modules/effect/effectChain:libeffectchain", + "//foundation/graphic/graphic_2d/rosen/modules/effect/color_picker:color_picker", + "//foundation/graphic/graphic_2d/rosen/modules/effect/skia_effectChain:skeffectchain", + "//foundation/graphic/graphic_2d/frameworks/opengl_wrapper:EGL", + "//foundation/graphic/graphic_2d/frameworks/opengl_wrapper:GLESv3", + "//foundation/graphic/graphic_2d/frameworks/surfaceimage:libnative_image", + "//foundation/graphic/graphic_2d/rosen/modules/effect/egl:libegl_effect", + "//foundation/graphic/graphic_2d/frameworks/vulkan_wrapper:vulkan" + ], + "fwk_group": [ + "//foundation/graphic/graphic_2d/rosen/modules/render_service_base:librender_service_base", + "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client" + ], + "service_group": [ + "//foundation/graphic/graphic_2d:default", + "//foundation/graphic/graphic_2d/rosen/modules/render_service:librender_service", + "//foundation/graphic/graphic_2d/rosen/modules/render_service:render_service", + "//foundation/graphic/graphic_2d/etc:ohos.para.dac" + ] + }, + "inner_kits": [ + { + "type": "so", + "name": "//foundation/graphic/graphic_2d/frameworks/surface:surface", + "header": { + "header_files": [ + "buffer_extra_data.h", + "egl_data.h", + "egl_surface.h", + "external_window.h", + "native_buffer.h", + "native_buffer_inner.h", + "native_image.h", + "ibuffer_consumer_listener.h", + "ibuffer_producer.h", + "surface.h", + "surface_buffer.h", + "surface_type.h", + "surface_utils.h", + "window.h" + ], + "header_base": "//foundation/graphic/graphic_2d/interfaces/inner_api/surface" + } + }, + { + "type": "so", + "name": "//foundation/graphic/graphic_2d/rosen/modules/composer:libcomposer", + "header": { + "header_files": [ + "vsync_receiver.h" + ], + "header_base": "//foundation/graphic/graphic_2d/interfaces/inner_api/composer" + } + }, + { + "type": "so", + "name": "//foundation/graphic/graphic_2d/utils:libgraphic_utils", + "header": { + "header_files": [ + "graphic_common.h", + "graphic_common_c.h" + ], + "header_base": "//foundation/graphic/graphic_2d/interfaces/inner_api/common" + } + }, + { + "type": "so", + "name": "//foundation/graphic/graphic_2d/rosen/modules/animation/window_animation:window_animation", + "header": { + "header_files": [ + "rs_iwindow_animation_controller.h", + "rs_iwindow_animation_finished_callback.h", + "rs_window_animation_finished_callback_stub.h", + "rs_window_animation_finished_callback.h", + "rs_window_animation_stub.h", + "rs_window_animation_target.h" + ], + "header_base": "//foundation/graphic/graphic_2d/rosen/modules/animation/window_animation/include" + } + } + ], + "test": [ + "//foundation/graphic/graphic_2d:graphic_2d_test", + "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:test", + "//foundation/graphic/graphic_2d/rosen/test/2d_graphics:test", + "//foundation/graphic/graphic_2d/rosen/modules/animation/window_animation/test:test", + "//foundation/graphic/graphic_2d/rosen/modules/render_service_base/test:test", + "//foundation/graphic/graphic_2d/rosen/test/2d_engine:test" + ] + } + } + } diff --git a/display_server/default.scss b/display_server/default.scss new file mode 100644 index 0000000..b824eff --- /dev/null +++ b/display_server/default.scss @@ -0,0 +1,321 @@ +// Copyright (c) 2021 Huawei Device Co., Ltd. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// WMLayout + +// # window type { +// // all mode attribute define +// attr: value; +// &:mode { +// // special mode attribute define +// attr: value; +// } +// } + +// layout_attribute: left, top, width, height +// align_attribute: horizon-align, vertical-align +// other_attribute: z-index, position + +// z-index: {number} +// position: relative, fixed, static +// horizon-align: left, middle, right +// vertical-align: top, middle, bottom +// left, top, width, height: {number}% + +// "&:mode": full, free, unset(default in type) + +// relative layout in Relative Rectangle +// Relative Rectangle = FullScreen Rectangle - all of (Static Rectangle) +// fixed layout don't affect other layout + +#WINDOW_TYPE_NORMAL { + z-index: 0; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100.0%; + height: 100.0%; + &:free { + z-index: 51; + } +} + +#WINDOW_TYPE_SPLIT_LINE { + z-index: 0; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100.0%; + height: 100.0%; +} + +#WINDOW_TYPE_STATUS_BAR { + z-index: 10; + position: static; + horizon-align: middle; + vertical-align: top; + width: 100%; + height: 7%; +} + +#WINDOW_TYPE_NAVI_BAR { + z-index: 20; + position: static; + horizon-align: middle; + vertical-align: bottom; + width: 100%; + height: 7%; +} + +#WINDOW_TYPE_ALARM_SCREEN { + z-index: 30; + position: fixed; + horizon-align: middle; + vertical-align: middle; + width: 80%; + height: 30%; +} + +#WINDOW_TYPE_SYSTEM_UI { + z-index: 31; + position: relative; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_LAUNCHER { + z-index: 40; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100.0%; + height: 100.0%; +} + +#WINDOW_TYPE_VIDEO { + z-index: 41; +} + +#WINDOW_TYPE_INPUT_METHOD { + z-index: 50; + position: relative; + horizon-align: middle; + vertical-align: bottom; + width: 100.0%; + height: 33.3%; +} + +#WINDOW_TYPE_INPUT_METHOD_SELECTOR { + z-index: 60; + position: relative; + horizon-align: middle; + vertical-align: bottom; + width: 90.0%; + height: 33.3%; +} + +#WINDOW_TYPE_VOLUME_OVERLAY { + z-index: 70; + position: fixed; + horizon-align: middle; + width: 95.0%; + + top: 2.5%; + height: 40.0%; +} + +#WINDOW_TYPE_NOTIFICATION_SHADE { + z-index: 80; + position: fixed; + horizon-align: middle; + vertical-align: top; + width: 100%; + height: 50%; +} + +#WINDOW_TYPE_FLOAT { + z-index: 90; + position: relative; + horizon-align: middle; + width: 85%; + + top: 7.5%; + height: 50%; +} + +#WINDOW_TYPE_SCREENSAVER { + z-index: 100; + position: fixed; + horizon-align: middle; + vertical-align: middle; + width: 100.0%; + height: 100.0%; +} + +#WINDOW_TYPE_SEARCHER { + z-index: 110; + position: relative; + horizon-align: middle; + vertical-align: bottom; + width: 80.0%; + height: 7%; +} + +#WINDOW_TYPE_CALLING { + z-index: 120; + horizon-align: middle; + top: 5%; + width: 80.0%; + height: 7%; +} + +#WINDOW_TYPE_TOAST { + z-index: 130; + position: relative; + horizon-align: middle; + width: 80.0%; + top: 86%; + height: 7%; +} + +#WINDOW_TYPE_SCREENSAVER_CALLING { + z-index: 140; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100.0%; + height: 100.0%; +} + +#WINDOW_TYPE_SCREENSAVER_DIALOG { + z-index: 150; + position: relative; + horizon-align: middle; + // vertical-align: top; + top: 40%; + width: 90.0%; + height: 10.0%; +} + +#WINDOW_TYPE_SYSTEM_ERROR { + z-index: 160; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 80%; + height: 30%; +} + +#WINDOW_TYPE_WALLPAPER { + z-index: 170; + position: fixed; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_STATUS_SCREEN { + z-index: 180; + position: fixed; + horizon-align: middle; + vertical-align: top; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_SAFE_OVERLAY { + z-index: 190; + position: fixed; + horizon-align: middle; + vertical-align: bottom; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_FULL_SCREEN { + z-index: 200; + position: fixed; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_POPUP { + z-index: 210; + position: relative; + horizon-align: middle; + vertical-align: top; + width: 80%; + height: 18%; +} + +#WINDOW_TYPE_ANIMATION { + z-index: 990; + position: fixed; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_LAUNCH_PAGE { + z-index: 0; + position: fixed; + vertical-align: top; + width: 100%; + height: 93%; +} + +#WINDOW_TYPE_CURSOR { + z-index: 999; + position: fixed; + width: 1%; + height: 1%; +} + +#WINDOW_TYPE_APPLICATION_BASE { + z-index: 1; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_APPLICATION_FIRST { + z-index: 2; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} + +#WINDOW_TYPE_APPLICATION_NORMAL { + z-index: 3; + position: relative; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} + +//This Window is Toppest +#WINDOW_TYPE_TOP { + z-index: 9999; + position: fixed; + horizon-align: middle; + vertical-align: middle; + width: 100%; + height: 100%; +} diff --git a/display_server/etc/BUILD.gn b/display_server/etc/BUILD.gn new file mode 100644 index 0000000..e7e16af --- /dev/null +++ b/display_server/etc/BUILD.gn @@ -0,0 +1,20 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("ohos.para.dac") { + source = "//foundation/graphic/graphic_2d/etc/graphic.para.dac" + part_name = "graphic_standard" + module_install_dir = "etc/param" +} diff --git a/display_server/etc/graphic.para.dac b/display_server/etc/graphic.para.dac new file mode 100644 index 0000000..ae75153 --- /dev/null +++ b/display_server/etc/graphic.para.dac @@ -0,0 +1,15 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +persist.sys.graphic.animationscale = accessibility:accessibility:0777 +debug.graphic. = accessibility:accessibility:0777 \ No newline at end of file diff --git a/display_server/figures/graphic.png b/display_server/figures/graphic.png new file mode 100644 index 0000000000000000000000000000000000000000..b72003f5221553d66ae4b4183f92bcfcac595bc2 GIT binary patch literal 46331 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