[5] System Information Gathering
System Information Gathering
But now, for the first time, here's some C/C++ program code:
In the method HRESULT CInterface::GetSystemInfo() of my CInterface class, the functionality for capturing information about the PC system with DirectX 11 is implemented. This method is responsible for collecting data about the graphics hardware and the supported display modes and storing them in the appropriate structures.
At the beginning of this method, initialization is performed to access the DirectX API and create the necessary interfaces. Then, the method is used to retrieve the system's graphics adapters and create a list of GXADAPTER structures by iterating over these adapters.
For each found adapter, basic information such as the adapter description is stored in the GXADAPTER structure. Additionally, for each adapter, a list of GXOUTPUT structures is created to capture the output devices connected to that adapter.
For each output device, information about the output, such as the name and description, is recorded in the GXOUTPUT structure. Furthermore, for each output device, a list of GXDISPLAYMODE structures is created to store the supported display modes.
Each display mode is created with its width and height resolution, along with a list of GXFREQUENCY structures to capture the supported refresh rates.
The method HRESULT CInterface::GetSystemInfo() thus enables me to systematically and structuredly capture important information about the graphics hardware and the supported display modes.
Systeminformationserfassung
Aber jetzt kommt zum ersten Mal etwas C/C++ Programmcode:
In der Methode HRESULT CInterface::GetSystemInfo() aus meiner Klasse CInterface wird die Funktionalität zur Erfassung von Informationen über das PC-System mit DirectX 11 implementiert. Diese Methode ist dafür verantwortlich, die Daten über die Grafikhardware und die unterstützten Anzeigemodi zu sammeln und in den entsprechenden Strukturen zu speichern.
Zu Beginn dieser Methode erfolgt eine Initialisierung, um auf die DirectX-API zuzugreifen und die benötigten Schnittstellen zu erstellen. Anschließend wird die Methode genutzt, um die Grafikadapter des Systems abzurufen und durch Iteration über diese Adapter eine Liste von GXADAPTER-Strukturen zu erstellen.
Für jeden gefundenen Adapter werden grundlegende Informationen wie die Adapterbeschreibung in der GXADAPTER-Struktur gespeichert. Zudem wird für jeden Adapter eine Liste von GXOUTPUT-Strukturen erstellt, um die an diesen Adapter angeschlossenen Ausgabegeräte zu erfassen.
Für jedes Ausgabegerät werden die Informationen über den Ausgang, wie zum Beispiel der Name und die Beschreibung, in der GXOUTPUT-Struktur festgehalten. Außerdem wird für jedes Ausgabegerät eine Liste von GXDISPLAYMODE-Strukturen erstellt, um die unterstützten Anzeigemodi zu speichern.
Jede Anzeigemode wird mit ihrer Breite und Höhe der Auflösung sowie einer Liste von GXFREQUENCY-Strukturen erstellt, um die unterstützten Bildwiederholfrequenzen zu erfassen.
Die Methode HRESULT CInterface::GetSystemInfo() ermöglicht mir somit eine systematische und strukturierte Erfassung von wichtigen Informationen über die Grafikhardware und die unterstützten Anzeigemodi.
oyname 3D Engine
Implementation of a DirectX11 based 3D engine in C++
More posts
- 1 ‐ Getting StartedApr 25, 2024
- [13] Creating TexturesApr 25, 2024
- [12] With light, it becomes more beautifulApr 25, 2024
- [11] Not so simple after allApr 25, 2024
- [10] There must be something movingApr 25, 2024
- [9] The Object ManagerMar 30, 2024
- [8] Some considerations on renderingMar 30, 2024
- [7] We need a deviceMar 30, 2024
- [6] System Information Capture in DetailMar 30, 2024
Leave a comment
Log in with itch.io to leave a comment.