Auf dieser Seite wird die Organisation des Quellcodes für Display Safety beschrieben.
Weitere Informationen finden Sie in der Datei README.md in den einzelnen
Verzeichnissen.
Repository klonen
Wenden Sie sich an Ihren Google-Ansprechpartner, um Zugriff auf das Repository zu erhalten.
Framework
Dieses Verzeichnis enthält die Kernkomponenten des Display Safety- Frameworks.
| Verzeichnis | Zweck |
|---|---|
api/har-platform-api |
Sammlung von Abstraktionen des Plattformsubsystems zum Erstellen von HAR-Apps (High Verfügbarkeits-Renderer) auf unterstützten Plattformen. |
api/har-types |
Typen der Hardwareabstraktionsschicht. |
asset-manager |
Tools zum Verwalten von Laufzeit-Anwendungs-Assets. |
audio/har-audio |
Crate zum Verarbeiten der HAR-Audiowiedergabe |
customizations |
Enthält APIs, Implementierungen und abgeleitete Makros zum Erstellen von Design Anpassungen aus einer HAR-basierten App. |
derive/har-ui-model-derive |
Prozedurale Makros zum Ableiten allgemeiner Merkmale, die vom HAR-UI-Modell system verwendet werden. |
display_list |
Definiert die Strukturen und Komponenten, die eine Szene für das Rendering beschreiben, unabhängig von einem grafischen Backend. |
graphics/external-image |
Ein Crate für externe Bilddarstellungen. |
graphics/har-gl-context |
Definiert die Grafikkontext-API und enthält mehrere Implementierungen auf unterstützten Plattformen, sowohl für das Rendering auf dem Bildschirm als auch für das Offscreen-Rendering. |
graphics/impeller |
Sichere Rust-API für Impeller, die auf den generierten FFI-Bindungen basiert. |
graphics/impeller-renderer |
Renderer-Implementierung auf hoher Ebene, bei der Impeller als Rendering-Engine im Hintergrund verwendet wird. |
har-layout |
Ein Wrapper für Taffy zum Berechnen des Layouts für Ansichten in HAR. |
har-monitoring |
Toolkit zur Leistungsüberwachung. |
har-utils |
Allgemeine Dienstprogramme. |
harry |
Framework, das als Grundlage für die Entwicklung von HAR-Anwendungen verwendet werden kann. |
harry-animation |
Eine Animations-API und -Implementierung für Harry. |
squoosh |
Zwischendarstellung und Animations-Engine für Ansichtsparameter in dem Harry-Framework. |
task-scheduler |
Dienstprogramm zum Planen von Aufgaben und Ausführen in einem Hintergrundthread nach einer bestimmten Verzögerung. |
test_suites |
Test-Suites zum Ausführen von Display Safety-Einheitentests. |
Vorkompilierte Bibliotheken
Dieses Verzeichnis enthält vorkompilierte Bibliotheken und Assets.
| Verzeichnis | Zweck |
|---|---|
impeller/ |
Vorkompilierte Bibliotheken für die Impeller-Grafik-Engine, nach Betriebssystem und Architektur organisiert. |
impeller-rs-bindgen/ |
Rust-FFI-Bindungen für Impeller. |
impeller-rs-bindgen-wrapper/ |
API-Wrapper für die Impeller-Bindungen. |
Referenz
Dieses Verzeichnis enthält die HAR-Referenzimplementierung, plattformspezifische Implementierungen, Tools und Testartefakte.
| Verzeichnis | Zweck |
|---|---|
audio/tinyalsa-rs |
Rust-FFI-Bindungen für die Tinyalsa-Audiobibliothek. |
audio/tinyalsa-audio |
Bibliothek für die Audiowiedergabe und Geräteverwaltung, die auf FFI
Bindungen basiert, die vom tinyalsa-rs Crate generiert wurden. |
camera/emulated-camera |
Bietet eine Implementierung einer emulierten Kamera mit dem Camera Merkmal
aus har-platform-api. |
graphics/gl-helpers |
Dienstprogramm-Crate mit GL-Hilfsfunktionen. |
har-user-input-evdev/ |
Implementiert eine grundlegende evdev-basierte Implementierung der Eingabeverarbeitung. Unterstützt Tastatur-, Maus- und Touch-Ereignisse (Single- und Multitouch). |
harry-app/ |
Referenzimplementierung für eine portable HAR-App (Hochverfügbarkeit-Renderer)
, die mit dem harry Framework erstellt wurde. |
harry-app-core/ |
Kernanwendungslogik, Statusverwaltung und UI-Modelldefinitionen für die
harry-app Referenz-App. |
harry-app-utils/ |
Dienstprogrammfunktionen und Hilfsmodule für die Referenz-App harry-app. |
harry-control-api/ |
Steuerungs-APIs für die Referenz-App harry-app. |
harry-grpcio-server/ |
gRPC-Server (basiert auf grpcio). Wird nur verwendet, wenn die Android Version mit Soong erstellt wird. |
harry-tonic-server/ |
gRPC-Server (basiert auf Tonic). Wird nur verwendet, wenn die Linux Version mit Cargo erstellt wird. |
harry-vehicle-data-grpc/ |
gRPC-Code für Fahrzeugdaten, der aus den Proto-Dateien für Fahrzeugdaten generiert wurde. |
i18n/harry-app-i18n |
Internationalisierungs- und Lokalisierungsdienste für HAR. |
i18n/i18n-protos |
Definiert Protobuf-Nachrichten und Rust-Codegenerierung für i18n-Daten. |
libyuv-rs/ |
Rust-Bindungen für libyuv. |
platforms/har-log |
Definiert Protokollierungs- und Tracing-Implementierungen für jede unterstützte Plattform. |
platforms/har-looper-headless |
Eine plattformunabhängige Looper-Implementierung für das Headless-Rendering. |
platforms/har-platform-android |
Bietet Android-spezifische Implementierungen der har-platform-api
Plattformabstraktionen. |
platforms/har-platform-linux |
Bietet Linux-spezifische Implementierungen der har-platform-api
Plattformabstraktionen. |
platforms/harry-app-platform-specific |
Die bedingte Kompilierungsbrücke für harry-app, die die richtige Implementierung basierend auf der ausgewählten Plattform auswählt. |
safety-monitor |
Implementierung eines Referenz-Sicherheitsmonitors für Android. |
screencap |
Dienstprogramm zur Bildschirmaufnahme zum Extrahieren von Screenshots direkt aus DRM Framebuffern. |
vehicle-data-scripts |
Strukturen und Logik zum Erstellen von Skriptsequenzen für Fahrzeugdaten. |
Dienst
Dieses Verzeichnis enthält Android-Dienste im Zusammenhang mit Display Safety.
| Verzeichnis | Zweck |
|---|---|
ds-cvd-toolkit |
Ein Befehlszeilentool für Display Safety, mit dem mehrere Cuttlefish-Geräte gestartet werden können. |
emulator |
Emulatorunterstützung für Laufzeit-Ressourcen-Overlays. |
har-grpc-services |
Enthält die Proto-Definitionen, die in der Referenzimplementierung verwendet werden, um Kommunikationskanäle zwischen der HAR-App und den DriverUI- und Fahrzeugdatendiensten einzurichten. |
har-sdv-service* |
Bietet ein SDV-Dienstpaket, mit dem Datendienste für HAR bereitgestellt werden, wobei der von Proto-Dateien generierte Code verwendet wird. |
har-tracing-common |
Dienste zur Leistungsverfolgung für HAR. |
harry-prebuilt/ |
Vorkompilierte Harry-Komponenten wie Assets und Konfigurationen. |
ivi/ |
Komponenten im Zusammenhang mit Android IVI (In-Vehicle Infotainment). |
libhar_graphics/ |
C++-Grafikbibliothek für HAR-Dienste. |
pdk/ |
PDK-Versionsmetadaten. |
product/ |
Produktspezifische Konfigurationen und Assets. |
SdvCameraPreviewApp |
Kameravorschau-App für SDV. |
vehicledata |
Implementiert einen SDV-Datentunnel-Publisher für Fahrzeugdaten mit gRPC. |
Utils
Dieses Verzeichnis enthält allgemeine Dienstprogramme für Referenzimplementierungen und Tests.
| Verzeichnis | Zweck |
|---|---|
asset-manager-cli |
Bietet eine Befehlszeilenschnittstelle zum Generieren von Asset-Paketen. |
dcf-info/ |
Tool zum Extrahieren von Metadaten aus einem DCF (Serialized Design Compose Figma Dokument). |
figma-utils |
Bietet einen Befehlszeilen-Wrapper für figma_import zum Abrufen
serialisierter Figma-Dokumente. |
gauge-test |
App zum Testen und Demonstrieren von UI Elementen für Zifferblätter und Messgeräte. |
gui-playground-app |
Sandbox-Umgebung zum Testen neuer UI- und Animationsfunktionen. |
har-platform-tests |
Suite von Integrationstests für plattformspezifische Merkmalimplementierungen. |
har-rendering-parity |
Visuelles Tool zum Überprüfen der Rendering-Parität zwischen HAR, DesignCompose und Figma. |
harry-rpc-client |
Bietet eine Befehlszeilenschnittstelle zum Senden von Befehlen an Harry mit RPC. |
human-readable-report-generator |
Dienstprogramm zur visuellen Überprüfung von Sicherheitsartefakten. |
ktx-utils |
Bietet Dienstprogramme zum Codieren und Decodieren von Khronos KTX 2.0-Textur dateien. |
list-test-app |
Dient als Test- und Demonstrationsumgebung für die Listenverwaltung in HAR. |
transfer-localizations |
Dienstprogramm zum Konvertieren von Android-XML-Lokalisierungsdateien in das HAR-Proto Format. |
variable-density-analyzer |
Analysiert ein Figma-Dokument und berechnet das Verhältnis von Knoten zu Designvariablen. |