first push

This commit is contained in:
2026-04-03 09:26:10 +08:00
parent 2937a44e07
commit 025b88e366
41 changed files with 6842 additions and 0 deletions

65
LOGIC/Lgc_Core.h Normal file
View File

@@ -0,0 +1,65 @@
#pragma once
#include "DRI/Dri_Ble.h"
#include "DRI/Dri_Consumer.h"
#include "DRI/Dri_NkroRaw.h"
#include "DRI/Dri_Vendor.h"
#include "LOGIC/Lgc_Func_Button.h"
#include <QtCore/QByteArray>
#include <QtCore/QString>
#include <QtCore/QVector>
enum Lgc_Core_Enum_SendTransport : quint8
{
Lgc_Core_Enum_SendTransport_None = 0,
Lgc_Core_Enum_SendTransport_Usb,
Lgc_Core_Enum_SendTransport_Ble
};
struct Lgc_Core_Struct_State
{
Dri_Ble_Struct_Port DriBlePort;
Dri_NkroRaw_Struct_Port DriNkroPort;
Dri_Consumer_Struct_Port DriConsumerPort;
Dri_Vendor_Struct_Port DriVendorPort;
Mid_Struct_DeviceConfig DeviceConfig;
QString TextConnection;
QString TextLog;
QString TextFunctionStatus;
bool IsVisibleKeyStateValid = false;
QVector<quint16> VisibleUsageList;
bool IsPhysicalKeyStateValid = false;
QVector<quint16> PhysicalUsageList;
QVector<quint16> LastPhysicalUsageList;
bool IsSystemNumLockOn = false;
QByteArray FunctionMaskBitmap;
QByteArray KeyboardMaskBitmap;
Lgc_FunctionButton_Config FunctionButtonConfig;
bool IsAltThemeEnabled = false;
void* WindowHandle = nullptr;
bool IsConnected = false;
bool IsStarted = false;
Lgc_Core_Enum_SendTransport ActiveSendTransport = Lgc_Core_Enum_SendTransport_None;
bool IsFunctionSequenceRecording = false;
};
void Lgc_Core_Init(Lgc_Core_Struct_State* p_State);
void Lgc_Core_SetWindowHandle(Lgc_Core_Struct_State* p_State, void* WindowHandle);
void Lgc_Core_HandleNativeMessage(Lgc_Core_Struct_State* p_State, void* p_Message);
void Lgc_Core_Start(Lgc_Core_Struct_State* p_State);
void Lgc_Core_Close(Lgc_Core_Struct_State* p_State);
void Lgc_Core_RefreshDevice(Lgc_Core_Struct_State* p_State);
void Lgc_Core_ClearLog(Lgc_Core_Struct_State* p_State);
bool Lgc_Core_Poll(Lgc_Core_Struct_State* p_State);
bool Lgc_Core_ApplyFunctionConfig(Lgc_Core_Struct_State* p_State);
bool Lgc_Core_SendTimeSync(Lgc_Core_Struct_State* p_State);
bool Lgc_Core_SendThemeSwitch(Lgc_Core_Struct_State* p_State);