From 7f92fa6512505650dbb701662bae1c6822b7de98 Mon Sep 17 00:00:00 2001 From: Jordon Brooks Date: Wed, 22 May 2024 18:55:45 +0100 Subject: [PATCH] Add CPUInfo struct --- HarmonyLinkLib/CMakeLists.txt | 2 ++ HarmonyLinkLib/include/Structs/CPUInfo.h | 32 ++++++++++++++++++++++++ HarmonyLinkLib/src/Structs/CPUInfo.c | 16 ++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 HarmonyLinkLib/include/Structs/CPUInfo.h create mode 100644 HarmonyLinkLib/src/Structs/CPUInfo.c diff --git a/HarmonyLinkLib/CMakeLists.txt b/HarmonyLinkLib/CMakeLists.txt index 95ca22a..176f6ea 100644 --- a/HarmonyLinkLib/CMakeLists.txt +++ b/HarmonyLinkLib/CMakeLists.txt @@ -57,6 +57,7 @@ set(COMMON_SOURCES "src/Version.c" "src/Structs/Battery.c" + "src/Structs/CPUInfo.c" ) # Explicitly list include files @@ -70,6 +71,7 @@ set(COMMON_INCLUDES "include/Enums/SteamDeck.h" "include/Structs/Battery.h" + "include/Structs/CPUInfo.h" ) set(WINDOWS_SOURCES diff --git a/HarmonyLinkLib/include/Structs/CPUInfo.h b/HarmonyLinkLib/include/Structs/CPUInfo.h new file mode 100644 index 0000000..ae0532a --- /dev/null +++ b/HarmonyLinkLib/include/Structs/CPUInfo.h @@ -0,0 +1,32 @@ +// Copyright (c) 2024 Jordon Brooks +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 + +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include + +#include "Core.h" + +typedef struct +{ + char* VendorID; + bool Model_Name; + unsigned int Physical_Cores; + unsigned int Logical_Cores; + char[] Flags; + +} FCPUInfo; + +//HARMONYLINKLIB_API void FBattery_print(const FCPUInfo* self); + diff --git a/HarmonyLinkLib/src/Structs/CPUInfo.c b/HarmonyLinkLib/src/Structs/CPUInfo.c new file mode 100644 index 0000000..703f260 --- /dev/null +++ b/HarmonyLinkLib/src/Structs/CPUInfo.c @@ -0,0 +1,16 @@ +// Copyright (c) 2024 Jordon Brooks +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 + +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "Structs/CPUInfo.h" +