Files
0417_QT_code/DRI/Dri_Nus.h

43 lines
1.1 KiB
C
Raw Normal View History

2026-04-17 16:25:19 +08:00
#pragma once
#include "COM/Com_Def.h"
#include <QtCore/QString>
struct Dri_Nus_Struct_Context;
struct Dri_Nus_Struct_Port
{
bool IsOpened = false;
bool IsConnected = false;
bool HasWriteAck = false;
QString TextEndpointSummary;
Dri_Nus_Struct_Context* p_Context = nullptr;
};
void Dri_Nus_Close(Dri_Nus_Struct_Port* p_Port);
bool Dri_Nus_Init(
Dri_Nus_Struct_Port* p_Port,
const Com_Struct_DeviceConfig& DeviceConfig,
QString* p_TextStatus);
bool Dri_Nus_Read(
Dri_Nus_Struct_Port* p_Port,
Com_Struct_RawPacket* p_Packet,
QString* p_TextStatus);
// Lock the confirmed BLE NUS candidate after LOGIC accepts a HelloRsp.
bool Dri_Nus_LockCandidate(
Dri_Nus_Struct_Port* p_Port,
const QString& EndpointId,
QString* p_TextStatus);
// Drop one mismatched BLE candidate and let the driver continue scanning.
bool Dri_Nus_DiscardCandidate(
Dri_Nus_Struct_Port* p_Port,
const QString& EndpointId,
QString* p_TextStatus);
bool Dri_Nus_Write(
Dri_Nus_Struct_Port* p_Port,
const QByteArray& PacketBody,
QString* p_TextStatus);