41 lines
1.0 KiB
C
41 lines
1.0 KiB
C
#pragma once
|
|
|
|
#include "COM/Com_Def.h"
|
|
#include <QtCore/QString>
|
|
|
|
struct Dri_Cdc_Struct_Context;
|
|
|
|
struct Dri_Cdc_Struct_Port
|
|
{
|
|
Dri_Cdc_Struct_Context* p_Context = nullptr;
|
|
bool IsOpened = false;
|
|
QString PortName;
|
|
};
|
|
|
|
void Dri_Cdc_Close(Dri_Cdc_Struct_Port* p_Port);
|
|
bool Dri_Cdc_Init(
|
|
Dri_Cdc_Struct_Port* p_Port,
|
|
const Com_Struct_DeviceConfig& DeviceConfig,
|
|
QString* p_TextStatus);
|
|
bool Dri_Cdc_Read(
|
|
Dri_Cdc_Struct_Port* p_Port,
|
|
Com_Struct_RawPacket* p_Packet,
|
|
QString* p_TextStatus);
|
|
|
|
// Lock the confirmed CDC candidate after LOGIC accepts a HelloRsp.
|
|
bool Dri_Cdc_LockCandidate(
|
|
Dri_Cdc_Struct_Port* p_Port,
|
|
const QString& EndpointId,
|
|
QString* p_TextStatus);
|
|
|
|
// Drop one mismatched CDC candidate without tearing down the whole CDC scan set.
|
|
bool Dri_Cdc_DiscardCandidate(
|
|
Dri_Cdc_Struct_Port* p_Port,
|
|
const QString& EndpointId,
|
|
QString* p_TextStatus);
|
|
|
|
bool Dri_Cdc_Write(
|
|
Dri_Cdc_Struct_Port* p_Port,
|
|
const QByteArray& PacketBody,
|
|
QString* p_TextStatus);
|