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

📄 common.~cpp

📁 wimax bs simulator对应的GUI程序
💻 ~CPP
字号:
#include <vcl\vcl.h>
#include "common.h"


void getFuncMsgType(R64_MSG_S * st_r64_msg,char * funcType,char * msgType)
{
        switch(st_r64_msg->msgHead.functionType)
        {
                case R64_FUNCTION_TYPE_DATA_PATH:
                        strcpy(funcType,"R64_FUNCTION_TYPE_DATA_PATH");
                        switch(st_r64_msg->msgHead.messageType)
                        {
                                case R64_ID_DATA_PATH_REGISTRATION_REQUEST:
                                        strcpy(msgType,"R64_ID_DATA_PATH_REGISTRATION_REQUEST");
                                        break;
                                case R64_ID_DATA_PATH_DE_REGISTRATION_REQUEST:
                                        strcpy(msgType,"R64_ID_DATA_PATH_DE_REGISTRATION_REQUEST");
                                        break;
                                case R64_ID_DATA_PATH_REGISTRATION_RESPONSE:
                                        strcpy(msgType,"R64_ID_DATA_PATH_REGISTRATION_RESPONSE");
                                        break;
                                case R64_ID_DATA_PATH_DE_REGISTRATION_RESPONSE:
                                        strcpy(msgType,"R64_ID_DATA_PATH_DE_REGISTRATION_RESPONSE");
                                        break;
                                case R64_ID_DATA_PATH_REGISTRATION_ACK:
                                        strcpy(msgType,"R64_ID_DATA_PATH_REGISTRATION_ACK");
                                        break;
                                case R64_ID_DATA_PATH_DE_REGISTRATION_ACK:
                                        strcpy(msgType,"R64_ID_DATA_PATH_DE_REGISTRATION_ACK");
                                        break;
                                default:
                                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                                        break;
                        }
                        break;
                case R64_FUNCTION_TYPE_CONTEXT:
                        strcpy(funcType,"R64_FUNCTION_TYPE_CONTEXT");
                        switch(st_r64_msg->msgHead.messageType)
                        {
                                case R64_ID_CONTEXT_REQUEST:
                                        strcpy(msgType,"R64_ID_CONTEXT_REQUEST");
                                        break;
                                case R64_ID_CONTEXT_REPORT:
                                        if(st_r64_msg->u.msContextRep.contextPurposeIndicator.indicator == R64_CONTEXT_PURPOSE_MS_ERROR)
                                                strcpy(msgType,"R64_ID_CONTEXT_REPORT_ERROR");
                                        else
                                                strcpy(msgType,"R64_ID_CONTEXT_REPORT");
                                        break;
                                case R64_ID_CONTEXT_ACK:
                                        strcpy(msgType,"R64_ID_CONTEXT_ACK");
                                        break;
                                case R64_ID_CONTEXT_RSP:
                                        strcpy(msgType,"R64_ID_CONTEXT_RSP");
                                        break;
                                case R64_ID_MS_INFO_REQUEST:
                                        strcpy(msgType,"R64_ID_MS_INFO_REQUEST");
                                        break;
                                case R64_ID_MS_INFO_RESPONSE:
                                        strcpy(msgType,"R64_ID_MS_INFO_RESPONSE");
                                        break;
                                default:
                                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                                        break;
                        }
                        break;
                case R64_FUNCTION_TYPE_AUTH_RELAY:
                        strcpy(funcType,"R64_FUNCTION_TYPE_AUTH_RELAY");
                        switch(st_r64_msg->msgHead.messageType)
                        {
                                case R64_ID_AUTH_RELAY_EAP_START:
                                        strcpy(msgType,"R64_ID_AUTH_RELAY_EAP_START");
                                        break;
                                case R64_ID_AUTH_RELAY_EAP_TRANSFER:
                                        strcpy(msgType,"R64_ID_AUTH_RELAY_EAP_TRANSFER");
                                        break;
                                case R64_ID_AUTH_RELAY_AUTHENTICATED_EAP_START:
                                        strcpy(msgType,"R64_ID_AUTH_RELAY_AUTHENTICATED_EAP_START");
                                        break;
                                case R64_ID_AUTH_RELAY_AUTHENTICATED_EAP_RELAY:
                                        strcpy(msgType,"R64_ID_AUTH_RELAY_AUTHENTICATED_EAP_RELAY");
                                        break;
                                default:
                                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                                        break;
                        }
                        break;
                case R64_FUNCTION_TYPE_MS_STATE_CHANGE:
                        strcpy(funcType,"R64_FUNCTION_TYPE_MS_STATE_CHANGE");
                        switch(st_r64_msg->msgHead.messageType)
                        {
                                case R64_ID_NW_ENTRY_MS_STATE_CHANGE_ACK:
                                        if(st_r64_msg->u.nwEntryMsStateChangeAck.purpose.indicator == R64_CONTEXT_PURPOSE_CAPACITY_EXCHANGE)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_ACK_SBC");
                                        else if(st_r64_msg->u.nwEntryMsStateChangeAck.purpose.indicator == R64_CONTEXT_PURPOSE_MS_REGISTRATION)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_ACK_REG");
                                        break;
                                case R64_ID_NW_ENTRY_MS_STATE_CHANGE_REQUEST:
                                        if(st_r64_msg->u.nwEntryMsStateChangeReq.purpose.indicator == R64_CONTEXT_PURPOSE_CAPACITY_EXCHANGE)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_REQUEST_SBC");
                                        else if(st_r64_msg->u.nwEntryMsStateChangeReq.purpose.indicator == R64_CONTEXT_PURPOSE_MS_REGISTRATION)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_REQUEST_REG");
                                        break;
                                case R64_ID_NW_ENTRY_MS_STATE_CHANGE_RESPONSE:
                                        if(st_r64_msg->u.nwEntryMsStateChangeRsp.purpose.indicator == R64_CONTEXT_PURPOSE_CAPACITY_EXCHANGE)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_RESPONSE_SBC");
                                        else if(st_r64_msg->u.nwEntryMsStateChangeRsp.purpose.indicator == R64_CONTEXT_PURPOSE_MS_REGISTRATION)
                                                strcpy(msgType,"R64_ID_NW_ENTRY_MS_STATE_CHANGE_RESPONSE_REG");
                                        break;
                                default:
                                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                                        break;
                        }
                        break;
                case R64_FUNCTION_TYPE_HANDOFF:
                        strcpy(funcType,"R64_FUNCTION_TYPE_HANDOFF");
                        switch(st_r64_msg->msgHead.messageType)
                        {
                                case R64_ID_HANDOFF_REQUEST:
                                        strcpy(msgType,"R64_ID_HANDOFF_REQUEST");
                                        break;
                                case R64_ID_HANDOFF_RESPONSE:
                                        strcpy(msgType,"R64_ID_HANDOFF_RESPONSE");
                                        break;
                                case R64_ID_HANDOFF_CONFIRM:
                                        strcpy(msgType,"R64_ID_HANDOFF_CONFIRM");
                                        break;
                                case R64_ID_HANDOFF_COMPLETE:
                                        strcpy(msgType,"R64_ID_HANDOFF_COMPLETE");
                                        break;
                                case R64_ID_HANDOFF_ACK:
                                        strcpy(msgType,"R64_ID_HANDOFF_ACK");
                                        break;
                                default:
                                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                                        break;
                        }
                        break;
                default:
                        strcpy(msgType,"UNKNOWN MESSAGE TYPE");
                        strcpy(funcType,"UNKNOWN FUNCTION TYPE");
                        break;
        }
}

void msIdTrans(BYTE *id,char *text)
{
        int i;

        for(i = 0;i < R64_MSID_LENGTH;i++)
        {
                if(*(text) >= '0' && *(text) <= '9')
                        id[i] += (*(text)-'0')*16;
                else if(*(text) >= 'a' && *(text) <= 'f')
                        id[i] += (*(text)-'a'+10)*16;
                else if(*(text) >= 'A' && *(text) <= 'F')
                        id[i] += (*(text)-'A'+10)*16;
  
                if(*(text+1) >= '0' && *(text+1) <= '9')
                        id[i] += (*(text+1)-'0');
                else if(*(text+1) >= 'a' && *(text+1) <= 'f')
                        id[i] += (*(text+1)-'a'+10);
                else if(*(text+1) >= 'A' && *(text+1) <= 'F')
                        id[i] += (*(text+1)-'A'+10);

                text += 2;
        }
}

void bsIdTrans(BYTE *id,char *text)
{
        int i;

        for(i = 0;i < R64_BSID_LENGTH;i++)
        {
                if(*(text) >= '0' && *(text) <= '9')
                        id[i] += (*(text)-'0')*16;
                else if(*(text) >= 'a' && *(text) <= 'f')
                        id[i] += (*(text)-'a'+10)*16;
                else if(*(text) >= 'A' && *(text) <= 'F')
                        id[i] += (*(text)-'A'+10)*16;
  
                if(*(text+1) >= '0' && *(text+1) <= '9')
                        id[i] += (*(text+1)-'0');
                else if(*(text+1) >= 'a' && *(text+1) <= 'f')
                        id[i] += (*(text+1)-'a'+10);
                else if(*(text+1) >= 'A' && *(text+1) <= 'F')
                        id[i] += (*(text+1)-'A'+10);

                text += 2;
        }
}
 

⌨️ 快捷键说明

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