# graphic_utils **Repository Path**: aiyongfu/graphic_utils ## Basic Information - **Project Name**: graphic_utils - **Description**: Graphic fundamental components | 图形基础组件 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 146 - **Created**: 2021-06-10 - **Last Updated**: 2021-06-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Utils - [Introduction](#section11660541593) - [Directory Structure](#section161941989596) - [Compilation and Building](#section137768191623) - [Description](#section1312121216216) - [Usage](#section129654513264) - [Repositories Involved](#section1371113476307) ## Introduction The Utils module defines the common data structure in the graphics subsystem and provides a lite OS adaptation layer, which includes the lock, thread, and file system. **Figure 1** Dependency between modules of the graphics subsystem ![](figures/dependency-between-modules-of-the-graphics-subsystem.png "dependency-between-modules-of-the-graphics-subsystem") ## Directory Structure ``` /foundation/graphic/utils ├── frameworks # Framework code │ ├── hals # Hardware adaptation layer │ ├── linux # Linux platform adaptation layer │ ├── liteos # LiteOS platform adaptation layer │ └── windows # Windows platform adaptation layer ├── interfaces # APIs │ ├── innerkits # APIs between modules │ │ └── hals # APIs of the hardware adaptation layer │ └── kits # External APIs └── test # Unit testing ``` ## Compilation and Building ``` # Generate the libgraphic_utils.so file in the out directory of the product folder through GN compilation. hb build lite_graphic_utils ``` ## Description ### Usage - Utils is used in UI, surface, and WMS modules. For details, see the related source code. - The **test** folder provides unit testing for each utils API. Refer to it for the usage of utils. ## Repositories Involved [Graphic subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/graphics-subsystem.md) [graphic_wms](https://gitee.com/openharmony/graphic_wms/blob/master/README.md) [graphic_surface](https://gitee.com/openharmony/graphic_surface/blob/master/README.md) [graphic_ui](https://gitee.com/openharmony/graphic_ui/blob/master/README.md) # Hals - [Introduction](#section11660541593) - [Directory Structure](#section161941989596) - [Compilation and Building](#section137768191623) - [Description](#section1312121216216) - [Usage](#section129654513264) - [Repositories Involved](#section1371113476307) ## Introduction The Hals module adapts and encapsulates the functions related to the driver subsystem and platform, including FrameBuffer, graphics \(GFX\), and single instruction, multiple data \(SIMD\). **Figure 1** Dependency between modules of the graphics subsystem and that between graphics modules and the driver subsystem ![](figures/dependency-between-modules-of-the-graphics-subsystem-and-that-between-graphics-modules-and-the-drive.png "dependency-between-modules-of-the-graphics-subsystem-and-that-between-graphics-modules-and-the-drive") ## Directory Structure ``` /foundation/graphic/utils ├── frameworks # Framework code │ ├── hals # Hardware adaptation layer │ ├── linux # Linux platform adaptation layer │ ├── liteos # LiteOS platform adaptation layer │ └── windows # Windows platform adaptation layer ├── interfaces # APIs │ ├── innerkits # APIs between modules │ │ └── hals # APIs of the hardware adaptation layer │ └── kits # External APIs └── test # Unit testing ``` ## Compilation and Building ``` # Generate the libgraphic_hals.so file in the out directory of the product folder through GN compilation. hb build lite_graphic_utils ``` ## Description ### Usage - Hals is used in UI, surface, and WMS modules. For details, see the related source code. ## Repositories Involved [Graphic subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/graphics-subsystem.md) [graphic_wms](https://gitee.com/openharmony/graphic_wms/blob/master/README.md) [graphic_surface](https://gitee.com/openharmony/graphic_surface/blob/master/README.md) [graphic_ui](https://gitee.com/openharmony/graphic_ui/blob/master/README.md) **graphic_utils**