?? hciinfoparmcmdretparamprocfunc.cpp
字號:
//--------------------------------------------------------------- %FILH_BEG% --
//-----------------------------------------------------------------------------
//
// Project: $$ProjectName
//
// File name: HCIInfoParmCmdretParamProcFunc.cpp
// Author:
// Description:
//
// Revision History:
// $Log: $
//
// Rev 1.00 15 July 2000 Initial release
//
//
// Copyright (c) TelenComm Corporation 2000 - All rights reserved
//--------------------------------------------------------------- %FILH_END%
//------------------------------------------------------------------------------
//
// Include
//
//------------------------------------------------------------------------------
//#include "stdmac.h"
#include "..\..\..\stdafx.h"
#include "..\..\..\BTHost.h"
#include "..\..\..\ChildFrm.h"
#include "..\..\Inc\HCIError.h"
#include "..\Inc\HCIInfoParmCmdProc.h"
#include "..\..\Inc\HCIPacket.h"
//------------------------------------------------------------------------------
//
// 5.2.15 No Operation Command
//
//------------------------------------------------------------------------------
/*
uint8 CHCIInfoParmProcessor::NoOperationCommandCmdRetParamProcFunc(char* pRetParams)
{
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
*/
//------------------------------------------------------------------------------
//
// 4.8.1 Read_Local_Version_Information
//
//------------------------------------------------------------------------------
uint8 CHCIInfoParmProcessor::ReadLocalVersionInformationCmdRetParamProcFunc(char* pRetParams)
{
CString Temp; int n;
CString Status, ParamStr;
CString HciVerStr;
CString HciRevStr;
CString LMPVerStr;
CString ManNameStr;
CString LMPSubStr;
struct psRetParams_tag
{
uint8 Status;
uint8 Hci_Version;
uint16 Hci_Revision;
uint8 LMP_Version;
uint16 Manufacture_Name;
uint16 LMP_Subversion;
}*psReadParams;
psReadParams = (psRetParams_tag *)pRetParams ;
Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength();
Status.Format ("\tStatus: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.2X", psReadParams->Hci_Version ); n = Temp.GetLength();
HciVerStr.Format ("\tHCI Version: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.4X", psReadParams->Hci_Revision ); n = Temp.GetLength();
HciRevStr.Format ("\tHCI Revision: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.2X", psReadParams->LMP_Version ); n = Temp.GetLength();
LMPVerStr.Format ("\tLMP Version: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.4X", psReadParams->Manufacture_Name ); n = Temp.GetLength();
ManNameStr.Format("\tManufacture Name: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.4X", psReadParams->LMP_Subversion ); n = Temp.GetLength();
LMPSubStr.Format ("\tLMP Subversion: [%d] %s\n", n/2,Temp);
ParamStr =HciVerStr + HciRevStr + LMPVerStr + ManNameStr + LMPSubStr + Status;
g_pChildFrame->ParamListForOutput(ParamStr);
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
//------------------------------------------------------------------------------
//
// 4.8.2 Read_Local_Supported_Features
//
//------------------------------------------------------------------------------
uint8 CHCIInfoParmProcessor::ReadLocalSupportedFeaturesCmdRetParamProcFunc(char* pRetParams)
{
CString Temp; int n;
CString Status, ParamStr;
CString LmpFeaturesStr;
struct psRetParams_tag
{
uint8 Status;
char Lmp_Features[8];
}*psReadParams;
char buf1[35] = {'\0'}, buf2[50] = {'\0'};
psReadParams = (psRetParams_tag *)pRetParams ;
Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength();
Status.Format ("\tStatus: [%d] %s\n", n/2,Temp);
BT_itoa(&psReadParams->Lmp_Features ,8, buf1);
BT_ReverseStr(buf1, buf2);
Temp.Format ("%s", buf2);
//Temp.Format ("%-.2X", psReadParams-> ); n = Temp.GetLength();
LmpFeaturesStr.Format("\tLmp Features: [8] %s\n",Temp);
ParamStr = LmpFeaturesStr + Status;
g_pChildFrame->ParamListForOutput(ParamStr);
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
//------------------------------------------------------------------------------
//
// 4.8.3 Read_Buffer_Size
//
//------------------------------------------------------------------------------
uint8 CHCIInfoParmProcessor::ReadBufferSizeCmdRetParamProcFunc(char* pRetParams)
{
CString Temp; int n;
CString Status;
CString CPacketAll;
CString EventCode;
CString ParamStr;
CString HC_ACLDataPacketLen;
CString HC_SCODataPacketLen;
CString HC_TotalNumACLDataPackets;
CString HC_TotalNumSCODataPackets;
struct psRetParams_tag
{
uint8 Status;
uint16 HC_ACLDataPacketLen;
uint8 HC_SCODataPacketLen;
uint16 HC_TotalNumACLDataPackets;
uint16 HC_TotalNumSCODataPackets;
}*psRBSizeParams;
psRBSizeParams = (psRetParams_tag*)pRetParams;
g_pChildFrame->DisplayCmdSts(pRetParams, CMD_COMPLETION_STS,"ReadBufferSize");
//Ekg_pChildFrame->DisplayCmdSts(psRetParams->Status, CMD_COMPLETION_STS,"ReadBufferSize");
Temp.Format ("%.2x", psRBSizeParams->Status); n = Temp.GetLength();
Status.Format ("\tStatus: [%d] %s\n",n/2, Temp );
Temp.Format ("%.4x", psRBSizeParams->HC_ACLDataPacketLen); n = Temp.GetLength();
HC_ACLDataPacketLen.Format ("\tHC_ACLDataPacketLen: [%d] %s\n",n/2, Temp );
Temp.Format ("%.2x", psRBSizeParams->HC_SCODataPacketLen); n = Temp.GetLength();
HC_SCODataPacketLen.Format ("\tHC_SCODataPacketLen: [%d] %s\n",n/2, Temp );
Temp.Format ("%.4x", psRBSizeParams->HC_TotalNumACLDataPackets); n = Temp.GetLength();
HC_TotalNumACLDataPackets.Format ("\tHC_TotalNumACLDataPackets: [%d] %s\n",n/2, Temp );
Temp.Format ("%.4x", psRBSizeParams->HC_TotalNumSCODataPackets); n = Temp.GetLength();
HC_TotalNumSCODataPackets.Format ("\tHC_TotalNumSCODataPackets: [%d] %s\n",n/2, Temp );
ParamStr = EventCode + Status + CPacketAll+
HC_ACLDataPacketLen+
HC_SCODataPacketLen+
HC_TotalNumACLDataPackets+
HC_TotalNumSCODataPackets;
g_pChildFrame->ParamListForOutput(ParamStr);
if(psRBSizeParams->Status)
{
g_HC_ACLDataPacketLen = psRBSizeParams->HC_ACLDataPacketLen;
g_HC_SCODataPacketLen = psRBSizeParams->HC_SCODataPacketLen;
g_HC_TotalNumACLDataPackets = psRBSizeParams->HC_TotalNumACLDataPackets;
g_HC_TotalNumSCODataPackets = psRBSizeParams->HC_TotalNumSCODataPackets;
}
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
//------------------------------------------------------------------------------
//
// 4.8.4 Read_Country_Code
//
//------------------------------------------------------------------------------
uint8 CHCIInfoParmProcessor::ReadCountryCodeCmdRetParamProcFunc(char* pRetParams)
{
CString Temp; int n;
CString Status, ParamStr;
CString CountryCodeStr;
struct psRetParams_tag
{
uint8 Status;
uint8 CountryCode;
}*psReadParams;
char buf1[35] = {'\0'}, buf2[50] = {'\0'};
psReadParams = (psRetParams_tag *)pRetParams ;
Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength();
Status.Format ("\tStatus: [%d] %s\n", n/2,Temp);
Temp.Format ("%-.2X", psReadParams->CountryCode ); n = Temp.GetLength();
CountryCodeStr.Format("\tCountryCode: [%d] %s\n", n/2,Temp);
ParamStr = CountryCodeStr + Status;
g_pChildFrame->ParamListForOutput(ParamStr);
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
//------------------------------------------------------------------------------
//
// 4.8.5 Read_BD_ADDR
//
//------------------------------------------------------------------------------
uint8 CHCIInfoParmProcessor::ReadBdAddrCmdRetParamProcFunc(char* pRetParams)
{
CString Temp; int n;
CString Status, ParamStr;
CString BdAddrStr;
struct psRetParams_tag
{
uint8 Status;
char BD_ADDR[6];
}*psReadParams;
char buf1[35] = {'\0'}, buf2[50] = {'\0'};
psReadParams = (psRetParams_tag *)pRetParams ;
Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength();
Status.Format ("\tStatus: [%d] %s\n", n/2,Temp);
BT_itoa(&psReadParams->BD_ADDR ,6, buf1);
BT_ReverseStr(buf1, buf2);
Temp.Format ("%s", buf2);
//Temp.Format ("%-.2X", psReadParams-> ); n = Temp.GetLength();
BdAddrStr.Format ("\tBD_ADDR: [6] %s\n",Temp);
ParamStr = BdAddrStr + Status;
g_pChildFrame->ParamListForOutput(ParamStr);
return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
//------------------------------------------------------------------------------
// End of HCIInfoParm.cpp
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -