README.md
Utils
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
Directory Structure
/foundation/graphic/graphic_utils_lite
├── frameworks # Framework code
│ ├── diagram # 2d graphic engine implementation
│ │ ├── depiction # Smooth curve point generation algorithm
│ │ ├── rasterizer # rasterizer handling
│ │ ├── vertexgenerate # vertex generation
│ │ └── vertexprimitive # vertex primitive generation
│ └── hals # Hardware adaptation layer
├── interfaces # APIs
│ ├── innerkits # APIs between modules
│ │ └── hals # APIs of the hardware adaptation layer
│ └── kits # External APIs
│ └── gfx_utils
└── 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 graphic_utils_lite
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
Hals
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
Directory Structure
/foundation/graphic/graphic_utils_lite
├── 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 graphic_utils_lite
Description
Usage
- Hals is used in UI, surface, and WMS modules. For details, see the related source code.
Repositories Involved
graphic_graphic_utils_lite