2025-08-04 14:25:14 +08:00
|
|
|
#include "modules/modules.h"
|
2023-08-20 20:51:55 +08:00
|
|
|
|
2026-05-28 15:38:18 +08:00
|
|
|
// Note:
|
2026-05-30 18:37:42 +08:00
|
|
|
// FF_MODULE_DISABLE_<module> only controls if the module is registered,
|
2026-05-28 15:38:18 +08:00
|
|
|
// the module code itself is still compiled.
|
|
|
|
|
// We rely `LTO` to remove the unused code (only enabled in Release mode)
|
|
|
|
|
|
2023-08-20 20:51:55 +08:00
|
|
|
static FFModuleBaseInfo* A[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* B[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BATTERY
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBatteryModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BIOS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBiosModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BLUETOOTH
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBluetoothModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BLUETOOTHRADIO
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBluetoothRadioModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BOARD
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBoardModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BOOTMGR
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBootmgrModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BREAK
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBreakModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BRIGHTNESS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBrightnessModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_BTRFS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffBtrfsModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* C[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CAMERA
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCameraModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CHASSIS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffChassisModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-31 13:16:24 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CODEC
|
|
|
|
|
&ffCodecModuleInfo,
|
|
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_COMMAND
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCommandModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_COLORS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffColorsModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CPU
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCPUModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CPUCACHE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCPUCacheModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CPUUSAGE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCPUUsageModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CURSOR
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCursorModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_CUSTOM
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffCustomModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* D[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DATETIME
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDateTimeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDEModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DISPLAY
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDisplayModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DISK
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDiskModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DISKIO
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDiskIOModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_DNS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffDNSModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* E[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_EDITOR
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffEditorModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* F[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_FONT
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffFontModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* G[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_GAMEPAD
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffGamepadModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_GPU
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffGPUModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* H[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_HOST
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffHostModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* I[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_ICONS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffIconsModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_INITSYSTEM
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffInitSystemModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* J[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* K[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_KERNEL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffKernelModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_KEYBOARD
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffKeyboardModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* L[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_LM
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffLMModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_LOADAVG
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffLoadavgModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_LOCALE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffLocaleModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_LOCALIP
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffLocalIPModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_LOGO
|
2026-01-08 16:29:24 +08:00
|
|
|
&ffLogoModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* M[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_MEDIA
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffMediaModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_MEMORY
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffMemoryModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_MONITOR
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffMonitorModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_MOUSE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffMouseModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* N[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_NETIO
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffNetIOModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* O[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_OPENCL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffOpenCLModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_OPENGL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffOpenGLModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_OS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffOSModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* P[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PACKAGES
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPackagesModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PHYSICALDISK
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPhysicalDiskModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PHYSICALMEMORY
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPhysicalMemoryModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PLAYER
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPlayerModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_POWERADAPTER
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPowerAdapterModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PROCESSES
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffProcessesModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_PUBLICIP
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffPublicIPModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* Q[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* R[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* S[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_SEPARATOR
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffSeparatorModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_SHELL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffShellModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_SOUND
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffSoundModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_SWAP
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffSwapModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* T[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TERMINAL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTerminalModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TERMINALFONT
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTerminalFontModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TERMINALSIZE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTerminalSizeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TERMINALTHEME
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTerminalThemeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TITLE
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTitleModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_THEME
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffThemeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_TPM
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffTPMModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* U[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_UPTIME
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffUptimeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_USERS
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffUsersModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* V[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_VERSION
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffVersionModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_VULKAN
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffVulkanModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* W[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_WALLPAPER
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffWallpaperModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_WEATHER
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffWeatherModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_WM
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffWMModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_WIFI
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffWifiModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_WMTHEME
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffWMThemeModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* X[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* Y[] = {
|
|
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static FFModuleBaseInfo* Z[] = {
|
2026-05-30 18:37:42 +08:00
|
|
|
#if !FF_MODULE_DISABLE_ZPOOL
|
2025-08-04 14:25:14 +08:00
|
|
|
&ffZpoolModuleInfo,
|
2026-05-28 15:38:18 +08:00
|
|
|
#endif
|
2023-08-20 20:51:55 +08:00
|
|
|
NULL,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
FFModuleBaseInfo** ffModuleInfos[] = {
|
2026-03-29 09:28:49 +08:00
|
|
|
A,
|
|
|
|
|
B,
|
|
|
|
|
C,
|
|
|
|
|
D,
|
|
|
|
|
E,
|
|
|
|
|
F,
|
|
|
|
|
G,
|
|
|
|
|
H,
|
|
|
|
|
I,
|
|
|
|
|
J,
|
|
|
|
|
K,
|
|
|
|
|
L,
|
|
|
|
|
M,
|
|
|
|
|
N,
|
|
|
|
|
O,
|
|
|
|
|
P,
|
|
|
|
|
Q,
|
|
|
|
|
R,
|
|
|
|
|
S,
|
|
|
|
|
T,
|
|
|
|
|
U,
|
|
|
|
|
V,
|
|
|
|
|
W,
|
|
|
|
|
X,
|
|
|
|
|
Y,
|
|
|
|
|
Z,
|
2023-08-20 20:51:55 +08:00
|
|
|
};
|