Difference between revisions of "Unit Reference"

From Ultibo.org
Jump to: navigation, search
 
(85 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.
 
Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.
  
Each unit is listed below with a link to the individual documentation outlining it's function and usage.
+
Each unit is listed below with a link to the individual documentation outlining its function and usage.
 
+
 
+
=== Boot units ===
+
----
+
 
+
* [[Unit_BootRPi|BootRPi]] - Raspberry Pi (A, B, A+, B+, Zero) boot module
+
* [[Unit_BootRPi2|BootRPi2]] - Raspberry Pi 2B boot module
+
* [[Unit_BootBBB|BootBBB]] - BeagleBone Black boot module (Not yet implemented)
+
* [[Unit_BootBPi|BootBPi]] - Banana Pi boot module (Not yet implemented)
+
* [[Unit_BootBPro|BootBPro]] - Banana Pro boot module (Not yet implemented)
+
* [[Unit_BootCI20|BootCI20]] - MIPS Creator CI20 boot module (Not yet implemented)
+
* [[Unit_BootCuboxi|BootCuboxi]] - Cubox i2/i4 boot module (Not yet implemented)
+
* [[Unit_BootOdroidC1|BootOdroidC1]] - Odroid C1 boot module (Not yet implemented)
+
* [[Unit_BootOdroidU3|BootOdroidU3]] - Odroid U3 boot module (Not yet implemented)
+
* [[Unit_BootOdroidXU3|BootOdroidXU3]] - Odroid XU3 boot module (Not yet implemented)
+
* [[Unit_BootpcDuino|BootpcDuino]] - pcDuino boot module (Not yet implemented)
+
* [[Unit_BootPCx86|BootPCx86]] - PC x86 boot module (Not yet implemented)
+
* [[Unit_BootPCx86_64|BootPCx86_64]] - PC x86_64 boot module (Not yet implemented)
+
 
+
=== Platform units ===
+
----
+
 
+
=== Architecture units ===
+
----
+
 
+
* [[Unit_PlatformARM|PlatformARM]] - ARM processor module
+
* [[Unit_PlatformARMv6|PlatformARMv6]] - ARMv6 processor module
+
* [[Unit_PlatformARMv7|PlatformARMv7]] - ARMv7 processor module
+
* [[Unit_Platformx86|Platformx86]] - Intel x86 processor module
+
* [[Unit_Platformx86_64|Platformx86_64]] - Intel x86_64 processor module
+
* [[Unit_PlatformMIPS|PlatformMIPS]] - MIPS processor module
+
* [[Unit_PlatformMIPS32|PlatformMIPS32]] - MIPS32 processor module
+
  
 
=== Mandatory units ===
 
=== Mandatory units ===
Line 45: Line 13:
 
* [[Unit_HeapManager|HeapManager]] - Heap (Memory) manager
 
* [[Unit_HeapManager|HeapManager]] - Heap (Memory) manager
 
* [[Unit_Threads|Threads]] - Threads, locks and scheduler
 
* [[Unit_Threads|Threads]] - Threads, locks and scheduler
* [[Unit_Devices|Devices]] - Device manager
+
* [[Unit_Devices|Devices]] - Devices manager
 
* [[Unit_Locale|Locale]] - Locales and code pages
 
* [[Unit_Locale|Locale]] - Locales and code pages
* [[Unit_Unicode|Unicode]] - Unicode strings and RTL wide string manager
+
* [[Unit_Unicode|Unicode]] - Unicode strings and RTL widestring manager
  
 
=== Generic units ===
 
=== Generic units ===
 
----
 
----
 +
 +
* [[Unit_ASN.1|ASN.1]] - Ultibo ASN.1 interface unit
 +
* [[Unit_Authentication|Authentication]] - Authentication base classes
 +
* [[Unit_Big Integer|Big Integer]] - Ultibo Big Integer interface unit
 +
* [[Unit_Crypto|Crypto]] - Cryptography support module
 +
* [[Unit_Font|Font]] - Font manager
 +
* [[Unit_Keymap|Keymap]] - Keymap manager
 +
* [[Unit_MPEG|MPEG]] - MPEG encoding/decoding support module (Not yet implemented)
 +
* [[Unit_Security|Security]] - Security descriptor support module
 +
* [[Unit_Shell|Shell]] - Shell manager
 +
* [[Unit_SSL|SSL]] - SSL/TLS support module (Not yet implemented)
 +
* [[Unit_Syscalls|Syscalls]] - C library support module
 +
* [[Unit_Timezone|Timezone]] - Timezone manager
 +
* [[Unit_Ultibo|Ultibo]] - Ultibo API / Windows compatibility
 +
* [[Unit_UltiboClasses|UltiboClasses]] - Ultibo API classes
 +
* [[Unit_UltiboUtils|UltiboUtils]] - Ultibo API utilities
 +
* [[Unit_VPN|VPN]] - VPN support module (Not yet implemented)
 +
* [[Unit_Wiring|Wiring]] - WiringPi API implementation
 +
* [[Unit_X.509|X.509]] - Ultibo X.509 interface unit
  
 
=== Device units ===
 
=== Device units ===
 
----
 
----
 +
 +
* [[Unit_ATAOE|ATAOE]] - ATA over Ethernet (Not yet implemented)
 +
* [[Unit_ATAPI|ATAPI]] - ATA/ATAPI (Not yet implemented)
 +
* [[Unit_Audio|Audio]] - Audio device interface / USB audio driver (Not yet implemented)
 +
* [[Unit_Bluetooth|Bluetooth]] - Bluetooth device interface (Not yet implemented)
 +
* [[Unit_Codec|Codec]] - Codec device interface
 +
* [[Unit_Console|Console]] - Console device interface
 +
* [[Unit_DAB|DAB]] - Digital Audio Broadcast (DAB) device interface (Not yet implemented)
 +
* [[Unit_DeviceTree|DeviceTree]] - Ultibo Flattened Device Tree (DTB) interface
 +
* [[Unit_DFU|DFU]] - Device Firmware Update (USB) support module (Not yet implemented)
 +
* [[Unit_DMA|DMA]] - DMA device interface
 +
* [[Unit_DVB|DVB]] - Digital Video Broadcast (DVB) device interface (Not yet implemented)
 +
* [[Unit_Framebuffer|Framebuffer]] - Framebuffer device interface
 +
* [[Unit_GraphicsConsole|GraphicsConsole]] - Graphics Console interface
 +
* [[Unit_GPIO|GPIO]] - GPIO device interface
 +
* [[Unit_HID|HID]] - HID device interface
 +
* [[Unit_I2C|I2C]] - I2C device interface
 +
* [[Unit_I2S|I2S]] - I2S device interface (Not yet implemented)
 +
* [[Unit_iSCSI|iSCSI]] - iSCSI device interface (Not yet implemented)
 +
* [[Unit_Joystick|Joystick]] - Joystick and Gamepad interface
 +
* [[Unit_Keyboard|Keyboard]] - Keyboard device interface / USB keyboard driver
 +
* [[Unit_Logging|Logging]] - Logging device interface
 +
* [[Unit_MMC|MMC]] - MMC/SD/SDIO device/host interface
 +
* [[Unit_MMCSPI|MMCSPI]] - MMC SPI interface module (Not yet implemented)
 +
* [[Unit_Mouse|Mouse]] - Mouse device interface / USB mouse driver
 +
* [[Unit_PCI|PCI]] - PCI/PCIe device interface
 +
* [[Unit_PS2|PS2]] - PS2 Keyboard/Mouse Controller Support
 +
* [[Unit_PWM|PWM]] - PWM device interface
 +
* [[Unit_RTC|RTC]] - Real Time Clock device interface
 +
* [[Unit_SCSI|SCSI]] - SCSI device interface
 +
* [[Unit_Serial|Serial]] - Serial device interface
 +
* [[Unit_SPI|SPI]] - SPI device interface
 +
* [[Unit_Storage|Storage]] - Storage device interface
 +
* [[Unit_TFT Framebuffer|TFT Framebuffer]] - TFT Framebuffer device interface
 +
* [[Unit_Touch|Touch]] - Touch device interface
 +
* [[Unit_UART|UART]] - UART device interface
 +
* [[Unit_USB|USB]] - USB device/driver/host interface
 +
* [[Unit_USBCDC|USBCDC]] - USB CDC device interface
 +
* [[Unit_USBHID|USBHID]] - USB HID device interface
 +
* [[Unit_Video|Video]] - Video device interface / USB video driver (Not yet implemented)
 +
* [[Unit_W1|W1]] - 1-Wire device interface (Not yet implemented)
  
 
=== Hardware units ===
 
=== Hardware units ===
 
----
 
----
 +
 +
* [[Unit_AHCI|AHCI]] - Advanced Host Controller Interface (AHCI) (Not yet implemented)
 +
* [[Unit_ARMGIC|ARMGIC]] - ARM Generic Interrupt Controller driver module
 +
* [[Unit_BCM2708|BCM2708]] - Broadcom BCM2835 SoC driver module
 +
* [[Unit_BCM2709|BCM2709]] - Broadcom BCM2836 SoC driver module
 +
* [[Unit_BCM2710|BCM2710]] - Broadcom BCM2837 SoC driver module
 +
* [[Unit_BCM2711|BCM2711]] - Broadcom BCM2838 SoC driver module
 +
* [[Unit_BCM2835|BCM2835]] - Broadcom BCM2835 SoC support module
 +
* [[Unit_BCM2836|BCM2836]] - Broadcom BCM2836 SoC support module
 +
* [[Unit_BCM2837|BCM2837]] - Broadcom BCM2837 SoC support module
 +
* [[Unit_BCM2838|BCM2838]] - Broadcom BCM2838 SoC support module
 +
* [[Unit_DWCOTG|DWCOTG]] - Synopsis Designware USB host controller module
 +
* [[Unit_EHCI|EHCI]] - USB EHCI host controller module (Not yet implemented)
 +
* [[Unit_VC4|VC4]] - VideoCore IV GPU interface module
 +
* [[Unit_VC4V3D|VC4V3D]] - VideoCore IV V3D interface unit
 +
* [[Unit_VC4VCHIQ|VC4VCHIQ]] - VideoCore IV VCHIQ driver
 +
* [[Unit_VersatilePB|VersatilePB]] - Ultibo Definitions specific to the ARM Versatile Platform Baseboard
 +
* [[Unit_XHCI|XHCI]] - USB XHCI host controller module (Not yet implemented)
  
 
=== Network units ===
 
=== Network units ===
 
----
 
----
 +
 +
* [[Unit_ARP|ARP]] - ARP transport module
 +
* [[Unit_DHCP|DHCP]] - DHCP configuration module
 +
* [[Unit_DNS|DNS]] - DNS client module
 +
* [[Unit_FTP|FTP]] - FTP client and server classes (Not yet implemented)
 +
* [[Unit_GlobalSock|GlobalSock]] - Global socket constants and type definitions
 +
* [[Unit_HTTP|HTTP]] - HTTP client and server classes
 +
* [[Unit_ICMP|ICMP]] - ICMP protocol module
 +
* [[Unit_ICMPv6|ICMPv6]] - ICMPv6 protocol module (Not yet implemented)
 +
* [[Unit_IGMP|IGMP]] - IGMP protocol module (Not yet implemented)
 +
* [[Unit_IMAP4|IMAP4]] - IMAP4 client and server classes
 +
* [[Unit_IP|IP]] - IPv4 transport module
 +
* [[Unit_IPHlpAPI|IPHlpAPI]] - IP Helper API
 +
* [[Unit_IPv6|IPv6]] - IPv6 transport module (Not yet implemented)
 +
* [[Unit_LDAP|LDAP]] - LDAP protocol module (Not yet implemented)
 +
* [[Unit_Loopback|Loopback]] - Loopback adapter module
 +
* [[Unit_Network|Network]] - Network device interface / Adapter manager
 +
* [[Unit_POP3|POP3]] - POP3 client and server classes
 +
* [[Unit_Protocol|Protocol]] - Protocol manager
 +
* [[Unit_RAW|RAW]] - RAW protocol module
 +
* [[Unit_Services|Services]] - Network services (NTP/SysLog/Telnet) classes
 +
* [[Unit_SIP|SIP]] - SIP client and server classes (Not yet implemented)
 +
* [[Unit_SMTP|SMTP]] - SMTP client and server classes
 +
* [[Unit_Sockets|Sockets]] - Sockets interface
 +
* [[Unit_TCP|TCP]] - TCP protocol module
 +
* [[Unit_Transport|Transport]] - Transport manager
 +
* [[Unit_UDP|UDP]] - UDP protocol module
 +
* [[Unit_WiFi|WiFi]] - WiFi (WPA) transport module (Not yet implemented)
 +
* [[Unit_Winsock|Winsock]] - Winsock 1.1 interface
 +
* [[Unit_Winsock2|Winsock2]] - Winsock 2.0 interface
 +
* [[Unit_XMPP|XMPP]] - XMPP client and server classes (Not yet implemented)
  
 
=== Filesystem units ===
 
=== Filesystem units ===
 
----
 
----
 +
 +
* [[Unit_CDFS|CDFS]] - CD (ISO9660/Joliet) filesystem module
 +
* [[Unit_CIFS|CIFS]] - Common Internet File System (CIFS) filesystem module (Not yet implemented)
 +
* [[Unit_EXTFS|EXTFS]] - EXT2/3/4 filesystem module (Not yet implemented)
 +
* [[Unit_FATFS|FATFS]] - FAT12/16/32 filesystem module
 +
* [[Unit_Filesystem|Filesystem]] - Filesystem manager
 +
* [[Unit_NFS|NFS]] - Network File System (NFS) filesystem module (Not yet implemented)
 +
* [[Unit_NTFS|NTFS]] - NTFS filesystem module
 +
* [[Unit_NTFSClass|NTFSClass]] - NTFS classes
 +
* [[Unit_NTFSConst|NTFSConst]] - NTFS constants
 +
* [[Unit_NTFSTypes|NTFSTypes]] - NTFS type definitions
 +
* [[Unit_NTFSUtils|NTFSUtils]] - NTFS utility functions
 +
* [[Unit_VirtualDisk|VirtualDisk]] - Virtual disk filesystem module
 +
 +
=== Driver units ===
 +
----
 +
 +
* [[Unit_AF16x2LCD|AF16x2LCD]] - Console device driver for Adafruit RGB 16x2 LCD
 +
* [[Unit_BCMSDHOST|BCMSDHOST]] - Broadcom BCM27XX SDHOST driver
 +
* [[Unit_DS1307|DS1307]] - Real time clock (RTC) device for Maxim DS1307 and similar
 +
* [[Unit_FT5x06Touch|FT5x06Touch]] - EDT FocalTech FT5x06 I2C touchscreen driver
 +
* [[Unit_FTDISerial|FTDISerial]] - FTDI USB to Serial converter driver
 +
* [[Unit_GENET|GENET]] - Broadcom GENET gigabit ethernet driver
 +
* [[Unit_GoodixTouch|GoodixTouch]] - Goodix I2C touchscreen driver
 +
* [[Unit_HD44780|HD44780]] - LCD controller driver for Hitachi HD44780
 +
* [[Unit_HIDKEYBOARD|HIDKEYBOARD]] - Generic HID keyboard consumer
 +
* [[Unit_HIDMOUSE|HIDMOUSE]] - Generic HID mouse consumer
 +
* [[Unit_HIDTOUCH|HIDTOUCH]] - Generic HID touch consumer
 +
* [[Unit_HIDJOYSTICK|HIDJOYSTICK]] - Generic HID joystick consumer
 +
* [[Unit_HX8357D|HX8357D]] - Framebuffer device driver for Himax HX8357D TFT LCD controller
 +
* [[Unit_HyperPixel|HyperPixel]] - Pimoroni HyperPixel TFT display driver
 +
* [[Unit_I2CGPIO|I2CGPIO]] - GPIO based software I2C driver
 +
* [[Unit_I2CLCD|I2CLCD]] - Generic I2C LCD driver
 +
* [[Unit_ILI9340|ILI9340]] - Framebuffer device driver for ILITEK ILI9340 TFT LCD controller
 +
* [[Unit_IPSTFT19|IPSTFT19]] - Framebuffer device driver for Adafruit IPSTFT19 1.9" TFT LCD
 +
* [[Unit_LAN78XX|LAN78XX]] - USB Ethernet driver for Microchip LAN78XX
 +
* [[Unit_MCP230XX|MCP230XX]] - GPIO device driver for Microchip MCP230XX I/O expander
 +
* [[Unit_PCF857X|PCF857X]] - NXP PCF857X I/O expander driver
 +
* [[Unit_PiTFT28|PiTFT28]] - Framebuffer device driver for Adafruit PiTFT 2.8" LCD
 +
* [[Unit_PiTFT35|PiTFT35]] - Framebuffer device driver for Adafruit PiTFT 3.5" LCD
 +
* [[Unit_PL011|PL011]] - ARM PrimeCell PL011 UART driver
 +
* [[Unit_PL031|PL031]] - ARM PrimeCell PL031 Real Time Clock driver
 +
* [[Unit_PL050|PL050]] - ARM PrimeCell PL050 PS2 Keyboard/Mouse Interface driver
 +
* [[Unit_PL110|PL110]] - ARM PrimeCell PL110 Color LCD Controller driver
 +
* [[Unit_PL18X|PL18X]] - ARM PrimeCell PL180/181 Multimedia Card Interface driver
 +
* [[Unit_PL2303|PL2303]] - Prolific PL2303 USB to Serial converter driver
 +
* [[Unit_RPIFT5406|RPIFT5406]] - Touch device driver for Raspberry Pi FT5406
 +
* [[Unit_RPIGPIOEXPANDER|RPIGPIOEXPANDER]] - Raspberry Pi firmware GPIO Expander driver
 +
* [[Unit_RPISENSEHAT|RPISENSEHAT]] - Raspberry Pi Sense HAT driver
 +
* [[Unit_RT2X00LIB|RT2X00LIB]] - Ralink RT2x00 Wireless support library (Not yet completed)
 +
* [[Unit_RT2X00USB|RT2X00USB]] - Ralink RT2x00 USB Wireless support library (Not yet completed)
 +
* [[Unit_RT2800LIB|RT2800LIB]] - Ralink RT2800 Wireless support library (Not yet completed)
 +
* [[Unit_RT2800USB|RT2800USB]] - Ralink RT2800 USB Wireless driver (Not yet completed)
 +
* [[Unit_RTL8188EU|RTL8188EU]] - Realtek 8188EU USB Wireless driver (Not yet completed)
 +
* [[Unit_RTL8192CU|RTL8192CU]] - Realtek 8192CU USB Wireless driver (Not yet completed)
 +
* [[Unit_RTLWIFI|RTLWIFI]] - Realtek 8xxx Wireless support library (Not yet completed)
 +
* [[Unit_SMC91X|SMC91X]] - SMSC 91C9x/91C1xx Ethernet driver
 +
* [[Unit_SMSC95XX|SMSC95XX]] - SMSC95XX USB network driver
 +
* [[Unit_ST77XX|ST77XX]] - Framebuffer device driver for Sitronix ST77XX TFT LCD controller
 +
* [[Unit_STMPE|STMPE]] - GPIO and touch device driver for ST Microelectronics STMPE
 +
* [[Unit_USBCDCACM|USBCDCACM]] - USB CDC (Communications Device Class) ACM driver
 +
* [[Unit_USBCDCETHERNET|USBCDCETHERNET]] - USB CDC (Communications Device Class) Ethernet driver
 +
* [[Unit_USBKEYBOARD|USBKEYBOARD]] - Legacy USB Keyboard driver
 +
* [[Unit_USBMOUSE|USBMOUSE]] - Legacy USB Mouse driver
 +
* [[Unit_USBSTORAGE|USBSTORAGE]] - USB Mass Storage driver
 +
 +
=== Code page units ===
 +
----
 +
 +
* [[Unit_CP1250ANSI|CP1250ANSI]] - CP1250 ANSI Code page (Central Europe)
 +
* [[Unit_CP1251ANSI|CP1251ANSI]] - CP1251 ANSI Code page (Cyrillic)
 +
* [[Unit_CP1253ANSI|CP1253ANSI]] - CP1253 ANSI Code page (Greek)
 +
* [[Unit_CP1254ANSI|CP1254ANSI]] - CP1254 ANSI Code page (Turkish)
 +
* [[Unit_CP1255ANSI|CP1255ANSI]] - CP1255 ANSI Code page (Hebrew)
 +
* [[Unit_CP1256ANSI|CP1256ANSI]] - CP1256 ANSI Code page (Arabic)
 +
* [[Unit_CP1257ANSI|CP1257ANSI]] - CP1257 ANSI Code page (Baltic)
 +
* [[Unit_CP1258ANSI|CP1258ANSI]] - CP1258 ANSI Code page (Vietnam)
 +
* [[Unit_CP874ANSI|CP874ANSI]] - CP874 ANSI Code page (Thai)
 +
* [[Unit_CP720OEM|CP720OEM]] - CP720 OEM Code page (Arabic)
 +
* [[Unit_CP737OEM|CP737OEM]] - CP737 OEM Code page (Greek)
 +
* [[Unit_CP775OEM|CP775OEM]] - CP775 OEM Code page (Baltic)
 +
* [[Unit_CP850OEM|CP850OEM]] - CP850 OEM Code page (Latin I)
 +
* [[Unit_CP852OEM|CP852OEM]] - CP852 OEM Code page (Latin II)
 +
* [[Unit_CP857OEM|CP857OEM]] - CP857 OEM Code page (Turkish)
 +
* [[Unit_CP862OEM|CP862OEM]] - CP862 OEM Code page (Hebrew)
 +
* [[Unit_CP866OEM|CP866OEM]] - CP866 OEM Code page (Russian)
 +
 +
=== Font units ===
 +
----
 +
 +
* [[Unit_Default8x9|Default8x9]] - Default 8x9 Console font
 +
* [[Unit_Default8x16|Default8x16]] - Default 8x16 Console font
 +
* [[Unit_Latin1_8x8|Latin1_8x8]] - Latin-1 (8x8) Console font
 +
* [[Unit_Latin1_8x10|Latin1_8x10]] - Latin-1 (8x10) Console font
 +
* [[Unit_Latin1_8x12|Latin1_8x12]] - Latin-1 (8x12) Console font
 +
* [[Unit_Latin1_8x14|Latin1_8x14]] - Latin-1 (8x14) Console font
 +
* [[Unit_Sun_12x22|Sun_12x22]] - Sun (12x22) Console font
 +
 +
=== Keymap units ===
 +
----
 +
 +
* [[Unit_Keymap_DE|Keymap_DE]] - German (DE) Keyboard layout
 +
* [[Unit_Keymap_ES|Keymap_ES]] - Spanish(ES) Keyboard layout
 +
* [[Unit_Keymap_FR|Keymap_FR]] - French (FR) Keyboard layout
 +
* [[Unit_Keymap_UK|Keymap_UK]] - UK English (UK) Keyboard layout
 +
* [[Unit_Keymap_US|Keymap_US]] - US English (US) Keyboard layout
 +
* [[Unit_Keymap_US_Intl|Keymap_US_Intl]] - US International (US-INTL) Keyboard layout
  
 
=== Extra units ===
 
=== Extra units ===
 
----
 
----
 +
 +
* [[Unit_ConsoleShell|ConsoleShell]] - Console shell classes
 +
* [[Unit_QEMUVersatilePB|QEMUVersatilePB]] - QEMU VersatilePB include module
 +
* [[Unit_RaspberryPi|RaspberryPi]] - Raspberry Pi (A, B, A+, B+, Zero) include module
 +
* [[Unit_RaspberryPi2|RaspberryPi2]] - Raspberry Pi 2B include module
 +
* [[Unit_RaspberryPi3|RaspberryPi3]] - Raspberry Pi 3B include module
 +
* [[Unit_RaspberryPi4|RaspberryPi4]] - Raspberry Pi 4 include module
 +
* [[Unit_RemoteShell|RemoteShell]] - Remote shell (Telnet/SSH) classes
 +
* [[Unit_ShellFilesystem|ShellFilesystem]] - Filesystem shell commands
 +
* [[Unit_ShellNetwork|ShellNetwork]] - Network shell commands
 +
* [[Unit_ShellUpdate|ShellUpdate]] - HTTP update shell commands
 +
* [[Unit_ShellUSB|ShellUSB]] - USB shell extension unit
 +
* [[Unit_WebStatus|WebStatus]] - HTTP status/information classes
 +
* [[Unit_WiringI2C|WiringI2C]] - WiringPiI2C API implementation
 +
* [[Unit_WiringSerial|WiringSerial]] - WiringPiSerial API implementation
 +
* [[Unit_WiringSPI|WiringSPI]] - WiringPiSPI API implementation
 +
 +
=== Boot units ===
 +
----
 +
 +
* [[Unit_BootRPi|BootRPi]] - Raspberry Pi (A, B, A+, B+, Zero) boot module
 +
* [[Unit_BootRPi2|BootRPi2]] - Raspberry Pi 2B boot module
 +
* [[Unit_BootRPi3|BootRPi3]] - Raspberry Pi 3B boot module
 +
* [[Unit_BootRPi4|BootRPi4]] - Raspberry Pi 4 boot module
 +
* [[Unit_BootPCx86|BootPCx86]] - PC x86 boot module (Not yet implemented)
 +
* [[Unit_BootPCx86_64|BootPCx86_64]] - PC x86_64 boot module (Not yet implemented)
 +
* [[Unit_BootQEMUVPB|BootQEMUVPB]] - QEMU VersatilePB boot module
 +
 +
=== Platform units ===
 +
----
 +
 +
* [[Unit_PlatformRPi|PlatformRPi]] - Raspberry Pi (A, B, A+, B+, Zero) platform module
 +
* [[Unit_PlatformRPi2|PlatformRPi2]] - Raspberry Pi 2B platform module
 +
* [[Unit_PlatformRPi3|PlatformRPi3]] - Raspberry Pi 3B platform module
 +
* [[Unit_PlatformRPi4|PlatformRPi4]] - Raspberry Pi 4 platform module
 +
* [[Unit_PlatformPC|PlatformPC]] - PC platform module (Not yet implemented)
 +
* [[Unit_PlatformQEMUVPB|PlatformQEMUVPB]] - QEMU VersatilePB platform module
 +
 +
=== Architecture units ===
 +
----
 +
 +
* [[Unit_PlatformAARCH64|PlatformAARCH64]] - AARCH64 (ARM64) processor module
 +
* [[Unit_PlatformARM|PlatformARM]] - ARM processor module
 +
* [[Unit_PlatformARMv6|PlatformARMv6]] - ARMv6 processor module
 +
* [[Unit_PlatformARMv7|PlatformARMv7]] - ARMv7 processor module
 +
* [[Unit_PlatformARMv7L|PlatformARMv7L]] - ARMv7 LPAE processor module
 +
* [[Unit_PlatformARMv8|PlatformARMv8]] - ARMv8 processor module
 +
* [[Unit_Platformx86|Platformx86]] - Intel x86 processor module (Not yet implemented)
 +
* [[Unit_Platformx86_64|Platformx86_64]] - Intel x86_64 processor module (Not yet implemented)
 +
* [[Unit_PlatformMIPS|PlatformMIPS]] - MIPS processor module (Not yet implemented)
 +
* [[Unit_PlatformMIPS32|PlatformMIPS32]] - MIPS32 processor module (Not yet implemented)
 +
 +
=== Ultibounits package ===
 +
----
 +
 +
* [[Unit_DispmanX|DispmanX]] - Ultibo DispmanX interface unit
 +
* [[Unit_EGL|EGL]] - Ultibo EGL interface unit
 +
* [[Unit_OpenVG|OpenVG]] - Ultibo OpenVG interface unit
 +
* [[Unit_uBitmap|uBitmap]] - Ultibo Bitmap utility unit
 +
* [[Unit_uScreenshot|uScreenshot]] - Ultibo Screenshot utility unit
 +
* [[Unit_VGShapes|VGShapes]] - Ultibo VGShapes library unit

Latest revision as of 03:28, 29 March 2024

Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.

Each unit is listed below with a link to the individual documentation outlining its function and usage.

Mandatory units


Generic units


  • ASN.1 - Ultibo ASN.1 interface unit
  • Authentication - Authentication base classes
  • Big Integer - Ultibo Big Integer interface unit
  • Crypto - Cryptography support module
  • Font - Font manager
  • Keymap - Keymap manager
  • MPEG - MPEG encoding/decoding support module (Not yet implemented)
  • Security - Security descriptor support module
  • Shell - Shell manager
  • SSL - SSL/TLS support module (Not yet implemented)
  • Syscalls - C library support module
  • Timezone - Timezone manager
  • Ultibo - Ultibo API / Windows compatibility
  • UltiboClasses - Ultibo API classes
  • UltiboUtils - Ultibo API utilities
  • VPN - VPN support module (Not yet implemented)
  • Wiring - WiringPi API implementation
  • X.509 - Ultibo X.509 interface unit

Device units


  • ATAOE - ATA over Ethernet (Not yet implemented)
  • ATAPI - ATA/ATAPI (Not yet implemented)
  • Audio - Audio device interface / USB audio driver (Not yet implemented)
  • Bluetooth - Bluetooth device interface (Not yet implemented)
  • Codec - Codec device interface
  • Console - Console device interface
  • DAB - Digital Audio Broadcast (DAB) device interface (Not yet implemented)
  • DeviceTree - Ultibo Flattened Device Tree (DTB) interface
  • DFU - Device Firmware Update (USB) support module (Not yet implemented)
  • DMA - DMA device interface
  • DVB - Digital Video Broadcast (DVB) device interface (Not yet implemented)
  • Framebuffer - Framebuffer device interface
  • GraphicsConsole - Graphics Console interface
  • GPIO - GPIO device interface
  • HID - HID device interface
  • I2C - I2C device interface
  • I2S - I2S device interface (Not yet implemented)
  • iSCSI - iSCSI device interface (Not yet implemented)
  • Joystick - Joystick and Gamepad interface
  • Keyboard - Keyboard device interface / USB keyboard driver
  • Logging - Logging device interface
  • MMC - MMC/SD/SDIO device/host interface
  • MMCSPI - MMC SPI interface module (Not yet implemented)
  • Mouse - Mouse device interface / USB mouse driver
  • PCI - PCI/PCIe device interface
  • PS2 - PS2 Keyboard/Mouse Controller Support
  • PWM - PWM device interface
  • RTC - Real Time Clock device interface
  • SCSI - SCSI device interface
  • Serial - Serial device interface
  • SPI - SPI device interface
  • Storage - Storage device interface
  • TFT Framebuffer - TFT Framebuffer device interface
  • Touch - Touch device interface
  • UART - UART device interface
  • USB - USB device/driver/host interface
  • USBCDC - USB CDC device interface
  • USBHID - USB HID device interface
  • Video - Video device interface / USB video driver (Not yet implemented)
  • W1 - 1-Wire device interface (Not yet implemented)

Hardware units


  • AHCI - Advanced Host Controller Interface (AHCI) (Not yet implemented)
  • ARMGIC - ARM Generic Interrupt Controller driver module
  • BCM2708 - Broadcom BCM2835 SoC driver module
  • BCM2709 - Broadcom BCM2836 SoC driver module
  • BCM2710 - Broadcom BCM2837 SoC driver module
  • BCM2711 - Broadcom BCM2838 SoC driver module
  • BCM2835 - Broadcom BCM2835 SoC support module
  • BCM2836 - Broadcom BCM2836 SoC support module
  • BCM2837 - Broadcom BCM2837 SoC support module
  • BCM2838 - Broadcom BCM2838 SoC support module
  • DWCOTG - Synopsis Designware USB host controller module
  • EHCI - USB EHCI host controller module (Not yet implemented)
  • VC4 - VideoCore IV GPU interface module
  • VC4V3D - VideoCore IV V3D interface unit
  • VC4VCHIQ - VideoCore IV VCHIQ driver
  • VersatilePB - Ultibo Definitions specific to the ARM Versatile Platform Baseboard
  • XHCI - USB XHCI host controller module (Not yet implemented)

Network units


  • ARP - ARP transport module
  • DHCP - DHCP configuration module
  • DNS - DNS client module
  • FTP - FTP client and server classes (Not yet implemented)
  • GlobalSock - Global socket constants and type definitions
  • HTTP - HTTP client and server classes
  • ICMP - ICMP protocol module
  • ICMPv6 - ICMPv6 protocol module (Not yet implemented)
  • IGMP - IGMP protocol module (Not yet implemented)
  • IMAP4 - IMAP4 client and server classes
  • IP - IPv4 transport module
  • IPHlpAPI - IP Helper API
  • IPv6 - IPv6 transport module (Not yet implemented)
  • LDAP - LDAP protocol module (Not yet implemented)
  • Loopback - Loopback adapter module
  • Network - Network device interface / Adapter manager
  • POP3 - POP3 client and server classes
  • Protocol - Protocol manager
  • RAW - RAW protocol module
  • Services - Network services (NTP/SysLog/Telnet) classes
  • SIP - SIP client and server classes (Not yet implemented)
  • SMTP - SMTP client and server classes
  • Sockets - Sockets interface
  • TCP - TCP protocol module
  • Transport - Transport manager
  • UDP - UDP protocol module
  • WiFi - WiFi (WPA) transport module (Not yet implemented)
  • Winsock - Winsock 1.1 interface
  • Winsock2 - Winsock 2.0 interface
  • XMPP - XMPP client and server classes (Not yet implemented)

Filesystem units


  • CDFS - CD (ISO9660/Joliet) filesystem module
  • CIFS - Common Internet File System (CIFS) filesystem module (Not yet implemented)
  • EXTFS - EXT2/3/4 filesystem module (Not yet implemented)
  • FATFS - FAT12/16/32 filesystem module
  • Filesystem - Filesystem manager
  • NFS - Network File System (NFS) filesystem module (Not yet implemented)
  • NTFS - NTFS filesystem module
  • NTFSClass - NTFS classes
  • NTFSConst - NTFS constants
  • NTFSTypes - NTFS type definitions
  • NTFSUtils - NTFS utility functions
  • VirtualDisk - Virtual disk filesystem module

Driver units


  • AF16x2LCD - Console device driver for Adafruit RGB 16x2 LCD
  • BCMSDHOST - Broadcom BCM27XX SDHOST driver
  • DS1307 - Real time clock (RTC) device for Maxim DS1307 and similar
  • FT5x06Touch - EDT FocalTech FT5x06 I2C touchscreen driver
  • FTDISerial - FTDI USB to Serial converter driver
  • GENET - Broadcom GENET gigabit ethernet driver
  • GoodixTouch - Goodix I2C touchscreen driver
  • HD44780 - LCD controller driver for Hitachi HD44780
  • HIDKEYBOARD - Generic HID keyboard consumer
  • HIDMOUSE - Generic HID mouse consumer
  • HIDTOUCH - Generic HID touch consumer
  • HIDJOYSTICK - Generic HID joystick consumer
  • HX8357D - Framebuffer device driver for Himax HX8357D TFT LCD controller
  • HyperPixel - Pimoroni HyperPixel TFT display driver
  • I2CGPIO - GPIO based software I2C driver
  • I2CLCD - Generic I2C LCD driver
  • ILI9340 - Framebuffer device driver for ILITEK ILI9340 TFT LCD controller
  • IPSTFT19 - Framebuffer device driver for Adafruit IPSTFT19 1.9" TFT LCD
  • LAN78XX - USB Ethernet driver for Microchip LAN78XX
  • MCP230XX - GPIO device driver for Microchip MCP230XX I/O expander
  • PCF857X - NXP PCF857X I/O expander driver
  • PiTFT28 - Framebuffer device driver for Adafruit PiTFT 2.8" LCD
  • PiTFT35 - Framebuffer device driver for Adafruit PiTFT 3.5" LCD
  • PL011 - ARM PrimeCell PL011 UART driver
  • PL031 - ARM PrimeCell PL031 Real Time Clock driver
  • PL050 - ARM PrimeCell PL050 PS2 Keyboard/Mouse Interface driver
  • PL110 - ARM PrimeCell PL110 Color LCD Controller driver
  • PL18X - ARM PrimeCell PL180/181 Multimedia Card Interface driver
  • PL2303 - Prolific PL2303 USB to Serial converter driver
  • RPIFT5406 - Touch device driver for Raspberry Pi FT5406
  • RPIGPIOEXPANDER - Raspberry Pi firmware GPIO Expander driver
  • RPISENSEHAT - Raspberry Pi Sense HAT driver
  • RT2X00LIB - Ralink RT2x00 Wireless support library (Not yet completed)
  • RT2X00USB - Ralink RT2x00 USB Wireless support library (Not yet completed)
  • RT2800LIB - Ralink RT2800 Wireless support library (Not yet completed)
  • RT2800USB - Ralink RT2800 USB Wireless driver (Not yet completed)
  • RTL8188EU - Realtek 8188EU USB Wireless driver (Not yet completed)
  • RTL8192CU - Realtek 8192CU USB Wireless driver (Not yet completed)
  • RTLWIFI - Realtek 8xxx Wireless support library (Not yet completed)
  • SMC91X - SMSC 91C9x/91C1xx Ethernet driver
  • SMSC95XX - SMSC95XX USB network driver
  • ST77XX - Framebuffer device driver for Sitronix ST77XX TFT LCD controller
  • STMPE - GPIO and touch device driver for ST Microelectronics STMPE
  • USBCDCACM - USB CDC (Communications Device Class) ACM driver
  • USBCDCETHERNET - USB CDC (Communications Device Class) Ethernet driver
  • USBKEYBOARD - Legacy USB Keyboard driver
  • USBMOUSE - Legacy USB Mouse driver
  • USBSTORAGE - USB Mass Storage driver

Code page units


Font units


Keymap units


Extra units


Boot units


  • BootRPi - Raspberry Pi (A, B, A+, B+, Zero) boot module
  • BootRPi2 - Raspberry Pi 2B boot module
  • BootRPi3 - Raspberry Pi 3B boot module
  • BootRPi4 - Raspberry Pi 4 boot module
  • BootPCx86 - PC x86 boot module (Not yet implemented)
  • BootPCx86_64 - PC x86_64 boot module (Not yet implemented)
  • BootQEMUVPB - QEMU VersatilePB boot module

Platform units


Architecture units


Ultibounits package


  • DispmanX - Ultibo DispmanX interface unit
  • EGL - Ultibo EGL interface unit
  • OpenVG - Ultibo OpenVG interface unit
  • uBitmap - Ultibo Bitmap utility unit
  • uScreenshot - Ultibo Screenshot utility unit
  • VGShapes - Ultibo VGShapes library unit