Device.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. //#pragma once
  2. #ifndef _DEVICE_H_
  3. #define _DEVICE_H_
  4. #include <afxtempl.h>
  5. #include "BaseVar.h"
  6. class CDevice :public CObject
  7. {
  8. public:
  9. CDevice(void);
  10. ~CDevice(void);
  11. CDevice(const CDevice & other);
  12. CDevice & operator =(const CDevice & other);
  13. public:
  14. int m_iID; //-- 设备的ID
  15. CString m_strUid; // -- 设备UID
  16. int m_iPort; //-- 设备串口号
  17. CString m_strDeviceName; // -- 设备名称
  18. int m_iDeviceType; //-- 设备类型
  19. int m_iBaudrate; // -- 波特率
  20. int m_iDatabit; //-- 数据位
  21. int m_iStopbit; // -- 停止位
  22. int m_iParitybit; // -- 奇偶校验位
  23. int m_iRsmode; // -- 串口通信方式,0 - RS232;1 - RS422; 2 - RS485
  24. CString m_strIp; // -- ip地址号
  25. int m_iIpport; //-- ip端口号
  26. int m_iCommmode ; // -- 通信的方式,有 0 - 串口方式;...
  27. int m_iDeviceflag; //-- 该设备是否采集器 ;...
  28. int m_iDevideaddr; // -- 设备地址
  29. int m_iTimeout; // -- 通讯超时
  30. int m_iIsuse; //-- 是否启用设备1:启用,0:禁用
  31. CString m_strProtocoldllname; //-- 协议DLL名称
  32. BYTE m_bySpecialdevice; //-- Modbus Rtu;Modbus Ascii;Modbus Tcp;Snmp;RS232;
  33. //int m_iVarId;
  34. //===============================================
  35. // 新增成员变量 in 2010-04-07
  36. CString m_strIniName; // 配置文件名称
  37. CString m_strReserved1; // 预留1
  38. CString m_strReserved2; // 预留2
  39. CString m_strReserved3; // 预留3
  40. CString m_strReserved4; // 预留4
  41. CString m_strReserved5; // 预留5
  42. CString m_strReserved6; // 预留6
  43. CString m_strReserved7; // 预留7
  44. CString m_strReserved8; // 预留8
  45. CString m_strReserved9; // 预留9
  46. CString m_strReserved10; // 预留10
  47. int m_nReserved1; // 预留1
  48. int m_nReserved2; // 预留2
  49. int m_nReserved3; // 预留3
  50. int m_nReserved4; // 预留4
  51. int m_nReserved5; // 预留5
  52. int m_nReserved6; // 预留6
  53. int m_nReserved7; // 预留7
  54. int m_nReserved8; // 预留8
  55. int m_nReserved9; // 预留9
  56. int m_nReserved10; // 预留10
  57. bool m_bReserved1; // 预留1
  58. bool m_bReserved2; // 预留2
  59. bool m_bReserved3; // 预留3
  60. bool m_bReserved4; // 预留4
  61. bool m_bReserved5; // 预留5
  62. bool m_bReserved6; // 预留6
  63. bool m_bReserved7; // 预留7
  64. bool m_bReserved8; // 预留8
  65. bool m_bReserved9; // 预留9
  66. bool m_bReserved10; // 预留10
  67. //
  68. DWORD m_dwOnlineTick; //设备在线Tick
  69. BOOL m_bCommStatus; // 串口打开状态,0:关闭,1:打开
  70. CVarArrary m_Vars;
  71. HANDLE m_hSemNet;
  72. };
  73. typedef CTypedPtrArray<CObArray, CDevice*> CDeviceArray;
  74. extern int FindDevice(CString strDevUid);
  75. extern BOOL FindVar(CString strDevUid, int nVarID, int &nDeviceIndex, int &nVarIndex);
  76. extern BOOL FindVar(CString strDevUid, CString strVarName, int &nDeviceIndex, int &nVarIndex);
  77. #endif