66 lines
2.0 KiB
C
66 lines
2.0 KiB
C
#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);
|
|
|
|
|