AppGlobalF.h 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. //---------------------------------------------------------------------------
  2. #ifndef AppGlobalFH
  3. #define AppGlobalFH
  4. //---------------------------------------------------------------------------
  5. #include <vcl.h>
  6. #include <assert.h>
  7. #include <stdio.h>
  8. #include <inifiles.hpp>
  9. //---------------------------------------------------------------------------
  10. #include "ITSLogF.h"
  11. #include "ITSCommF.h"
  12. #include "SysGlobalF.h"
  13. #include "TVmsCtlrF.h"
  14. #include "TVmsImageF.h"
  15. #include "TCDSFormF.h"
  16. #include "TCDSFontF.h"
  17. #include "TVmsIfscF.h"
  18. #include "VitzroCommF.h"
  19. #include "VmsPasigProtocolF.h"
  20. //---------------------------------------------------------------------------
  21. /*
  22. ******************************************************************************
  23. * User Define
  24. ******************************************************************************
  25. */
  26. //---------------------------------------------------------------------------
  27. #define LINFO(args...) LogWrite(eLOG_INFO, ##args)
  28. #define LDATA(args...) LogWrite(eLOG_DATA, ##args)
  29. #define LERROR(args...) LogWrite(eLOG_ERROR, ##args)
  30. #define LWARN(args...) LogWrite(eLOG_WARNING, ##args)
  31. #define LDEBUG(args...) LogWrite(eLOG_DEBUG, ##args)
  32. #define LDETAIL(args...) LogWrite(eLOG_DETAIL, ##args)
  33. #define SINFO(args...) SysLogWrite(eLOG_INFO, ##args)
  34. #define SDATA(args...) SysLogWrite(eLOG_DATA, ##args)
  35. #define SERROR(args...) SysLogWrite(eLOG_ERROR, ##args)
  36. #define SWARN(args...) SysLogWrite(eLOG_WARNING, ##args)
  37. #define SDEBUG(args...) SysLogWrite(eLOG_DEBUG, ##args)
  38. #define SDETAIL(args...) SysLogWrite(eLOG_DETAIL, ##args)
  39. #define WM_THREAD_TERMINATE (WM_USER+0x92) /* Thread 종료 메시지 */
  40. #define WM_PROCESS_STATE (WM_USER+0xA4) /* 프로세스 상태 입력 */
  41. //---------------------------------------------------------------------------
  42. #define MAX_SENDER_SIZE 20
  43. typedef struct tagIpcLogMessage
  44. {
  45. int Kind;
  46. int Flag;
  47. int Len;
  48. TDateTime Tm;
  49. char Type;
  50. char Msg[MAX_LOG_BUFFER];
  51. void *Obj;
  52. } IPC_LOG_MESSAGE;
  53. typedef struct tagCommConfig
  54. {
  55. int nCenterPort; // center udp port
  56. int nListenPort; // vms listen port
  57. AnsiString sLocalDomain; // vms server domain
  58. int nClientPort; // vms controller connect port
  59. AnsiString sLoginUser; // vms controller login id
  60. AnsiString sLoginPswd; // vms controller login pswd
  61. int nConnectWait;
  62. int nCmdTimeOut;
  63. int nWatchDogTime;
  64. int nPollingTime;
  65. void Clear()
  66. {
  67. }
  68. } COMM_CONFIG;
  69. typedef struct tagAppConfig
  70. {
  71. String sConfigFile;
  72. bool bAppClose;
  73. bool bAppLoad;
  74. bool bThrExit;
  75. String sTitle;
  76. long lMainWinHandle; /* Main Window Handle */
  77. String sManagerApp;
  78. AnsiString sProcessId; /* Process ID */
  79. int nProcessId;
  80. int nProcessPort;
  81. AnsiString sSystemId; /* System ID */
  82. AnsiString sLogDay;
  83. int nTrafficCycleTime;
  84. int nTrafficBasisTime;
  85. int nSaveFormType;
  86. int nDefaultFillColor;
  87. int nMaxLogLines;
  88. int MaxMemory; /* Max Memory size Mbyte */
  89. int MaxHandle; /* Max Handle count */
  90. int MaxThread; /* Max Thread count */
  91. int MaxGdi; /* Max Gdi count */
  92. bool RcRestart; /* 리소스 오류시 재기동 여부 */
  93. bool DownloadBitmap;
  94. bool SaveFormImage; // 폼이미지를 Form 디렉토리에 저장할지 여부
  95. //THREAD_INFO thrDb; /* DB Thread */
  96. DATABASE_INFO db;
  97. COMM_CONFIG comm;
  98. int nCenterCommLogLevel;
  99. public:
  100. void Clear()
  101. {
  102. bThrExit = false;
  103. bAppClose = false;
  104. bAppLoad = false;
  105. sTitle = "";
  106. lMainWinHandle = 0;
  107. sProcessId = "";
  108. sLogDay = "";
  109. MaxMemory = 0;
  110. MaxHandle = 0;
  111. MaxThread = 0;
  112. MaxGdi = 0;
  113. //thrDb.Clear();
  114. db.Clear();
  115. comm.Clear();
  116. }
  117. } APP_CONFIG;
  118. // system state
  119. typedef struct tagSystemState
  120. {
  121. BYTE Action; /* 동작 상태 */
  122. BYTE Comm; /* 통신 상태 */
  123. BYTE DB; /* DB 상태 */
  124. HANDLE hFinishEvent; /* finish event */
  125. DWORD CommThreadID; /* 통신 데이터 처리 스레드 ID */
  126. } SYSTEM_STATE;
  127. // system informations
  128. typedef struct tagSystemInformation
  129. {
  130. SYSTEM_STATE State; /* system state */
  131. } SYSTEM_INFORMATION;
  132. /*
  133. ******************************************************************************
  134. * Global variable definitions
  135. ******************************************************************************
  136. */
  137. extern APP_CONFIG g_AppCfg;
  138. extern LOG_INFO g_LogCfg;
  139. extern TITSLog *ITSLog;
  140. extern TITSLog *FDbLog;
  141. extern bool LOGIN_CHECK;
  142. extern bool LOAD_DB;
  143. extern SYSTEM_INFORMATION *g_SysInfo;
  144. #define USE_Q 0
  145. /*
  146. ******************************************************************************
  147. * Global function definitios
  148. ******************************************************************************
  149. */
  150. bool APP_LoadConfigInfo();
  151. #endif