GammaRay
Ein Introspektionstool für Qt-Anwendungen
GammaRay ist ein von KDAB entwickeltes Software-Introspektionstool für Qt-Anwendungen, mit dem Sie die Interna Ihrer Qt-Programme zur Laufzeit untersuchen und manipulieren können. Es ergänzt klassische Debugger, indem es das Innenleben von Qt versteht und insbesondere bei komplexen Frameworks wie Scene Graphs, Model/View oder Zustandsautomaten höherwertige Sichten auf das Anwendungsverhalten bietet. Sie finden GammaRay auf GitHub.

Über GammaRay
GammaRay nutzt den QObject-Introspektionsmechanismus und erlaubt es Ihnen, Ihre Anwendung lokal auf dem Arbeitsplatzrechner oder remote auf einem Embedded-Zielsystem zur Laufzeit zu beobachten und zu verändern. Es arbeitet auf einer höheren Abstraktionsebene als ein instruktionsebenenbasierter Debugger, verwendet dabei aber die gleichen Konzepte wie die Ihnen vertrauten Qt-Frameworks. Das ist besonders nützlich bei komplexen Qt-Technologien wie Model/View, State Machines oder Scene Graphs. Das Tool bietet domänenspezifische Debugging-Hilfen auf hoher Ebene und erleichtert die Navigation durch komplexe interne Strukturen in Qt-Frameworks, etwa Qt Quick Scene Graphs, Model/View, QTextDocument oder State Machines.
Neben dem reinen Inspizieren von Objekteigenschaften können Sie deren Werte in laufendem Code in Echtzeit verändern – unabhängig davon, ob Sie Qt Quick, Qt Widgets oder QGraphicsView verwenden. Anders als ein herkömmlicher Debugger kennt GammaRay die internen Strukturen und kann sie in einer für den Entwickler sinnvollen Form darstellen.
GammaRay ist für alle gängigen Plattformen verfügbar und kann sowohl von Beginn an mit Ihrer Anwendung gestartet als auch an bereits laufende Prozesse angehängt werden.
Warum GammaRay?
GammaRay ist eine wertvolle Ergänzung im Werkzeugkasten jedes Qt-Entwicklers. Es bietet unter anderem das Durchstöbern von Objekteigenschaften, Signalen, Slots und Verbindungen sowie die Einblendung von Widget-Grenzen und Layouts direkt in der Anwendung. Seine besondere Stärke zeigt sich jedoch beim Arbeiten mit komplexen Qt-Frameworks.
Für visuelle Frameworks wie Qt Quick stellt GammaRay eine Übersicht bereit, indem es den Qt-Quick-Item-Baum durchsuchbar macht und Einblicke in den internen Qt-Quick-Scene-Graph bietet – inklusive Visualisierung der Item-Geometrie und Zugriff auf Shader-Code, was insbesondere bei eigenen Items hilfreich ist. Für Zustandsautomaten ermöglicht GammaRay die Visualisierung einer QStateMachine, zeigt den aktuellen Zustand in Echtzeit an und kann alle Transitionen nachverfolgen, um Fehlverhalten leichter zu analysieren.
GammaRay wird mit über 20 unterschiedlichen Tools ausgeliefert, deren Quellcode verfügbar ist und sich über eigene Plug-ins erweitern lässt. Kontaktieren Sie uns für maßgeschneiderte Support-Optionen.
Erste Schritte mit GammaRay
Zum Einstieg stehen Tutorials auf dem KDAB-Videochannel zur Verfügung, die die wichtigsten Funktionen und Workflows demonstrieren.
GammaRay herunterladen
GammaRay ist unter einer GPL-Lizenz verfügbar und kann heruntergeladen werden unter GitHub.
GammaRay-Benutzerhandbuch
Weitere Informationen und Anweisungen finden Sie unter GammaRay-Benutzerhandbuch.
Kontakt aufnehmen
Wenn Sie Fragen zu GammaRay haben oder über ein Projekt sprechen möchten, freuen wir uns auf Ihre Kontaktaufnahme.
Kontaktieren Sie uns

