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

MTK

开发平台:

C++ Builder

  1. #ifndef _BT_MT_H_
  2. #define _BT_MT_H_
  3. //=============================================================================
  4. #include <stdio.h>
  5. #include <vcl.h>
  6. #ifndef _BT_MT_PARSE_H_
  7. #include "bt_mt_parse.h"
  8. #endif
  9. #ifndef _BT_MT_RS232_H_
  10. #include "bt_mt_rs232.h"
  11. #endif
  12. #ifndef _BT_MT_META_H_
  13. #include "bt_mt_meta.h"
  14. #endif
  15. //-----------------------------------------------
  16. #define  TIMERTICK_UNITE   10
  17. //-----------------------------------------------
  18. #define  ERR_NONE          0
  19. #define  ERR_PARSESTR      1
  20. #define  ERR_HCIOPEN       2
  21. #define  ERR_TX            3
  22. #define  ERR_RXCOMP        4
  23. #define  ERR_TIMEOUT       5
  24. #define  ERR_META          6
  25. #define  ERR_FILEEND      -1
  26. //-----------------------------------------------
  27. #define  SRC_ORGFILE       0
  28. #define  SRC_TMPFILE       1
  29. //-----------------------------------------------
  30. #define  PROCCOUNT         64
  31. #define  PROCSTRSIZE       64
  32. #define  PATHSTRSIZE       1024
  33. #define  LOGSTRSIZE        (8192*2)
  34. //-----------------------------------------------
  35. // module test
  36. #define  BT_MT_TESTCASE_NUM  5
  37. #define  BT_MT_MAX_PROC_NUM 22
  38. class CBTMT
  39. {
  40. private:
  41.    E_BT_TRANS_T m_eBtTrans[2];
  42.    int m_iComPort;
  43.    CBTMTPARSE  Parse;
  44.    CBTMTRS232  m_cHciUart;
  45.    CBTMTMETA  m_cHciMETA;
  46.    //CBTMTRS232  *m_pcHci;
  47. //public:
  48.    char  m_cTitle[PROCSTRSIZE];
  49.    AnsiString  m_asProcName[PROCCOUNT];
  50.    int   m_iProcCount;
  51.    int   m_iCurProc;
  52.    int   m_iLastProc;
  53.    char  m_cProcFail[PROCCOUNT+1];
  54.    int   ProcFailCount;
  55.    int   m_iFailCount;
  56.    int   IsWaitProc;
  57.    long  WaitProcPos;
  58.    bool  IsForceEnd;
  59.    bool  HasFailProc;
  60. //public:
  61.    unsigned long Ticks;
  62.    int           WaitRX;
  63.    int           WaitTime;
  64.    int           WaitCounter;
  65.    long          TimeoutTime;
  66.    long          TimeoutCounter;
  67.    long          RUN_Time;
  68. //public:
  69.    int       SelSource;
  70.    FILE     *TmpFs;
  71. //public:
  72.    char       ScriptFilename[ PATHSTRSIZE ];
  73.    FILE      *ScrFs;
  74.    char       LogPath[ PATHSTRSIZE ];
  75.    FILE      *LogFs;
  76.    char       m_cLogString[LOGSTRSIZE];
  77.    char      *LogStrPtr;
  78.    bool       LogEnable;
  79.    int        m_iErrorCode;
  80.    //E_BT_DEVICE_T m_eBtDevice[MAX_EVENT_NUM];
  81.    int m_iEventNum;
  82.    int m_iEventIdx;
  83.    int m_iAutoEventNum;
  84.    int m_iAutoEventIdx;
  85. public:
  86.    CBTMT(void);
  87.   ~CBTMT();
  88.    bool OpenScript(char *filename);
  89.    int CloseScript(void);
  90.    int   ExecuteNextScript(void);
  91.    int   ProcessResult( int err_code );
  92.    int   CountProcResult(void);
  93.    int   GeneratePatchScript( int hci_no, char* patchfile );
  94.    int   GenerateChangeBaudrateScript( int hci_no, int baudrate );  // baudrate = 1(115K), 2(230K), 4(460K), 9(921K), 3(3M)
  95.    int   GenerateKyleScript( int arg1, int arg2, int arg3 );
  96.    int  TimerTick( void );
  97.    int  Reset( void );
  98.    int       CS_feof(FILE *fs);
  99.    char     *CS_fgets(char *s, int n, FILE *fs);
  100.    long int  CS_ftell(FILE *fs);
  101.    int       CS_fseek(FILE *fs, long offset, int whence);
  102.    void Set_ComPort(int com_port);
  103.    void Set_BTTrans(int idx, E_BT_TRANS_T bt_trans);
  104.    int Get_LogStringLen(void);
  105.    char Get_LogString(int idx);
  106.    void Set_LogString(int idx, char c);
  107.    char* Get_LogString(void);
  108.    int Get_LastProc(void);
  109.    void Set_LastProc(int proc);
  110.    int Get_CurProc(void);
  111.    void Set_CurProc(int proc);
  112.    int Get_ErrorCode(void);
  113.    void Set_ErrorCode(int err_code);
  114.    int Get_FailCount(void);
  115.    void Set_FailCount(int fail_count);
  116.    char* Get_Title(void);
  117.    int Get_ProcCount(void);
  118.    void Set_ProcCount(int proc_count);
  119.    char Get_ProcFail(int idx);
  120.    void Set_ProcFail(int idx, char proc_fail);
  121.    AnsiString Get_ProcName(int idx);
  122.    void Set_ProcName(int idx, AnsiString proc_name);
  123. };
  124. //=============================================================================
  125. #endif