www.pudn.com > CirMMI.rar > Common.h
#include "mysplit.h"
#include ".\share\volumcontrol.h"
#include ".\share\mutecontrol.h"
#include "mmsystem.h"
//JUST FOR identify
#define IN
#define OUT
#ifndef _COMMON_H_
#define _COMMON_H_
#define MODE_GSMR 0
#define MODE_450M 1
#define MODE_BOTH 2
#define UI_GSMR 1
#define UI_450M 2
#define SECONDARY_STATE 0 //从
#define PRIMARY_STATE 1 //主
#define TRAIN_ID_MAXLEN 4 //机车号位数
#define TRAIN_RUNNIGN_MAXLEN 7 //车次号位数
#define RUNNINGROAD_MAX 20
typedef struct __Global_Common_Variable //全局公共变量封装
{
typedef DWORD COLORREF;
DWORD dwInitCount; //程序自从启动后计数
INT iWorkMode; //模式
INT iWorkModeNum; //模式号
INT iWitchUI; //双模时
TCHAR CurRunningRoad[RUNNINGROAD_MAX];
TCHAR SelRunningRoad[RUNNINGROAD_MAX];
INT iMMIState;
INT iMMIport;
INT iNetWorkState;
INT iSignalValue;
INT iGpsValidate; //GPS是否有效
CHAR TrainID[TRAIN_ID_MAXLEN]; //机车号
CHAR TrainIDType[TRAIN_ID_MAXLEN];
CHAR TrainRunning[TRAIN_RUNNIGN_MAXLEN]; //车次号
BOOL bEFNLogin;
BOOL bTFNLogin;
BOOL bRepairState; //本补
COLORREF crMainBk;
COLORREF crMainText;
COLORREF crSecondText;
COLORREF crBorder;
COLORREF crButtonBrightBk;
COLORREF crButtonDarkBk;
COLORREF crButtonBrightText;
COLORREF crButtonDarkText;
CBrush *pBrButtonBrightBk;
CBrush *pBrButtonDarkBk;
CBrush *pBrListBox;
CBrush *pBrFrameBorder;
CPen *pPenButtonBrightText;
CPen *pPenButtonDardText;
//定义字体
CFont *pFontItalicTitle;
CFont *pFontTitle;
CFont *pFontButton;
CFont *pFontTrainTail;
CFont *pFontList;
CFont *pFontRunning;
CFont *pFontPoint;
CString strRemoteIP;
UINT nRemotePort;
CString strUserPwd;
CString strSvrName;
BOOL bPlayAudio;
BOOL b450MCheckingTalk;
BOOL SetTrainID(const CHAR *data,INT iLen)
{
if(sizeof(TrainID) ==iLen)
{
memcpy(TrainID,data,iLen);
return TRUE;
}else //03-18
{
for(int i=0;i4)
{
for(int i=4;i0 && pdata)
{
memcpy(m_data,pdata,min(m_datalen,sizeof m_data));
}
}
RegistrationItem(){memset(this,0,sizeof *this);}
};
class CRegistration
{
CArraym_RegAr;
public:
INT GetSize(){return m_RegAr.GetSize();}
/*const*/ RegistrationItem& ElementAt(int index)
{
return m_RegAr.ElementAt(index);
}
INT UnRegAll(){m_RegAr.RemoveAll();}
BOOL Reg(HWND hwnd,UINT msg,BYTE op,BYTE cmd,BYTE datalen=0, BYTE *pdata=NULL)
{
for(int i=0;i0 && pdata)
{
if(!memcmp(r.m_data,pdata,min(datalen,r.m_datalen)))
return FALSE;
}
}
}
m_RegAr.Add(RegistrationItem(hwnd,msg,op,cmd,datalen,pdata));
return TRUE;
}
BOOL UnReg(BYTE op,BYTE cmd)
{
for(int i=0;i>4)*10)+(x&0x0f))
UINT GetValueByStr(const CString& str);
BOOL TranTRNtoTFN(const CString& strTRN,CString& strTFN);
BOOL TranTFNtoTRN(const CString& strTFN,CString& strTRN);
BOOL IsCallByFN(CString &strUnKown); //是不是按功能号呼叫
BOOL translateByFn(const CString &strFn,CString &strDis); //把已知的功能号翻译成身份
CString GetTrainChiefTFN();
CString TranByGid(const CString &strGid); //gid->dis name
CString TranByOtherNum(const CString &strOther);
BOOL LoadSetting();
#endif //_COMMON_H_