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

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) 2001
  8. *
  9. *****************************************************************************/
  10. /*****************************************************************************
  11.  *
  12.  * Filename:
  13.  * ---------
  14.  *   access_adc.cpp
  15.  *
  16.  * Project:
  17.  * --------
  18.  *   Maui META APP
  19.  *
  20.  * Description:
  21.  * ------------
  22.  *   ADC calibration export to Microsoft Access source
  23.  *
  24.  * Author:
  25.  * -------
  26.  *  Andy Ueng (mtk00490)
  27.  *
  28.  *============================================================================
  29.  *             HISTORY
  30.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  31.  *------------------------------------------------------------------------------
  32.  * $Revision$
  33.  * $Modtime$
  34.  * $Log$
  35.  * 
  36.  *------------------------------------------------------------------------------
  37.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  38.  *============================================================================
  39.  ****************************************************************************/
  40. #include <IniFiles.hpp>
  41. #pragma hdrstop
  42. #ifndef  _ACCESS_ADC_H_
  43. #include "access_adc.h"
  44. #endif
  45. #ifndef  _BB_ADC_H_
  46. #include "bb_adc.h"
  47. #endif
  48. //===========================================================================
  49. //===========================================================================
  50. CACCESSADC::CACCESSADC( void )
  51. {
  52. }
  53. //---------------------------------------------------------------------------
  54. CACCESSADC::~CACCESSADC( )
  55. {
  56. }
  57. //------------------------------------------------------------------------------
  58. void CACCESSADC::SetTabNameToADC_PARAMETERS( TADOTable *p_ADOTab )
  59. {
  60.     p_ADOTab->Active = false;
  61.     p_ADOTab->TableName = "ADC_PARAMETERS";
  62.     p_ADOTab->Active = true;
  63. }
  64. //----------------------------------------------------------------------------
  65. void CACCESSADC::PostRecordToAccess( TADOTable *p_ADOTab )
  66. {
  67.     p_ADOTab->Post();
  68. }
  69. //------------------------------------------------------------------------------
  70. bool CACCESSADC::AddFieldToAccess( TADOTable *p_ADOTab, AnsiString as_fieldname, AnsiString as_fieldvalue )
  71. {
  72.     try
  73.     {
  74.         p_ADOTab->FieldByName(as_fieldname)->AsString = as_fieldvalue;
  75.     }
  76.     catch(...)
  77.     {
  78.         AnsiString as_msg = "add " + as_fieldname + " fields error";
  79.         throw EDatabaseError(as_msg);
  80.         return false;
  81.     }
  82.     return true;
  83. }
  84. //------------------------------------------------------------------------------
  85. bool CACCESSADC::AddBarcodeToAccess( TADOTable *p_ADOTab, AnsiString as_ID )
  86. {
  87.     if(! AddFieldToAccess( p_ADOTab, "BARCODE", as_ID ) )  return false;
  88.     return true;
  89. }
  90. //------------------------------------------------------------------------------
  91. bool CACCESSADC::AddPcToAccess( TADOTable *p_ADOTab )
  92. {
  93.     char hostname[256];
  94.     unsigned long len=256;
  95.     GetComputerName( hostname, &len );
  96.     if(! AddFieldToAccess( p_ADOTab, "PC", hostname ) )  return false;
  97.     return true;
  98. }
  99. //------------------------------------------------------------------------------
  100. bool CACCESSADC::AddDateToAccess( TADOTable *p_ADOTab )
  101. {
  102.     if(! AddFieldToAccess( p_ADOTab, "DATE", DateToStr(Date()) ) )  return false;
  103.     return true;
  104. }
  105. //------------------------------------------------------------------------------
  106. bool CACCESSADC::AddTimeToAccess( TADOTable *p_ADOTab )
  107. {
  108.     if(! AddFieldToAccess( p_ADOTab, "TIME", CurrentTimeStr() ) )  return false;
  109.     return true;
  110. }
  111. //------------------------------------------------------------------------------
  112. bool CACCESSADC::AddADCParameterToAccess( TADOTable *p_ADOTab, bmt_adcdata *p_AdcData,
  113.                                           int i_BATTERY_CHANNEL, int i_CHARGER_CHANNEL )
  114. {
  115.     try
  116.     {
  117.         p_ADOTab->FieldByName("BAT_CH_SLOPE")->AsString = p_AdcData->ADCSlope[i_BATTERY_CHANNEL];
  118.         p_ADOTab->FieldByName("BAT_CH_OFFSET")->AsString = p_AdcData->ADCOffset[i_BATTERY_CHANNEL];
  119.         p_ADOTab->FieldByName("CHAR_CH_SLOPE")->AsString = p_AdcData->ADCSlope[i_CHARGER_CHANNEL];
  120.         p_ADOTab->FieldByName("CHAR_CH_OFFSET")->AsString = p_AdcData->ADCOffset[i_CHARGER_CHANNEL];
  121.     }
  122.     catch(...)
  123.     {
  124.         AnsiString as_msg = "add ADC fields error";
  125.         throw EDatabaseError(as_msg);
  126.         return false;
  127.     }
  128.     return true;
  129. }