⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hcihc_basebandcmdretparamprocfunc.cpp

📁 蓝牙协议HCI层指令发送,主要用于测试HCI以下的代码及RF部分测试.
💻 CPP
📖 第 1 页 / 共 2 页
字号:
//--------------------------------------------------------------- %FILH_BEG% --
//-----------------------------------------------------------------------------
//
//  Project:		$$ProjectName
//
//  File name:		HCIHC_BaseNBandCmdRetParamProcFunc.cpp
//  Author:			Ebrahim Khorasani 
//  Description:	  
//
//  Revision History:
//  $Log: $
//
//  Rev 1.01  07/02/01 EK  .Updated ReadHoldModeActivity return Parameters
//  Rev 1.00  15 July 2000 Initial release
//    
//
//  Copyright (c) TelenComm Corporation  2000   -   All rights reserved    
//--------------------------------------------------------------- %FILH_END% 
//------------------------------------------------------------------------------
//
//  Includes
//
//------------------------------------------------------------------------------
#include <string.h>

#include "..\..\..\stdafx.h"
#include "..\..\..\BTHost.h"
#include "..\..\..\ChildFrm.h"

#include "..\..\Inc\HCIError.h"
#include "..\..\Events\Inc\HCIEventProcFunctions.h"
#include "..\Inc\HCIHC_BaseBandCmdProc.h"

//#include "..\..\Common\Common.h"
//#include "..\Inc\HCIBaseCmdProc.h"
//#include "..\..\Events\Inc\HCIEventPacket.h"
//#include "..\..\Events\Inc\HCIEventFormFunctions.h"

#define NAME_SIZE		248


//------------------------------------------------------------------------------
//
//  Types
//
//------------------------------------------------------------------------------
 

//------------------------------------------------------------------------------
//
//  Class Declarations
//
//------------------------------------------------------------------------------

uint8 CHCIHC_BaseBandCmdProcessor::SetEventmaskCmdRetParamProcFunc(char* pRetParams)
{ 
  CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ResetCmdRetParamProcFunc(char* pRetParams)
{  
  CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::SetEventFilterCmdRetParamProcFunc(char* pRetParams)
{ 
  // g_pChildFrame->DisplayCmdSts(pRetParams, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::FlushCmdRetParamProcFunc(char* pRetParams)
{    
  //g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"");
  //MessageBox(NULL,"FlushCmdRetParamProcFunc  not implemented!!!","Check",MB_OK);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadPIN_TypeCmdRetParamProcFunc(char* pRetParams)
{
  // g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::WritePIN_TypeCmdRetParamProcFunc(char* pRetParams)
{    
  // g_pChildFrame->DisplayCmdSts(pRetParams, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::CreateNewUnitKeyCmdRetParamProcFunc(char* pRetParams)
{    
  // g_pChildFrame->DisplayCmdSts(pRetParams, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadStoredLinkKeyCmdRetParamProcFunc(char* pRetParams)
{      
  // g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::WriteStoredLinkKeyCmdRetParamProcFunc(char* pRetParams)
{
  // g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::DeleteStoredLinkKeyCmdRetParamProcFunc(char* pRetParams)
{        
  // g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"");
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ChangeLocalNameCmdRetParamProcFunc(char* pRetParams)
{    
  CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadLocalnameCmdRetParamProcFunc(char* pRetParams)
{    
  int n;
  int NameSize;
  CString Temp,strTemp;
  CString str;
  CString Status;
  CString Local_Name;
  CString ParamStr;
  char buf1[20] = {'\0'}, buf2[20] = {'\0'};
  char ErrorDef[40];
  struct psRetParams_tag
  {
    uint8		Status;
    UCHAR		Name[NAME_SIZE]; 
  }*psRLNParams;

  psRLNParams = (psRetParams_tag*)pRetParams;

  //uint8 ParamLength= rHCI_EventPacket.GetParmLen();


  if(psRLNParams->Status) {
    g_pChildFrame->ErrorDef((char *)(&psRLNParams->Status), ErrorDef); 
 	Temp.Format ("%.2X   - %s", psRLNParams->Status, ErrorDef);
  }else
    Temp.Format ("%.2X",psRLNParams->Status); 


  Status.Format        ("\tStatus:                      [1]  %s\n", Temp ); 
  Temp.Empty();

  //NameSize = ParamLength - sizeof(psRLNParams->Status);
  NameSize = NAME_SIZE;

  //for (int i = 0 ; i < (RemoteNameSize / 35) + 1; i++)
  //{
  //	   strncpy(buf3,psRNRParams->Remote_Name[i], 36) 
  //     Temp.Format ("\t%s",buf3 );
  //}
  
  strTemp.Format("\t%s", psRLNParams->Name) ;

  Temp.Empty(); Temp = "\t";
  for (int i = 0, j = 0 ; i < NameSize; i++)
  {
	  if(psRLNParams->Name[i] != '\0')
	  {
	    str.Format("%X ",  psRLNParams->Name[i]);
        if( ((j) % 16) == 0)  
          Temp += "\n\t";

        Temp += str ;
		j++;
	  }
	  else
	  {
       if( ((j) % 16) == 0)  
		 Temp += "\n\t";
	   Temp += "00 ";
	   j++;
	  }
  }
  
  if(NameSize < 248 && (psRLNParams->Name[NameSize - 1] != '\0'))
  {
     //int k = Temp.GetLength();
   	 //Temp.SetAt( k,'\0');
 	 AfxMessageBox("\t\tWarning\nName is Supposed to be Padded by NULL!!",MB_OK);
  }
  n = NameSize;	 //Temp.GetLength(); 
  //assert(n <= REMOTE_NAME_SIZE);

  Local_Name.Format("\tName:                        [%d]  \n\n%s%s\n",n, strTemp, Temp );

  ParamStr = Status + Local_Name; 
			 
  g_pChildFrame->ParamListForOutput(ParamStr);

  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadConnectionAcceptTimeoutCmdRetParamProcFunc(char* pRetParams)
{ 
  CString Temp; int n;
  CString Status, ParamStr;
	CString CTimeoutStr;
  struct psRetParams_tag
  {
    uint8		Status;
    uint16	ConAccTimeout;
  }*psReadParams;
 
  psReadParams = (psRetParams_tag *)pRetParams ;

  Temp.Format ("%.2x", psReadParams->Status ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  Temp.Format ("%-.4x", psReadParams->ConAccTimeout ); n = Temp.GetLength(); 
  CTimeoutStr.Format("\tConn Accept Timeout:         [%d]  %s\n", n/2,Temp);

  ParamStr = CTimeoutStr + Status;
	
  g_pChildFrame->ParamListForOutput(ParamStr);
 
	return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::WriteConnectionAcceptTimeoutCmdRetParamProcFunc(char* pRetParams)
{ 
  CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadPageTimeoutCmdRetParamProcFunc(char* pRetParams)
{ 
  CString Temp; int n;
  CString Status, ParamStr;
	CString PTimeoutStr;
  struct psRetParams_tag
  {
    uint8		Status;
    uint16	PageTimeout;
  }*psReadParams;
 
  psReadParams = (psRetParams_tag *)pRetParams ;

  Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  Temp.Format ("%-.4X", psReadParams->PageTimeout ); n = Temp.GetLength(); 
  PTimeoutStr.Format("\tPage Timeout:                [%d]  %s\n", n/2,Temp);

  ParamStr = PTimeoutStr + Status;
	
  g_pChildFrame->ParamListForOutput(ParamStr);
 return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::WritePageTimeoutCmdRetParamProcFunc(char* pRetParams)
{ 
   CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
	
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadScanEnableCmdRetParamProcFunc(char* pRetParams)
{ 
  // g_pChildFrame->DisplayCmdSts(pRetParams++, CMD_COMPLETION_STS,"ReadScanEnable");
  //EK MessageBox(NULL,"ReadScanEnableCmdRetParamProcFunc  not implemented!!!","Check",MB_OK);
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}

uint8 CHCIHC_BaseBandCmdProcessor::WriteScanEnableCmdRetParamProcFunc(char* pRetParams )
{
  CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
	
	
//  g_pChildFrame->DisplayCmdSts(pRetParams, CMD_COMPLETION_STS,"WriteScanEnable");
 
  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}

uint8 CHCIHC_BaseBandCmdProcessor::ReadPageScanActivityCmdRetParamProcFunc(char* pRetParams)
{    
  CString Temp; int n;
  CString Status, ParamStr;
	CString PageScanIntStr;
	CString PageScanWinStr;
  struct psRetParams_tag
  {
    uint8		Status;
    uint16	PageScanInt;
    uint16	PageScanWin;
  }*psReadParams;
 
  psReadParams = (psRetParams_tag *)pRetParams ;

  Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength(); 
      Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  Temp.Format ("%-.4X", psReadParams->PageScanInt ); n = Temp.GetLength(); 
  PageScanIntStr.Format("\tPage Scan Interval:          [%d]  %s\n", n/2,Temp);

  Temp.Format ("%-.4X", psReadParams->PageScanWin ); n = Temp.GetLength(); 
  PageScanWinStr.Format("\tPage Scan Window:            [%d]  %s\n", n/2,Temp);

  ParamStr = PageScanIntStr + PageScanWinStr + Status;
	
  g_pChildFrame->ParamListForOutput(ParamStr);

  return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::WritePageScanActivityCmdRetParamProcFunc(char* pRetParams)
{    
   CString Temp; int n;
  CString Status;
 
  HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *psCmdCompEv ;
  psCmdCompEv = (HCI_EventsInterfaceProcFunctions::sCommandCompleteEvent *)pRetParams ;

  Temp.Format ("%.2x", *pRetParams ); n = Temp.GetLength(); 
  Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  g_pChildFrame->ParamListForOutput(Status);
 return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;
}
uint8 CHCIHC_BaseBandCmdProcessor::ReadEnquiryScanActivityCmdRetParamProcFunc(char* pRetParams)
{   
   CString Temp; int n;
  CString Status, ParamStr;
	CString InquiryScanIntStr;
	CString InquiryScanWinStr;
  struct psRetParams_tag
  {
    uint8		Status;
    uint16	InquiryScanInt;
    uint16	InquiryScanWin;
  }*psReadParams;
 
  psReadParams = (psRetParams_tag *)pRetParams ;

  Temp.Format ("%.2X", psReadParams->Status ); n = Temp.GetLength(); 
      Status.Format    ("\tStatus:                      [%d]  %s\n", n/2,Temp);
	  
  Temp.Format ("%-.4X", psReadParams->InquiryScanInt ); n = Temp.GetLength(); 
  InquiryScanIntStr.Format("\tPage Scan Interval:          [%d]  %s\n", n/2,Temp);

  Temp.Format ("%-.4X", psReadParams->InquiryScanWin ); n = Temp.GetLength(); 
  InquiryScanWinStr.Format("\tPage Scan Window:            [%d]  %s\n", n/2,Temp);

  ParamStr = InquiryScanIntStr + InquiryScanWinStr + Status;
	
  g_pChildFrame->ParamListForOutput(ParamStr);
 return eHCI_ERROR_COMMAND_CURRENTLY_IN_PENDING;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -