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

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.  *   form_CFGcommon.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   Maui META APP
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *  common CFG file header
  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. #ifndef form_CFGCommonH
  67. #define form_CFGCommonH
  68. //---------------------------------------------------------------------------
  69. #include <Classes.hpp>
  70. #include <Controls.hpp>
  71. #include <StdCtrls.hpp>
  72. #include <Forms.hpp>
  73. #include <ExtCtrls.hpp>
  74. #include <ComCtrls.hpp>
  75. #include <Dialogs.hpp>
  76. #include "META_factory_cfg.h"
  77. #define  AGILENT_8960_CL     0
  78. #define  CMU_200_INPUT_CL    1
  79. #define  CMU_200_OUTPUT_CL   2
  80. #define  FREQUENCY_BANK_GSM_400   0x01
  81. #define  FREQUENCY_BANK_GSM_850   0x02
  82. #define  FREQUENCY_BANK_GSM_900   0x04
  83. #define  FREQUENCY_BANK_DCS_1800  0x08
  84. #define  FREQUENCY_BANK_PCS_1900  0x10
  85.    
  86. //---------------------------------------------------------------------------
  87. class TfrmCFGCommon : public TForm
  88. {
  89. __published: // IDE-managed Components
  90.         TPanel *Panel3;
  91.         TPanel *Panel1;
  92.         TLabel *Label1;
  93.         TEdit *edt8960GPIBAddress;
  94.         TLabel *Label2;
  95.         TEdit *edtTimeOut8960;
  96.         TLabel *Label3;
  97.         TEdit *edtGSM400CableLoss;
  98.         TLabel *Label4;
  99.         TEdit *edtGSM850CableLoss;
  100.         TLabel *Label5;
  101.         TEdit *edtGSM900CableLoss;
  102.         TLabel *Label6;
  103.         TEdit *edtDCS1800CableLoss;
  104.         TLabel *Label7;
  105.         TEdit *edtPCS1900CableLoss;
  106.         TPanel *Panel2;
  107.         TPanel *Panel4;
  108.         TLabel *Label8;
  109.         TEdit *edtCMU200GPIBAddress;
  110.         TLabel *Label9;
  111.         TEdit *edtTimeOutCMU200;
  112.         TLabel *Label10;
  113.         TEdit *edtGSM400InputCableLoss;
  114.         TLabel *Label11;
  115.         TEdit *edtGSM850InputCableLoss;
  116.         TLabel *Label12;
  117.         TEdit *edtGSM900InputCableLoss;
  118.         TLabel *Label13;
  119.         TEdit *edtDCS1800InputCableLoss;
  120.         TLabel *Label14;
  121.         TEdit *edtPCS1900InputCableLoss;
  122.         TLabel *Label15;
  123.         TEdit *edtGSM400OutputCableLoss;
  124.         TLabel *Label16;
  125.         TEdit *edtGSM850OutputCableLoss;
  126.         TLabel *Label17;
  127.         TEdit *edtGSM900OutputCableLoss;
  128.         TLabel *Label18;
  129.         TEdit *edtDCS1800OutputCableLoss;
  130.         TLabel *Label19;
  131.         TEdit *edtPCS1900OutputCableLoss;
  132.         TPanel *Panel5;
  133.         TPanel *Panel6;
  134.         TCheckBox *cbGSM400;
  135.         TCheckBox *cbGSM850;
  136.         TCheckBox *cbGSM900;
  137.         TCheckBox *cbDCS1800;
  138.         TCheckBox *cbPCS1900;
  139.         TPanel *Panel7;
  140.         TPanel *Panel8;
  141.         TLabel *Label20;
  142.         TEdit *edtArfcn_C0_GSM400;
  143.         TLabel *Label21;
  144.         TEdit *edtArfcn_C0_GSM850;
  145.         TLabel *Label22;
  146.         TEdit *edtArfcn_C0_GSM;
  147.         TLabel *Label23;
  148.         TEdit *edtArfcn_C0_DCS;
  149.         TLabel *Label24;
  150.         TEdit *edtArfcn_C0_PCS;
  151.         TPanel *Panel9;
  152.         TPanel *Panel10;
  153.         TLabel *Label25;
  154.         TEdit *edtP_DL;
  155.         TButton *btnLoadFromCFGFile;
  156.         TButton *btnSaveToCFGFile;
  157.         TOpenDialog *OpenDlg;
  158.         TSaveDialog *SaveDlg;
  159.         TTimer *HintTimer;
  160.         TStaticText *lblHint;
  161.         TStatusBar *sbCFGCommon;
  162.         void __fastcall edtGPIBAddressCheck(TObject *Sender);
  163.         void __fastcall edtTimeOutCheck(TObject *Sender);
  164.         void __fastcall edtCableLossCheck(TObject *Sender);
  165.         void __fastcall edtInputCableLossCheck(TObject *Sender);
  166.         void __fastcall edtOutputCableLossCheck(TObject *Sender);
  167.         void __fastcall edtARFCNCheck(TObject *Sender);
  168.         void __fastcall edtP_DLCheck(TObject *Sender);
  169.         void __fastcall HintTimerTimer(TObject *Sender);
  170.         void __fastcall btnSaveToCFGFileClick(TObject *Sender);
  171.         void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
  172.         void __fastcall btnLoadFromCFGFileClick(TObject *Sender);
  173.         void __fastcall FormShow(TObject *Sender);
  174. private: // User declarations
  175.         TMETA_factory_cfg *cfg;
  176.         int i_8960_GPIB_Addr;
  177.         int i_CMU200_GPIB_Addr;
  178.         int i_GPIB_Addr[2];
  179.         int i_8960_TimeOut;
  180.         int i_CMU200_TimeOut;
  181.         int i_TimeOut[2];
  182.         // dB cable loss
  183.         double  d_GSM400_CL, d_GSM850_CL, d_GSM900_CL, d_DCS1800_CL, d_PCS1900_CL;
  184.         double  d_CMU200_INPUT_GSM400_CL, d_CMU200_INPUT_GSM850_CL, d_CMU200_INPUT_GSM900_CL, d_CMU200_INPUT_DCS1800_CL, d_CMU200_INPUT_PCS1900_CL;
  185.         double  d_CMU200_OUTPUT_GSM400_CL, d_CMU200_OUTPUT_GSM850_CL, d_CMU200_OUTPUT_GSM900_CL, d_CMU200_OUTPUT_DCS1800_CL, d_CMU200_OUTPUT_PCS1900_CL;
  186.         double  d_CL[3][5];
  187.         // Freq Bank
  188.         int i_FreqBank;
  189.       
  190.         // C0 for each Bank
  191.         short m_sARFCN_C0_GSM400;
  192.         short m_sARFCN_C0_GSM850;
  193.         short m_sARFCN_C0_GSM;
  194.         short m_sARFCN_C0_DCS;
  195.         short m_sARFCN_C0_PCS;
  196.         short m_sARFCN_C0[5];
  197.         // Downlink power
  198.         double d_P_DL;
  199. public: // User declarations
  200.         __fastcall TfrmCFGCommon(TComponent* Owner);
  201.         void ShowHintLabel( TControl *sender, char* hint );
  202.         bool CheckFields( void );
  203.         void setFrequencyBank( void );
  204.         void DisplayFreqBank( int i_FreqBank );
  205. };
  206. //---------------------------------------------------------------------------
  207. extern PACKAGE TfrmCFGCommon *frmCFGCommon;
  208. //---------------------------------------------------------------------------
  209. #endif