UpdateParameter.cpp
上传用户:gelin96
上传日期:2017-01-08
资源大小:20993k
文件大小:41k
源码类别:

MTK

开发平台:

C++ Builder

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*****************************************************************************
  36.  *
  37.  * Filename:
  38.  * ---------
  39.  *   UpdateParameter.cpp
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   Maui META APP
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   RF and ADC calibration parameter update source
  48.  *
  49.  * Author:
  50.  * -------
  51.  *  Andy Ueng (mtk00490)
  52.  *
  53.  *============================================================================
  54.  *             HISTORY
  55.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  56.  *------------------------------------------------------------------------------
  57.  * $Revision$
  58.  * $Modtime$
  59.  * $Log$
  60.  *
  61.  *------------------------------------------------------------------------------
  62.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  63.  *============================================================================
  64.  ****************************************************************************/
  65. //---------------------------------------------------------------------------
  66. #pragma hdrstop
  67. // man
  68. #include "man_active.h"
  69. #include "man_fdm.h"
  70. #ifndef  _WIFI_APC_H_
  71. #include "wifi_apc.h"
  72. #endif
  73. #ifndef _UPDATEPARAMETER_H
  74. #include "UpdateParameter.h"
  75. #endif
  76. //---------------------------------------------------------------------------
  77. #pragma package(smart_init)
  78. //---------------------------------------------------------------------------
  79. static CUPDATEPARAMETER*  update_parameter_ptr;
  80. static bool g_bIsRunning = false;
  81. //----------------------------------------------------------------------------
  82. static void CNF_ReadAGCFromNVRAM(void)
  83. {
  84.     update_parameter_ptr->CNF_ReadAGCFromNVRAM();
  85. }
  86. //---------------------------------------------------------------------------
  87. static void CNF_WriteAGCToNVRAM(void)
  88. {
  89.     update_parameter_ptr->CNF_WriteAGCToNVRAM();
  90. }
  91. //----------------------------------------------------------------------------
  92. static void CNF_ReadAFCFromNVRAM(void)
  93. {
  94.     update_parameter_ptr->CNF_ReadAFCFromNVRAM();
  95. }
  96. //---------------------------------------------------------------------------
  97. static void CNF_WriteAFCToNVRAM(void)
  98. {
  99.     update_parameter_ptr->CNF_WriteAFCToNVRAM();
  100. }
  101. //----------------------------------------------------------------------------
  102. static void CNF_ReadCrystalAFCFromNVRAM(void)
  103. {
  104.     update_parameter_ptr->CNF_ReadCrystalAFCFromNVRAM();
  105. }
  106. //---------------------------------------------------------------------------
  107. static void CNF_WriteCrystalAFCToNVRAM(void)
  108. {
  109.     update_parameter_ptr->CNF_WriteCrystalAFCToNVRAM();
  110. }
  111. //----------------------------------------------------------------------------
  112. static void CNF_ReadIP2FromNVRAM(void)
  113. {
  114.     update_parameter_ptr->CNF_ReadIP2FromNVRAM();
  115. }
  116. //---------------------------------------------------------------------------
  117. static void CNF_WriteIP2ToNVRAM(void)
  118. {
  119.     update_parameter_ptr->CNF_WriteIP2ToNVRAM();
  120. }
  121. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  122. static void CNF_ReadTxIqFromNVRAM(void)
  123. {
  124.     update_parameter_ptr->CNF_ReadTxIqFromNVRAM();
  125. }
  126. //---------------------------------------------------------------------------
  127. static void CNF_WriteTxIqToNVRAM(void)
  128. {
  129.     update_parameter_ptr->CNF_WriteTxIqToNVRAM();
  130. }
  131. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  132. static  void  CNF_ReadGmskAPCFromNVRAM(void)
  133. {
  134.     update_parameter_ptr->CNF_ReadGmskAPCFromNVRAM();
  135. }
  136. //----------------------------------------------------------------------------
  137. static  void  CNF_ReadEpskAPCFromNVRAM( void )
  138. {
  139.     update_parameter_ptr->CNF_ReadEpskAPCFromNVRAM();
  140. }
  141. //---------------------------------------------------------------------------
  142. static void  CNF_WriteGmskAPCToNVRAM( void )
  143. {
  144.     update_parameter_ptr->CNF_WriteGmskAPCToNVRAM( );
  145. }
  146. //---------------------------------------------------------------------------
  147. static void  CNF_WriteEpskAPCToNVRAM( void )
  148. {
  149.     update_parameter_ptr->CNF_WriteEpskAPCToNVRAM( );
  150. }
  151. //----------------------------------------------------------------------------
  152. static  void  CNF_ReadADCFromNVRAM( void )
  153. {
  154.     update_parameter_ptr->CNF_ReadADCFromNVRAM();
  155. }
  156. //----------------------------------------------------------------------------
  157. static void  CNF_WriteADCToNVRAM( void )
  158. {
  159.     update_parameter_ptr->CNF_WriteADCToNVRAM( );
  160. }
  161. //----------------------------------------------------------------------------
  162. static  void  CNF_ReadWiFiTxDcOffsetFromNVRAM( void )
  163. {
  164.     update_parameter_ptr->CNF_ReadWiFiTxDcOffsetFromNVRAM();
  165. }
  166. //----------------------------------------------------------------------------
  167. static void  CNF_WriteWiFiTxDcOffsetToNVRAM( void )
  168. {
  169.     update_parameter_ptr->CNF_WriteWiFiTxDcOffsetToNVRAM( );
  170. }
  171. //----------------------------------------------------------------------------
  172. static  void  CNF_ReadWiFiTxPowerFromNVRAM( void )
  173. {
  174.     update_parameter_ptr->CNF_ReadWiFiTxPowerFromNVRAM();
  175. }
  176. //----------------------------------------------------------------------------
  177. static void CNF_WriteWiFiTxPowerToNVRAM( void )
  178. {
  179.     update_parameter_ptr->CNF_WriteWiFiTxPowerToNVRAM( );
  180. }
  181. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  182. static void CNF_ReadWiFiAlcFromNVRAM(void)
  183. {
  184.     update_parameter_ptr->CNF_ReadWiFiAlcFromNVRAM();
  185. }
  186. //----------------------------------------------------------------------------
  187. static void CNF_WriteWiFiAlcToNVRAM(void)
  188. {
  189.     update_parameter_ptr->CNF_WriteWiFiAlcToNVRAM();
  190. }
  191. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  192. static void CNF_ReadBtCapIdFromNVRAM(void)
  193. {
  194.     update_parameter_ptr->CNF_ReadBtCapIdFromNVRAM();
  195. }
  196. //----------------------------------------------------------------------------
  197. static void CNF_WriteBtCapIdToNVRAM(void)
  198. {
  199.     update_parameter_ptr->CNF_WriteBtCapIdToNVRAM();
  200. }
  201. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  202. static  void  CNF_ReadIMEIFromNVRAM( void )
  203. {
  204.     update_parameter_ptr->CNF_ReadIMEIFromNVRAM();
  205. }
  206. //----------------------------------------------------------------------------
  207. static void  CNF_WriteIMEIToNVRAM( void )
  208. {
  209.     update_parameter_ptr->CNF_WriteIMEIToNVRAM( );
  210. }
  211. //----------------------------------------------------------------------------
  212. static  void  CNF_ReadBarcodeFromNVRAM( void )
  213. {
  214.     update_parameter_ptr->CNF_ReadBarcodeFromNVRAM();
  215. }
  216. //----------------------------------------------------------------------------
  217. static void  CNF_WriteBarcodeToNVRAM( void )
  218. {
  219.     update_parameter_ptr->CNF_WriteBarcodeToNVRAM( );
  220. }
  221. //----------------------------------------------------------------------------
  222. static void  REQ_TimeOut( void )
  223. {    update_parameter_ptr->REQ_TimeOut();
  224. }
  225. //----------------------------------------------------------------------------
  226. static void  REQ_Finish( void )
  227. {   update_parameter_ptr->REQ_Finish();
  228. }
  229. //===========================================================================
  230. CUPDATEPARAMETER::CUPDATEPARAMETER(void)
  231. {
  232.     m_rf_afc_ptr = new CRFAFC();
  233.     m_rf_crystal_afc_ptr = new CCRYSTALAFC();
  234.     m_rf_ip2_ptr = new CRFPM();
  235.     m_rf_txiq_ptr = new CRFTXIQ();
  236.     m_rf_agc_ptr = new CRFAGC();
  237.     m_rf_apc_ptr = new CRFAPC();
  238.     m_rf_epsk_apc_ptr = new CRFAPC8PSK();
  239.     m_bb_adc_ptr = new CBBADC();
  240.     m_wifi_txdc_ptr = new CWIFITXDC();
  241.     m_wifi_apc_ptr = new CWIFIAPC();
  242.     m_wifi_alc_ptr = new CWIFIALC();
  243.     m_bt_info6601_ptr = new CBTINFO6601();
  244.     m_bt_info6611_ptr = new CBTINFO6611();
  245.     MF_imei_ptr = new CIMEIDOWNLOAD();
  246.     m_barcode_ptr = new CBARCODE();
  247.     
  248.     update_parameter_ptr = this;
  249.     m_bCrystal_AFC_trigger = false;
  250.     g_bIsRunning = false;
  251. }
  252. //---------------------------------------------------------------------------
  253. CUPDATEPARAMETER::~CUPDATEPARAMETER( )
  254. {
  255.     if(m_rf_afc_ptr)
  256.     {
  257.         delete m_rf_afc_ptr;
  258.         m_rf_afc_ptr = NULL;
  259.     }
  260.     if(m_rf_crystal_afc_ptr)
  261.     {
  262.         delete m_rf_crystal_afc_ptr;
  263.         m_rf_crystal_afc_ptr = NULL;
  264.     }
  265.     if(m_rf_agc_ptr)
  266.     {
  267.         delete m_rf_agc_ptr;
  268.         m_rf_agc_ptr = NULL;
  269.     }
  270.     if( m_rf_ip2_ptr )
  271.     {
  272.         delete m_rf_ip2_ptr;
  273.         m_rf_ip2_ptr = NULL;
  274.     }
  275.     if( m_rf_txiq_ptr )
  276.     {
  277.         delete m_rf_txiq_ptr;
  278.         m_rf_txiq_ptr = NULL;
  279.     }
  280.     if(m_rf_apc_ptr)
  281.     {
  282.         delete m_rf_apc_ptr;
  283.         m_rf_apc_ptr = NULL;
  284.     }
  285.     if(m_rf_epsk_apc_ptr)
  286.     {
  287.         delete m_rf_epsk_apc_ptr;
  288.         m_rf_epsk_apc_ptr = NULL;
  289.     }
  290.     if(m_bb_adc_ptr)
  291.     {
  292.         delete m_bb_adc_ptr;
  293.         m_bb_adc_ptr = NULL;
  294.     }
  295.     if( m_wifi_txdc_ptr )
  296.     {
  297.         delete m_wifi_txdc_ptr;
  298.         m_wifi_txdc_ptr = NULL;
  299.     }
  300.         
  301.     if (m_wifi_apc_ptr)
  302.     {
  303.         delete m_wifi_apc_ptr;
  304.         m_wifi_apc_ptr = NULL;
  305.     }
  306.     if (m_wifi_alc_ptr)
  307.     {
  308.         delete m_wifi_alc_ptr;
  309.         m_wifi_alc_ptr = NULL;
  310.     }
  311.     if (m_bt_info6601_ptr)
  312.     {
  313.         delete m_bt_info6601_ptr;
  314.         m_bt_info6601_ptr = NULL;
  315.     }
  316.     if (m_bt_info6611_ptr)
  317.     {
  318.         delete m_bt_info6611_ptr;
  319.         m_bt_info6611_ptr = NULL;
  320.     }
  321.     if (MF_imei_ptr)
  322.     {
  323.         delete MF_imei_ptr;
  324.         MF_imei_ptr = NULL;
  325.     }
  326.     if(m_barcode_ptr)
  327.     {
  328.         delete m_barcode_ptr;
  329.         m_barcode_ptr = NULL;
  330.     }
  331.     
  332. }
  333. //==========================================================================================
  334. void  CUPDATEPARAMETER::Confirm(E_METAAPP_RESULT_T confirm_state)
  335. {
  336.     if (!g_bIsRunning)
  337.     {
  338.         return;
  339.     }
  340.     g_bIsRunning = false;
  341.     if (NULL == ConfirmCallback)
  342.     {
  343.         return;
  344.     }
  345.     m_eConfirmState = confirm_state;
  346.     ActiveMan->SetActiveFunction(ConfirmCallback);
  347. }
  348. //==============================================================================
  349. void CUPDATEPARAMETER::REQ_TimeOut(void)
  350. {
  351.     if (!g_bIsRunning)
  352.     {
  353.         return;
  354.     }
  355.     Confirm(METAAPP_TIMEOUT);
  356. }
  357. //===========================================================================
  358. void CUPDATEPARAMETER::REQ_Finish(void)
  359. {
  360.     if (!g_bIsRunning)
  361.     {
  362.         return;
  363.     }
  364.     
  365.     Confirm(METAAPP_SUCCESS);
  366. }
  367. //===========================================================================
  368. void CUPDATEPARAMETER::REQ_Read_AGC_From_NVRAM(void)
  369. {
  370.     g_bIsRunning = true;
  371.     m_rf_agc_ptr->ConfirmCallback = ::CNF_ReadAGCFromNVRAM;
  372.     m_rf_agc_ptr->REQ_Read_From_NVRAM_Start();
  373. }
  374. //-------------------------------------
  375. void CUPDATEPARAMETER::CNF_ReadAGCFromNVRAM(void)
  376. {
  377.     if (!g_bIsRunning)
  378.     {
  379.         return;
  380.     }
  381.     E_METAAPP_RESULT_T state = m_rf_agc_ptr->Get_ConfirmState();
  382.     Confirm(state);
  383. }
  384. //===========================================================================
  385. void  CUPDATEPARAMETER::REQ_Read_AFC_From_NVRAM(void)
  386. {
  387.     g_bIsRunning = true;
  388.     m_rf_afc_ptr->ConfirmCallback = ::CNF_ReadAFCFromNVRAM;
  389.     m_rf_afc_ptr->REQ_Read_From_NVRAM_Start();
  390. }
  391. //-------------------------------------
  392. void CUPDATEPARAMETER::CNF_ReadAFCFromNVRAM( void )
  393. {
  394.     if (!g_bIsRunning)
  395.     {
  396.         return;
  397.     }
  398.     E_METAAPP_RESULT_T state = m_rf_afc_ptr->Get_ConfirmState();
  399.     if (METAAPP_SUCCESS == state)
  400.     {
  401.         if( ! m_bCrystal_AFC_trigger )
  402.         {
  403.             Confirm( METAAPP_SUCCESS );
  404.         }
  405.         else // crystal
  406.         {
  407.             m_bCrystal_AFC_trigger = false;
  408.             m_rf_crystal_afc_ptr->ConfirmCallback = ::CNF_ReadCrystalAFCFromNVRAM;
  409.             m_rf_crystal_afc_ptr->REQ_Read_CAPID_From_NVRAM_Start();
  410.         }
  411.     }
  412.     else
  413.     {
  414.         Confirm(state);
  415.     }
  416. }
  417. //===========================================================================
  418. void CUPDATEPARAMETER::REQ_Read_Crystal_AFC_From_NVRAM(void)
  419. {
  420.     g_bIsRunning = true;
  421.     m_bCrystal_AFC_trigger = true;
  422.     m_rf_afc_ptr->ConfirmCallback = ::CNF_ReadAFCFromNVRAM;
  423.     m_rf_afc_ptr->REQ_Read_From_NVRAM_Start();
  424. }
  425. //-------------------------------------
  426. void CUPDATEPARAMETER::CNF_ReadCrystalAFCFromNVRAM(void)
  427. {
  428.     if (!g_bIsRunning)
  429.     {
  430.         return;
  431.     }
  432.     E_METAAPP_RESULT_T state = m_rf_crystal_afc_ptr->Get_ConfirmState();
  433.     Confirm(state);
  434. }
  435. //===========================================================================
  436. void CUPDATEPARAMETER::REQ_Read_IP2_From_NVRAM(unsigned int rfmod_id)
  437. {
  438.     g_bIsRunning = true;
  439.     m_rf_ip2_ptr->ConfirmCallback = ::CNF_ReadIP2FromNVRAM;
  440.     m_rf_ip2_ptr->REQ_Read_IP2Reg_From_NVRAM_Start(rfmod_id);
  441. }
  442. //-------------------------------------
  443. void CUPDATEPARAMETER::CNF_ReadIP2FromNVRAM(void)
  444. {
  445.     if(!g_bIsRunning)  return;
  446.     E_METAAPP_RESULT_T state = m_rf_ip2_ptr->Get_ConfirmState();
  447.     Confirm(state);
  448. }
  449. //===========================================================================
  450. void CUPDATEPARAMETER::REQ_Read_TxIq_From_NVRAM(unsigned int rfmod_id, E_BBTXCFG_VER_T bbtxcfg_ver)
  451. {
  452.     g_bIsRunning = true;
  453.     m_rf_txiq_ptr->ConfirmCallback = ::CNF_ReadTxIqFromNVRAM;
  454.     m_rf_txiq_ptr->REQ_Read_From_NVRAM_Start(rfmod_id, bbtxcfg_ver);
  455. }
  456. //-------------------------------------
  457. void CUPDATEPARAMETER::CNF_ReadTxIqFromNVRAM(void)
  458. {
  459.     if (!g_bIsRunning)
  460.     {
  461.         return;
  462.     }
  463.     E_METAAPP_RESULT_T state = m_rf_txiq_ptr->Get_ConfirmState();
  464.     Confirm(state);
  465. }
  466. //===========================================================================
  467. void CUPDATEPARAMETER::REQ_Read_GMSK_APC_From_NVRAM(unsigned int rf_id, bool b_tado_support)
  468. {
  469.     g_bIsRunning = true;
  470.     m_rf_apc_ptr->ConfirmCallback = ::CNF_ReadGmskAPCFromNVRAM;
  471.     m_rf_apc_ptr->REQ_Read_APC_From_NVRAM_Start(rf_id, b_tado_support);
  472. }
  473. //-------------------------------------
  474. void CUPDATEPARAMETER::CNF_ReadGmskAPCFromNVRAM(void)
  475. {
  476.     if (!g_bIsRunning)
  477.     {
  478.         return;
  479.     }
  480.     E_METAAPP_RESULT_T state = m_rf_apc_ptr->Get_ConfirmState();
  481.     Confirm(state);
  482. }
  483. //===========================================================================
  484. void CUPDATEPARAMETER::REQ_Read_EPSK_APC_From_NVRAM(unsigned int rf_id)
  485. {
  486.     g_bIsRunning = true;
  487.     m_rf_epsk_apc_ptr->ConfirmCallback = ::CNF_ReadEpskAPCFromNVRAM;
  488.     m_rf_epsk_apc_ptr->REQ_Read_APC_From_NVRAM_Start(rf_id);
  489. }
  490. //-------------------------------------
  491. void CUPDATEPARAMETER::CNF_ReadEpskAPCFromNVRAM(void)
  492. {
  493.     if (!g_bIsRunning)
  494.     {
  495.         return;
  496.     }
  497.     E_METAAPP_RESULT_T state = m_rf_epsk_apc_ptr->Get_ConfirmState();
  498.     Confirm(state);
  499. }
  500. //===========================================================================
  501. void CUPDATEPARAMETER::REQ_Read_ADC_From_NVRAM(void)
  502. {
  503.     g_bIsRunning = true;
  504.     m_bb_adc_ptr->ConfirmCallback = ::CNF_ReadADCFromNVRAM;
  505.     m_bb_adc_ptr->REQ_Read_From_NVRAM_Start();
  506. }
  507. //-------------------------------------
  508. void CUPDATEPARAMETER::CNF_ReadADCFromNVRAM(void)
  509. {
  510.     if(!g_bIsRunning)  return;
  511.     E_METAAPP_RESULT_T state = m_bb_adc_ptr->Get_ConfirmState();
  512.     Confirm(state);
  513. }
  514. //===========================================================================
  515. void CUPDATEPARAMETER::REQ_Read_WiFiTxDcOffset_From_NVRAM(void)
  516. {
  517.     g_bIsRunning = true;
  518.     m_wifi_txdc_ptr->ConfirmCallback = ::CNF_ReadWiFiTxDcOffsetFromNVRAM;
  519.     m_wifi_txdc_ptr->REQ_Read_From_NVRAM_Start();
  520. }
  521. //-------------------------------------
  522. void  CUPDATEPARAMETER::CNF_ReadWiFiTxDcOffsetFromNVRAM(void)
  523. {
  524.     if (!g_bIsRunning)
  525.     {
  526.         return;
  527.     }
  528.     E_METAAPP_RESULT_T state = m_wifi_txdc_ptr->Get_ConfirmState();
  529.     Confirm(state);
  530. }
  531. //===========================================================================
  532. void CUPDATEPARAMETER::REQ_Read_WiFiTxPower_From_NVRAM(void)
  533. {
  534.     g_bIsRunning = true;
  535.     m_wifi_apc_ptr->ConfirmCallback = ::CNF_ReadWiFiTxPowerFromNVRAM;
  536.     m_wifi_apc_ptr->REQ_Read_TxPower2400M_From_NVRAM_Start();
  537. }
  538. //-------------------------------------
  539. void CUPDATEPARAMETER::CNF_ReadWiFiTxPowerFromNVRAM(void)
  540. {
  541.     if (!g_bIsRunning)
  542.     {
  543.         return;
  544.     }
  545.     E_METAAPP_RESULT_T state = m_wifi_apc_ptr->Get_ConfirmState();
  546.     Confirm(state);
  547. }
  548. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  549. void CUPDATEPARAMETER::REQ_Read_WiFiAlc_From_NVRAM(void)
  550. {
  551.     g_bIsRunning = true;
  552.     m_wifi_alc_ptr->ConfirmCallback = ::CNF_ReadWiFiAlcFromNVRAM;
  553.     m_wifi_alc_ptr->REQ_Read_From_NVRAM_Start();
  554. }
  555. //-------------------------------------
  556. void CUPDATEPARAMETER::CNF_ReadWiFiAlcFromNVRAM(void)
  557. {
  558.     if (!g_bIsRunning)
  559.     {
  560.         return;
  561.     }
  562.     E_METAAPP_RESULT_T state = m_wifi_alc_ptr->Get_ConfirmState();
  563.     Confirm(state);
  564. }
  565. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  566. void  CUPDATEPARAMETER::REQ_Read_BtCapId_From_NVRAM(void)
  567. {
  568.     g_bIsRunning = true;
  569.     m_bt_info6601_ptr->ConfirmCallback = ::CNF_ReadBtCapIdFromNVRAM;
  570.     m_bt_info6601_ptr->REQ_Read_From_NVRAM_Start();
  571. }
  572. //-------------------------------------
  573. void CUPDATEPARAMETER::CNF_ReadBtCapIdFromNVRAM(void)
  574. {
  575.     if (!g_bIsRunning)
  576.     {
  577.         return;
  578.     }
  579.     E_METAAPP_RESULT_T state = m_bt_info6601_ptr->Get_ConfirmState();
  580.     Confirm(state);
  581. }
  582. //===========================================================================
  583. void CUPDATEPARAMETER::REQ_Read_IMEI_From_NVRAM(void)
  584. {
  585.     g_bIsRunning = true;
  586.     MF_imei_ptr->ConfirmCallback = ::CNF_ReadIMEIFromNVRAM;
  587.     MF_imei_ptr->REQ_Read_From_NVRAM_Start();
  588. }
  589. //-------------------------------------
  590. void CUPDATEPARAMETER::CNF_ReadIMEIFromNVRAM(void)
  591. {
  592.     if (!g_bIsRunning)
  593.     {
  594.         return;
  595.     }
  596.     E_METAAPP_RESULT_T state = MF_imei_ptr->Get_ConfirmState();
  597.     Confirm(state);
  598. }
  599. //===========================================================================
  600. void CUPDATEPARAMETER::REQ_Read_Barcode_From_NVRAM(void)
  601. {
  602.     g_bIsRunning = true;
  603.     m_barcode_ptr->ConfirmCallback = ::CNF_ReadBarcodeFromNVRAM;
  604.     m_barcode_ptr->REQ_Read_From_NVRAM();
  605. }
  606. //-------------------------------------
  607. void CUPDATEPARAMETER::CNF_ReadBarcodeFromNVRAM(void)
  608. {
  609.     if (!g_bIsRunning)
  610.     {
  611.         return;
  612.     }
  613.     E_METAAPP_RESULT_T state = m_barcode_ptr->Get_ConfirmState();
  614.     Confirm(state);
  615. }
  616. //===========================================================================
  617. void CUPDATEPARAMETER::REQ_Write_AGC_To_NVRAM(void)
  618. {
  619.     g_bIsRunning = true;
  620.     m_rf_agc_ptr->ConfirmCallback = ::CNF_WriteAGCToNVRAM;
  621.     m_rf_agc_ptr->REQ_Write_To_NVRAM_Start();
  622. }
  623. //-------------------------------------
  624. void CUPDATEPARAMETER::CNF_WriteAGCToNVRAM(void)
  625. {
  626.     if (!g_bIsRunning)
  627.     {
  628.         return;
  629.     }
  630.     E_METAAPP_RESULT_T state = m_rf_agc_ptr->Get_ConfirmState();
  631.     Confirm(state);
  632. }
  633. //===========================================================================
  634. void CUPDATEPARAMETER::REQ_Write_AFC_To_NVRAM(void)
  635. {
  636.     g_bIsRunning = true;
  637.     m_rf_afc_ptr->ConfirmCallback = ::CNF_WriteAFCToNVRAM;
  638.     m_rf_afc_ptr->REQ_Write_To_NVRAM_Start();
  639. }
  640. //-------------------------------------
  641. void CUPDATEPARAMETER::CNF_WriteAFCToNVRAM(void)
  642. {
  643.     if (!g_bIsRunning)
  644.     {
  645.         return;
  646.     }
  647.     E_METAAPP_RESULT_T state = m_rf_afc_ptr->Get_ConfirmState();
  648.     if (METAAPP_SUCCESS == state)
  649.     {
  650.         if( ! m_bCrystal_AFC_trigger )
  651.         {
  652.             ActiveMan->SetActiveFunction( ::REQ_Finish );
  653.         }
  654.         else
  655.         {
  656.             m_bCrystal_AFC_trigger = false;
  657.             m_rf_crystal_afc_ptr->ConfirmCallback = ::CNF_WriteCrystalAFCToNVRAM;
  658.             m_rf_crystal_afc_ptr->REQ_Write_CAPID_To_NVRAM_Start();
  659.         }
  660.     }
  661.     else
  662.     {   Confirm(state);
  663.     }
  664. }
  665. //===========================================================================
  666. void CUPDATEPARAMETER::REQ_Write_Crystal_AFC_To_NVRAM(void)
  667. {
  668.     g_bIsRunning = true;
  669.     m_bCrystal_AFC_trigger = true;
  670.     m_rf_afc_ptr->ConfirmCallback = ::CNF_WriteAFCToNVRAM;
  671.     m_rf_afc_ptr->REQ_Write_To_NVRAM_Start();
  672. }
  673. //-------------------------------------
  674. void CUPDATEPARAMETER::CNF_WriteCrystalAFCToNVRAM(void)
  675. {
  676.     if (!g_bIsRunning)
  677.     {
  678.         return;
  679.     }
  680.     E_METAAPP_RESULT_T state = m_rf_crystal_afc_ptr->Get_ConfirmState();
  681.     Confirm(state);
  682. }
  683. //===========================================================================
  684. void CUPDATEPARAMETER::REQ_Write_IP2_To_NVRAM(unsigned int rfmod_id)
  685. {
  686.     g_bIsRunning = true;
  687.     m_rf_ip2_ptr->ConfirmCallback = ::CNF_WriteIP2ToNVRAM;
  688.     m_rf_ip2_ptr->REQ_Write_IP2Reg_To_NVRAM_Start(rfmod_id);
  689. }
  690. //-------------------------------------
  691. void CUPDATEPARAMETER::CNF_WriteIP2ToNVRAM(void)
  692. {
  693.     if (!g_bIsRunning)
  694.     {
  695.         return;
  696.     }
  697.     E_METAAPP_RESULT_T state = m_rf_ip2_ptr->Get_ConfirmState();
  698.     Confirm(state);
  699. }
  700. //===========================================================================
  701. void CUPDATEPARAMETER::REQ_Write_TxIq_To_NVRAM(unsigned int rfmod_id, E_BBTXCFG_VER_T bbtxcfg_ver)
  702. {
  703.     g_bIsRunning = true;
  704.     m_rf_txiq_ptr->ConfirmCallback = ::CNF_WriteTxIqToNVRAM;
  705.     m_rf_txiq_ptr->REQ_Write_To_NVRAM_Start(rfmod_id, bbtxcfg_ver);
  706. }
  707. //-------------------------------------
  708. void CUPDATEPARAMETER::CNF_WriteTxIqToNVRAM(void)
  709. {
  710.     if (!g_bIsRunning)
  711.     {
  712.         return;
  713.     }
  714.     E_METAAPP_RESULT_T state = m_rf_txiq_ptr->Get_ConfirmState();
  715.     Confirm(state);
  716. }
  717. //===========================================================================
  718. void  CUPDATEPARAMETER::REQ_Write_GMSK_APC_To_NVRAM(unsigned int rf_id, bool b_tado_support)
  719. {
  720.     g_bIsRunning = true;
  721.     m_rf_apc_ptr->ConfirmCallback = ::CNF_WriteGmskAPCToNVRAM;
  722.     m_rf_apc_ptr->REQ_Write_APC_To_NVRAM_Start(rf_id, b_tado_support);
  723. }
  724. //-------------------------------------
  725. void CUPDATEPARAMETER::CNF_WriteGmskAPCToNVRAM(void)
  726. {
  727.     if (!g_bIsRunning)
  728.     {
  729.         return;
  730.     }
  731.     E_METAAPP_RESULT_T  state = m_rf_apc_ptr->Get_ConfirmState();
  732.     Confirm(state);
  733. }
  734. //===========================================================================
  735. void CUPDATEPARAMETER::REQ_Write_EPSK_APC_To_NVRAM(unsigned int rf_id)
  736. {
  737.     g_bIsRunning = true;
  738.     m_rf_epsk_apc_ptr->ConfirmCallback = ::CNF_WriteEpskAPCToNVRAM;
  739.     m_rf_epsk_apc_ptr->REQ_Write_APC_To_NVRAM_Start(rf_id);
  740. }
  741. //-------------------------------------
  742. void CUPDATEPARAMETER::CNF_WriteEpskAPCToNVRAM(void)
  743. {
  744.     if (!g_bIsRunning)
  745.     {
  746.         return;
  747.     }
  748.     E_METAAPP_RESULT_T state = m_rf_epsk_apc_ptr->Get_ConfirmState();
  749.     Confirm(state);
  750. }
  751. //===========================================================================
  752. void CUPDATEPARAMETER::REQ_Write_ADC_To_NVRAM(void)
  753. {
  754.     g_bIsRunning = true;
  755.     m_bb_adc_ptr->ConfirmCallback = ::CNF_WriteADCToNVRAM;
  756.     m_bb_adc_ptr->REQ_Write_To_NVRAM_Start();
  757. }
  758. //-------------------------------------
  759. void CUPDATEPARAMETER::CNF_WriteADCToNVRAM(void)
  760. {
  761.     if (!g_bIsRunning)
  762.     {
  763.         return;
  764.     }
  765.     E_METAAPP_RESULT_T state = m_bb_adc_ptr->Get_ConfirmState();
  766.     Confirm(state);
  767. }
  768. //===========================================================================
  769. void CUPDATEPARAMETER::REQ_Write_WiFiTxDcOffset_To_NVRAM(void)
  770. {
  771.     g_bIsRunning = true;
  772.     m_wifi_txdc_ptr->ConfirmCallback = ::CNF_WriteWiFiTxDcOffsetToNVRAM;
  773.     m_wifi_txdc_ptr->REQ_Write_To_NVRAM_Start();
  774. }
  775. //-------------------------------------
  776. void CUPDATEPARAMETER::CNF_WriteWiFiTxDcOffsetToNVRAM(void)
  777. {
  778.     if (!g_bIsRunning)
  779.     {
  780.         return;
  781.     }
  782.     E_METAAPP_RESULT_T state = m_wifi_txdc_ptr->Get_ConfirmState();
  783.     Confirm(state);
  784. }
  785. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  786. void CUPDATEPARAMETER::REQ_Write_BtCapId_To_NVRAM(void)
  787. {
  788.     g_bIsRunning = true;
  789.     m_bt_info6601_ptr->ConfirmCallback = ::CNF_WriteBtCapIdToNVRAM;
  790.     m_bt_info6601_ptr->REQ_Write_To_NVRAM_Start();
  791. }
  792. //-------------------------------------
  793. void CUPDATEPARAMETER::CNF_WriteBtCapIdToNVRAM(void)
  794. {
  795.     if (!g_bIsRunning)
  796.     {
  797.         return;
  798.     }
  799.     E_METAAPP_RESULT_T state = m_bt_info6601_ptr->Get_ConfirmState();
  800.     Confirm(state);
  801. }
  802. //===========================================================================
  803. void CUPDATEPARAMETER::REQ_Write_WiFiTxPower_To_NVRAM(void)
  804. {
  805.     g_bIsRunning = true;
  806.     m_wifi_apc_ptr->ConfirmCallback = ::CNF_WriteWiFiTxPowerToNVRAM;
  807.     m_wifi_apc_ptr->REQ_Write_TxPower2400M_To_NVRAM_Start();
  808. }
  809. //-------------------------------------
  810. void CUPDATEPARAMETER::CNF_WriteWiFiTxPowerToNVRAM(void)
  811. {
  812.     if (!g_bIsRunning)
  813.     {
  814.         return;
  815.     }
  816.     E_METAAPP_RESULT_T state = m_wifi_apc_ptr->Get_ConfirmState();
  817.     Confirm(state);
  818. }
  819. //===========================================================================
  820. void CUPDATEPARAMETER::REQ_Write_WiFiAlc_To_NVRAM(void)
  821. {
  822.     g_bIsRunning = true;
  823.     m_wifi_alc_ptr->ConfirmCallback = ::CNF_WriteWiFiAlcToNVRAM;
  824.     m_wifi_alc_ptr->REQ_Write_To_NVRAM_Start();
  825. }
  826. //-------------------------------------
  827. void CUPDATEPARAMETER::CNF_WriteWiFiAlcToNVRAM(void)
  828. {
  829.     if (!g_bIsRunning)
  830.     {
  831.         return;
  832.     }
  833.     E_METAAPP_RESULT_T state = m_wifi_alc_ptr->Get_ConfirmState();
  834.     Confirm(state);
  835. }
  836. //===========================================================================
  837. void CUPDATEPARAMETER::REQ_Write_IMEI_To_NVRAM(bool check_checksum)
  838. {
  839.     g_bIsRunning = true;
  840.     MF_imei_ptr->ConfirmCallback = ::CNF_WriteIMEIToNVRAM;
  841.     MF_imei_ptr->REQ_Write_To_NVRAM_Start(check_checksum);
  842. }
  843. //-------------------------------------
  844. void CUPDATEPARAMETER::CNF_WriteIMEIToNVRAM(void)
  845. {
  846.     if (!g_bIsRunning)
  847.     {
  848.         return;
  849.     }
  850.     E_METAAPP_RESULT_T state = MF_imei_ptr->Get_ConfirmState();
  851.     Confirm(state);
  852. }
  853. //===========================================================================
  854. void CUPDATEPARAMETER::REQ_Write_Barcode_To_NVRAM(void)
  855. {
  856.     g_bIsRunning = true;
  857.     m_barcode_ptr->ConfirmCallback = ::CNF_WriteBarcodeToNVRAM;
  858.     m_barcode_ptr->REQ_Write_To_NVRAM();
  859. }
  860. //-------------------------------------
  861. void CUPDATEPARAMETER::CNF_WriteBarcodeToNVRAM(void)
  862. {
  863.     if (!g_bIsRunning)
  864.     {
  865.         return;
  866.     }
  867.     E_METAAPP_RESULT_T state = m_barcode_ptr->Get_ConfirmState();
  868.     Confirm(state);
  869. }
  870. //===========================================================================
  871. bool CUPDATEPARAMETER::AnyRxLossSectionExist(char *filename)
  872. {
  873.     bool ok = m_rf_agc_ptr->AnyRxLossSectionExist(filename);
  874.     if( !ok )  return false;
  875.     return true;
  876. }
  877. //---------------------------------------------------------------------------
  878. bool  CUPDATEPARAMETER::REQ_Read_AGC_From_File( char *filename )
  879. {
  880.     bool ok = m_rf_agc_ptr->REQ_Read_From_File(filename);
  881.     if( !ok )  return false;
  882.     return true;
  883. }
  884. //---------------------------------------------------------------------------
  885. bool  CUPDATEPARAMETER::REQ_Write_AGC_To_File( char *filename )
  886. {
  887.     bool ok = m_rf_agc_ptr->REQ_Write_To_File(filename);
  888.     if( !ok )  return false;
  889.     return true;
  890. }
  891. //===========================================================================
  892. bool  CUPDATEPARAMETER::AfcSectionExist( char *filename )
  893. {
  894.     bool ok = m_rf_afc_ptr->AfcSectionExist(filename);
  895.     if( !ok )  return false;
  896.     return true;
  897. }
  898. //---------------------------------------------------------------------------
  899. bool  CUPDATEPARAMETER::REQ_Read_AFC_From_File( char *filename )
  900. {
  901.     bool ok = m_rf_afc_ptr->REQ_Read_From_File(filename);
  902.     if( !ok )  return false;
  903.     return true;
  904. }
  905. //---------------------------------------------------------------------------
  906. bool  CUPDATEPARAMETER::REQ_Write_AFC_To_File( char *filename )
  907. {
  908.     bool ok = m_rf_afc_ptr->REQ_Write_To_File(filename);
  909.     if( !ok )  return  false;
  910.     return true;
  911. }
  912. //===========================================================================
  913. bool  CUPDATEPARAMETER::CrystalAfcSectionExist( char *filename )
  914. {
  915.     bool ok = m_rf_crystal_afc_ptr->CrystalAfcSectionExist(filename);
  916.     if( !ok )  return false;
  917.     return true;
  918. }
  919. //---------------------------------------------------------------------------
  920. bool  CUPDATEPARAMETER::REQ_Read_Crystal_AFC_From_File( char *filename )
  921. {
  922.     bool ok = m_rf_afc_ptr->REQ_Read_From_File(filename);
  923.     if( !ok )  return false;
  924.     ok = m_rf_crystal_afc_ptr->REQ_Read_CAPID_From_File(filename);
  925.     if( !ok )  return false;
  926.     return true;
  927. }
  928. //---------------------------------------------------------------------------
  929. bool  CUPDATEPARAMETER::REQ_Write_Crystal_AFC_To_File( char *filename )
  930. {
  931.     bool ok = m_rf_afc_ptr->REQ_Write_To_File(filename);
  932.     if( !ok )  return  false;
  933.     ok = m_rf_crystal_afc_ptr->REQ_Write_CAPID_To_File(filename);
  934.     if( !ok )  return  false;
  935.     return true;
  936. }
  937. //===========================================================================
  938. bool  CUPDATEPARAMETER::AnyIP2SectionExist( char *filename )
  939. {
  940.     bool ok = m_rf_ip2_ptr->AnyIP2SectionExist(filename);
  941.     if( !ok )  return false;
  942.     return true;
  943. }
  944. //----------------------------------------------------------------------------
  945. bool  CUPDATEPARAMETER::REQ_Read_IP2_From_File( char *filename, unsigned int rfmod_id )
  946. {
  947.     bool ok = m_rf_ip2_ptr->REQ_Read_IP2Reg_From_File(filename, rfmod_id );
  948.     if( !ok )  return false;
  949.     return true;
  950. }
  951. //---------------------------------------------------------------------------
  952. bool  CUPDATEPARAMETER::REQ_Write_IP2_To_File( char *filename,  unsigned int rfmod_id  )
  953. {
  954.     bool ok = m_rf_ip2_ptr->REQ_Write_IP2Reg_To_File( filename, rfmod_id );
  955.     if( !ok )  return  false;
  956.     return true;
  957. }
  958. //===========================================================================
  959. bool  CUPDATEPARAMETER::TxIqSectionExist( char *filename )
  960. {
  961.     bool ok = m_rf_txiq_ptr->TxIqSectionExist(filename);
  962.     if( !ok )  return false;
  963.     return true;
  964. }
  965. //----------------------------------------------------------------------------
  966. bool  CUPDATEPARAMETER::REQ_Read_TxIq_From_File( char *filename, unsigned int  rfmod_id, E_BBTXCFG_VER_T bbtxcfg_ver)
  967. {
  968.     bool ok = m_rf_txiq_ptr->REQ_Read_From_File(filename, rfmod_id, bbtxcfg_ver);
  969.     return ok;
  970. }
  971. //---------------------------------------------------------------------------
  972. bool CUPDATEPARAMETER::REQ_Write_TxIq_To_File(char *filename, unsigned int rfmod_id, E_BBTXCFG_VER_T bbtxcfg_ver)
  973. {
  974.     bool ok = m_rf_txiq_ptr->REQ_Write_To_File(filename, rfmod_id, bbtxcfg_ver);
  975.     return ok;
  976. }
  977. //===========================================================================
  978. bool  CUPDATEPARAMETER::AnyGmskApcSectionExist( char *filename )
  979. {
  980.     bool ok = m_rf_apc_ptr->AnyApcSectionExist(filename);
  981.     if( !ok )  return false;
  982.     return true;
  983. }
  984. //---------------------------------------------------------------------------
  985. bool  CUPDATEPARAMETER::REQ_Read_GMSK_APC_From_File(char *filename, unsigned int rf_id, bool b_tado_support)
  986. {
  987.     bool ok = m_rf_apc_ptr->REQ_Read_APC_From_File(filename, rf_id, b_tado_support);
  988.     if( !ok )  return  false;
  989.     return true;
  990. }
  991. //---------------------------------------------------------------------------
  992. bool  CUPDATEPARAMETER::REQ_Write_GMSK_APC_To_File(char *filename, unsigned int rf_id, bool b_tado_support)
  993. {
  994.     bool ok = m_rf_apc_ptr->REQ_Write_APC_To_File(filename, rf_id, b_tado_support);
  995.     if( !ok )  return false;
  996.     return true;
  997. }
  998. //===========================================================================
  999. bool  CUPDATEPARAMETER::AnyEpskApcSectionExist( char *filename )
  1000. {
  1001.     bool ok = m_rf_epsk_apc_ptr->AnyApcSectionExist(filename);
  1002.     if( !ok )  return false;
  1003.     return true;
  1004. }
  1005. //---------------------------------------------------------------------------
  1006. bool  CUPDATEPARAMETER::REQ_Read_EPSK_APC_From_File(char *filename, unsigned int rf_id)
  1007. {
  1008.     bool ok = m_rf_epsk_apc_ptr->REQ_Read_APC_From_File(filename, rf_id);
  1009.     if( !ok )  return  false;
  1010.     return true;
  1011. }
  1012. //---------------------------------------------------------------------------
  1013. bool  CUPDATEPARAMETER::REQ_Write_EPSK_APC_To_File(char *filename, unsigned int rf_id)
  1014. {
  1015.     bool ok = m_rf_epsk_apc_ptr->REQ_Write_APC_To_File(filename, rf_id);
  1016.     if (! ok)  return false;
  1017.     return true;
  1018. }
  1019. //===========================================================================
  1020. bool  CUPDATEPARAMETER::AdcSectionExist( char *filename )
  1021. {
  1022.     bool ok = m_bb_adc_ptr->AdcSectionExist(filename);
  1023.     if( !ok )  return false;
  1024.     return true;
  1025. }
  1026. //---------------------------------------------------------------------------
  1027. bool  CUPDATEPARAMETER::REQ_Read_ADC_From_File( char *filename )
  1028. {
  1029.     bool ok = m_bb_adc_ptr->REQ_Read_From_File(filename);
  1030.     if( !ok )  return false;
  1031.     return true;
  1032. }
  1033. //---------------------------------------------------------------------------
  1034. bool  CUPDATEPARAMETER::REQ_Write_ADC_To_File( char *filename )
  1035. {
  1036.     bool ok = m_bb_adc_ptr->REQ_Write_To_File(filename);
  1037.     if( !ok )  return false;
  1038.     return true;
  1039. }
  1040. //===========================================================================
  1041. // WiFi TX DC offset
  1042. bool  CUPDATEPARAMETER::WiFiTxDcOffsetSectionExist( char *filename )
  1043. {
  1044.     bool ok = m_wifi_txdc_ptr->WiFiTxDcOffsetSectionExist(filename);
  1045.     if( !ok )  return false;
  1046.     return true;
  1047. }
  1048. //---------------------------------------------------------------------------
  1049. bool  CUPDATEPARAMETER::REQ_Read_WiFiTxDcOffset_From_File( char *filename )
  1050. {
  1051.     bool ok = m_wifi_txdc_ptr->REQ_Read_From_File(filename);
  1052.     if( !ok )  return false;
  1053.     return true;
  1054. }
  1055. //---------------------------------------------------------------------------
  1056. bool  CUPDATEPARAMETER::REQ_Write_WiFiTxDcOffset_To_File( char *filename )
  1057. {
  1058.     bool ok = m_wifi_txdc_ptr->REQ_Write_To_File(filename);
  1059.     if( !ok )  return false;
  1060.     return true;
  1061. }
  1062. //===========================================================================
  1063. // WiFi TX power
  1064. bool  CUPDATEPARAMETER::WiFiTxPowerSectionExist( char *filename )
  1065. {
  1066.     bool ok = m_wifi_apc_ptr->WiFiTxPower2400MSectionExist(filename);
  1067.     if( !ok )  return false;
  1068.     return true;
  1069. }
  1070. //---------------------------------------------------------------------------
  1071. bool  CUPDATEPARAMETER::REQ_Read_WiFiTxPower_From_File( char *filename )
  1072. {
  1073.     bool ok = m_wifi_apc_ptr->REQ_Read_TxPower2400M_From_File(filename);
  1074.     if( !ok )  return false;
  1075.     return true;
  1076. }
  1077. //---------------------------------------------------------------------------
  1078. bool  CUPDATEPARAMETER::REQ_Write_WiFiTxPower_To_File( char *filename )
  1079. {
  1080.     bool ok = m_wifi_apc_ptr->REQ_Write_TxPower2400M_To_File(filename);
  1081.     if( !ok )  return false;
  1082.     return true;
  1083. }
  1084. //===========================================================================
  1085. // WiFi ALC
  1086. bool CUPDATEPARAMETER::WiFiAlcSectionExist(char *filename)
  1087. {
  1088.     if (!m_wifi_alc_ptr->WiFiAlc2400MSectionExist(filename))
  1089.     {
  1090.         return false;
  1091.     }
  1092.     return true;
  1093. }
  1094. //---------------------------------------------------------------------------
  1095. bool CUPDATEPARAMETER::REQ_Read_WiFiAlc_From_File(char *filename)
  1096. {
  1097.     if (!m_wifi_alc_ptr->REQ_Read_From_File(filename))
  1098.     {
  1099.         return false;
  1100.     }
  1101.     return true;
  1102. }
  1103. //---------------------------------------------------------------------------
  1104. bool CUPDATEPARAMETER::REQ_Write_WiFiAlc_To_File(char *filename)
  1105. {
  1106.     if (!m_wifi_alc_ptr->REQ_Write_To_File(filename))
  1107.     {
  1108.         return false;
  1109.     }
  1110.     return true;
  1111. }
  1112. //===========================================================================
  1113. // BT CAP ID
  1114. bool CUPDATEPARAMETER::BtCapIdSectionExist(char *filename)
  1115. {
  1116.     if (!m_bt_info6601_ptr->BtCapIdSectionExist(filename))
  1117.     {
  1118.         return false;
  1119.     }
  1120.     return true;
  1121. }
  1122. //---------------------------------------------------------------------------
  1123. bool CUPDATEPARAMETER::REQ_Read_BtCapId_From_File(char *filename)
  1124. {
  1125.     if (!m_bt_info6601_ptr->REQ_Read_From_File(filename))
  1126.     {
  1127.         return false;
  1128.     }
  1129.     return true;
  1130. }
  1131. //---------------------------------------------------------------------------
  1132. bool CUPDATEPARAMETER::REQ_Write_BtCapId_To_File(char *filename)
  1133. {
  1134.     if (!m_bt_info6601_ptr->REQ_Write_To_File(filename))
  1135.     {
  1136.         return false;
  1137.     }
  1138.     return true;
  1139. }
  1140. //===========================================================================
  1141. bool  CUPDATEPARAMETER::ImeiSectionExist( char *filename )
  1142. {
  1143.     bool ok = MF_imei_ptr->ImeiSectionExist(filename);
  1144.     if( !ok )  return false;
  1145.     return true;
  1146. }
  1147. //---------------------------------------------------------------------------
  1148. bool  CUPDATEPARAMETER::REQ_Read_IMEI_From_File( char *filename )
  1149. {
  1150.     bool ok = MF_imei_ptr->REQ_Read_From_File(filename);
  1151.     if( !ok )  return false;
  1152.     return true;
  1153. }
  1154. //---------------------------------------------------------------------------
  1155. bool  CUPDATEPARAMETER::REQ_Write_IMEI_To_File( char *filename )
  1156. {
  1157.     bool ok = MF_imei_ptr->REQ_Write_To_File(filename);
  1158.     if( !ok )  return false;
  1159.     return true;
  1160. }
  1161. //===========================================================================
  1162. bool  CUPDATEPARAMETER::BarcodeSectionExist( char *filename )
  1163. {
  1164.     bool ok = m_barcode_ptr->BarcodeSectionExist(filename);
  1165.     if( !ok )  return false;
  1166.     return true;
  1167. }
  1168. //---------------------------------------------------------------------------
  1169. bool  CUPDATEPARAMETER::REQ_Read_Barcode_From_File( char *filename )
  1170. {
  1171.     bool ok = m_barcode_ptr->REQ_Read_From_File(filename);
  1172.     if( !ok )  return false;
  1173.     return true;
  1174. }
  1175. //---------------------------------------------------------------------------
  1176. bool  CUPDATEPARAMETER::REQ_Write_Barcode_To_File( char *filename )
  1177. {
  1178.     bool ok = m_barcode_ptr->REQ_Write_To_File(filename);
  1179.     if( !ok )  return false;
  1180.     return true;
  1181. }
  1182. //==============================================================================
  1183. //===========================================================================
  1184. /////////////////////////////       Query         ///////////////////////////
  1185. //===========================================================================
  1186. bool CUPDATEPARAMETER::REQ_Query_ALC_Suppport_Start(void)
  1187. {
  1188.     bool support = m_wifi_alc_ptr->REQ_Query_ALC_Suppport_Start();
  1189.     return support;
  1190. }
  1191. //===========================================================================
  1192. ////////////////////////////  Global information  ///////////////////////////
  1193. //===========================================================================
  1194. E_METAAPP_RESULT_T CUPDATEPARAMETER::Get_ConfirmState(void)
  1195. {
  1196.     return  m_eConfirmState;
  1197. }
  1198. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1199. //IMEISV_struct_T  CUPDATEPARAMETER::Get_IMEISV( void )
  1200. //{
  1201. //    return MF_imei_ptr->IMEISV;
  1202. //}
  1203. //---------------------------------------------------------------------------
  1204. //void  CUPDATEPARAMETER::Set_IMEISV( IMEISV_struct_T imeisv)
  1205. //{
  1206. //    MF_imei_ptr->IMEISV = imeisv;
  1207. //}
  1208. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1209. //char*  CUPDATEPARAMETER::Get_IMEI( void )
  1210. //{
  1211. //    return MF_imei_ptr->IMEISV.imei;
  1212. //}
  1213. //---------------------------------------------------------------------------
  1214. //void  CUPDATEPARAMETER::Set_IMEI( char* imei )
  1215. //{
  1216. //    strcpy( MF_imei_ptr->IMEISV.imei, imei );
  1217. //}