?? ag_inquire.c
字號:
#include "ag_private.h"
#include "ag.h"
#include <message.h>
#include <print.h>
#include <stdlib.h>
#include <string.h>
#include <vm.h>
/*
inquiryReqAction
Start an inquiry.
*/
void inquiryReqAction(uint8 num_responses, uint16 timeout, uint32 CoD_filter, uint16 rnr_en)
{
if (agIdleQuery())
{
MAKE_MSG(CM_INQUIRY_REQ);
msg->max_responses = num_responses;
msg->inq_timeout = D_SEC(timeout);
msg->class_of_device = CoD_filter;
msg->remote_name_request_enabled = rnr_en;
agPutCmMsg(msg);
agSetCurrentState(AgInquiring);
}
else
{
agSendErrorToClient(AgErrorInquiryRequestWhenNotIdle, 0);
}
}
/*
agInquiryCompleteCfm
Confirmation that the inquiry has completed including a status
flag indicating its outcome.
*/
void agInquiryCompleteCfm(const CM_INQUIRY_COMPLETE_CFM_T *cfm)
{
ag_inquiry_status_t inq_status = AgInquiryError;
agSetCurrentState(AgIdle);
/* Let the interface layer do anything it wants to with this */
switch(cfm->status)
{
case CmInquiryComplete:
inq_status = AgInquiryComplete;
break;
case CmInquiryCancelled:
inq_status = AgInquiryCancelled;
break;
case CmInquiryMaxResponsesReached:
inq_status = AgMaxResponsesReached;
break;
default:
PRINT(("ag_inquire: Unknown inquiry complete return type 0x%x\n", cfm->status));
inq_status = AgInquiryError;
break;
}
handleInquiryCompleteCfm(inq_status);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -