BUSCommand.hpp 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. #pragma once
  2. // 通用命令
  3. const DWORD BUSCMD_BUSServerConnected = 1;
  4. const DWORD BUSEVT_BUSClientStarted = 10;
  5. const DWORD BUSEVT_BUSClientStopped = 11;
  6. //const DWORD BUSCMD_CallDivert = 12;
  7. const DWORD BUSCMD_Echo = 20;
  8. const DWORD BUSCMD_GetSystemPath = 25;
  9. const DWORD BUSCMD_GetVersion = 26;
  10. const DWORD BUSCMD_Prepare = 30;
  11. const DWORD BUSCMD_Close = 31;
  12. const DWORD BUSCMD_Exit = 32;
  13. const DWORD BUSCMD_ClearScreen = 33;
  14. //const DWORD BUSCMD_StartServer = 35; // 启动一个服务 (功能)
  15. //const DWORD BUSCMD_StopServer = 36; // 停止一个服务 (功能)
  16. //const DWORD BUSCMD_PushFile = 40;
  17. const DWORD BUSCMD_GetConfig = 50;
  18. const DWORD BUSCMD_SetConfig = 51;
  19. const DWORD BUSCMD_BeginTransaction = 100;
  20. const DWORD BUSCMD_EndTransaction = 101;
  21. const DWORD BUSCMD_MessageInMessage = 150;
  22. const DWORD BUSCMD_PullDicomFile = 200;
  23. const DWORD BUSCMD_PullDicomFileName = 201;
  24. const DWORD BUSCMD_PullDicomFileHeader = 202;
  25. const DWORD BUSCMD_PullDicomFileEx = 210;
  26. const DWORD BUSCMD_PullDicomFileNameEx = 211;
  27. const DWORD BUSCMD_PullDicomFileHeaderEx = 212;
  28. // 先转换成 SC, 再转换成 DICOM, 发送到总线上
  29. const DWORD BUSCMD_PullSecondCapture2Dicom = 220;
  30. const DWORD BUSCMD_DumpOn = 240;
  31. const DWORD BUSCMD_DumpOff = 241;
  32. const DWORD BUSCMD_PushDicomFileName = 300;
  33. const DWORD BUSCMD_PushDicomFile = 301;
  34. // MemMapExchBLOB, 通过 MemMap 交换任意文件
  35. const DWORD BUSCMD_MemMapPullBLOB = 400;
  36. const DWORD BUSCMD_MemMapPushBLOB = 401;
  37. // 所有 View 都可能支持的命令
  38. const DWORD BUSCMD_SetViewLayout = 501;
  39. const DWORD BUSCMD_SetImageLayout = 502;
  40. const DWORD BUSCMD_SetFont = 503;
  41. // 所有 View 都可能支持的命令
  42. const DWORD BUSCMD_SendMessageToHotImage = 600;
  43. const DWORD BUSCMD_PostMessageToHotImage = 601;
  44. const DWORD BUSCMD_SendMessageToHotView = 602;
  45. const DWORD BUSCMD_PostMessageToHotView = 603;
  46. const DWORD BUSCMD_SendMessageToAllView = 604;
  47. const DWORD BUSCMD_PostMessageToAllView = 605;
  48. const DWORD BUSCMD_SendMessageToMainWindow = 606;
  49. const DWORD BUSCMD_PostMessageToMainWindow = 607;
  50. // 1000 ~ 1999 是事件通知
  51. // PPACS 发送的事件
  52. const DWORD BUSEVT_OnFileSaved = 1000;
  53. const DWORD BUSEVT_OnFileStored = 1001;
  54. const DWORD BUSEVT_OnFileRemoving = 1002;
  55. const DWORD BUSEVT_OnFileRemoved = 1003;
  56. const DWORD BUSEVT_OnCMoveFileSaved = 1004;
  57. const DWORD BUSEVT_OnStudyAvailable = 1005;
  58. const DWORD BUSEVT_OnStorageCommitment = 1020;
  59. const DWORD BUSEVT_OnIdle5Minute = 1030;
  60. const DWORD BUSEVT_OnIdle1Hour = 1031;
  61. // Queue 发送的事件
  62. const DWORD BUSEVT_QueuePrintFilm = 1100;
  63. const DWORD BUSEVT_QueueSendFile = 1110;
  64. const DWORD BUSEVT_QueueRetrieve = 1120;
  65. const DWORD BUSEVT_Prefetch = 1130;
  66. // ZeroConfig 发送的事件
  67. const DWORD BUSEVT_ZeroConfig = 1990;
  68. // ImageViewer 支持的命令
  69. const DWORD BUSCMD_ShowSeries = 2003;
  70. const DWORD BUSCMD_ShowImage = 2004;
  71. // FilmCompose 和 MammoFilm 支持的命令
  72. const DWORD BUSCMD_PrintOut = 2010;
  73. const DWORD BUSCMD_SetFilmSize = 2011;
  74. const DWORD BUSCMD_SetPrinterParameter = 2012; // 参数是 DDS 的 JSON 序列化
  75. const DWORD BUSCMD_SetFilmOrientation = 2013;
  76. // 协调器支持的命令
  77. //const DWORD BUSCMD_BindMainWindow = 3000;
  78. //const DWORD BUSCMD_DoCMoveImage = 3001;
  79. //const DWORD BUSCMD_CancelCMoveImage = 3002;
  80. //const DWORD BUSCMD_Prefetch = 3003;
  81. // LoginServer 支持的命令
  82. const DWORD BUSCMD_AddUser = 3400;
  83. const DWORD BUSCMD_DeleteUser = 3401;
  84. const DWORD BUSCMD_UpdateUser = 3402;
  85. const DWORD BUSCMD_FindUser = 3403;
  86. const DWORD BUSCMD_GetPassword = 3404;
  87. const DWORD BUSCMD_UpdateLoginDateTime = 3405;
  88. const DWORD BUSCMD_AddGroup = 3410;
  89. const DWORD BUSCMD_DeleteGroup = 3411;
  90. const DWORD BUSCMD_UpdateGroup = 3412;
  91. const DWORD BUSCMD_FindGroup = 3413;
  92. // 拼接, TomoSlab, Stitch, MPR 等各个后台服务的共同命令
  93. const DWORD BUSCMD_PrepareTask = 5000;
  94. const DWORD BUSCMD_StartTask = 5001;
  95. const DWORD BUSCMD_StopTask = 5002;
  96. const DWORD BUSCMD_ExitTask = 5005;
  97. const DWORD BUSCMD_SubTask_First = 5100;
  98. const DWORD BUSCMD_SubTask_Last = 5999;
  99. const DWORD BUSCMD_Setting_First = 6000;
  100. const DWORD BUSCMD_Setting_Last = 6499;
  101. const DWORD BUSCMD_Config_First = 6500;
  102. const DWORD BUSCMD_Config_Last = 6999;
  103. const DWORD BUSCMD_Config_Add = BUSCMD_Config_First + 5;
  104. const DWORD BUSCMD_Config_Reload = BUSCMD_Config_First + 10;
  105. // PPACS 支持的命令
  106. const DWORD BUSCMD_CreateIcon = 7000;
  107. const DWORD BUSCMD_ForceCreateIcon = 7001;
  108. const DWORD BUSCMD_ExecSQL = 7005;
  109. const DWORD BUSCMD_FullFileNameToArchFileName = 7007;
  110. const DWORD BUSCMD_UserDeletePatient = 7010;
  111. const DWORD BUSCMD_UserDeleteStudy = 7011;
  112. const DWORD BUSCMD_UserDeleteSeries = 7012;
  113. const DWORD BUSCMD_UserDeleteImage = 7013;
  114. const DWORD BUSCMD_SysDeletePatient = 7015;
  115. const DWORD BUSCMD_SysDeleteStudy = 7016;
  116. const DWORD BUSCMD_SysDeleteSeries = 7017;
  117. const DWORD BUSCMD_SysDeleteImage = 7018;
  118. const DWORD BUSCMD_CopyFileToArchive = 7020;
  119. const DWORD BUSCMD_MoveFileToArchive = 7021;
  120. const DWORD BUSCMD_AddFileToArchive = 7022;
  121. const DWORD BUSCMD_Compress = 7027;
  122. const DWORD BUSCMD_Decompress = 7028;
  123. const DWORD BUSCMD_CalcCountForStudy = 7030;
  124. const DWORD BUSCMD_CalcCountForPatient = 7031;
  125. const DWORD BUSCMD_UpdateStudyStatus = 7040;
  126. const DWORD BUSCMD_UpdateStudy = 7041;
  127. const DWORD BUSCMD_UpdatePatientStatus = 7045;
  128. const DWORD BUSCMD_UpdatePatient = 7046;
  129. const DWORD BUSCMD_LockStudy = 7050;
  130. const DWORD BUSCMD_UnlockStudy = 7051;
  131. const DWORD BUSCMD_LockPatient = 7055;
  132. const DWORD BUSCMD_UnlockPatient = 7056;
  133. const DWORD BUSCMD_EmptyArchive = 7070; // 初始化数据库, 并删除目录下的文件
  134. const DWORD BUSCMD_InitArchive = 7071; // 初始化数据库, 并把文件加入到数据库中
  135. const DWORD BUSCMD_InitDatabase = 7072; // 只初始化数据库, 不删除目录下的文件
  136. //const DWORD BUSCMD_PullConfigDicomNode = 7080;
  137. // 队列操作, 既适用于发送队列, 也适用于打印队列
  138. const DWORD BUSCMD_QueueAdd = 7090;
  139. const DWORD BUSCMD_QueueDelete = 7091;
  140. const DWORD BUSCMD_QueueSuspend = 7092;
  141. const DWORD BUSCMD_QueueResume = 7093;
  142. const DWORD BUSCMD_QueueQuery = 7094;
  143. // ZeroConfig
  144. const DWORD BUSCMD_ZeroConfigStartup = 7500;
  145. const DWORD BUSCMD_ZeroConfigExit = 7501;
  146. const DWORD BUSCMD_ZeroConfigEcho = 7505;
  147. const DWORD BUSCMD_ZeroConfigAdd = 7510;
  148. const DWORD BUSCMD_ZeroConfigDelete = 7511;
  149. const DWORD BUSCMD_ZeroConfigPublishLocal = 7520;
  150. const DWORD BUSCMD_ZeroConfigPublishAll = 7521;
  151. // PPACS 内部总线使用
  152. const DWORD BUSCMD_BeginDicomCMove = 7800;
  153. const DWORD BUSCMD_EnquireDicomCMove = 7801;
  154. const DWORD BUSCMD_EndDicomCMove = 7805;
  155. // MammoViewer 支持的命令
  156. const DWORD BUSCMD_FreeHangImage = 8000;
  157. // CacheManager 支持的命令
  158. const DWORD BUSCMD_CheckIn = 9000;
  159. const DWORD BUSCMD_CheckOut = 9001;
  160. const DWORD BUSCMD_CheckInFile = 9002;
  161. // RDWe 支持的命令
  162. const DWORD BUSCMD_RDWe_First = 10000;
  163. const DWORD BUSCMD_RDWe_Last = 10999;
  164. const DWORD BUSCMD_RDWe_SwitchTaskPage = BUSCMD_RDWe_First + 10; // 切换页面
  165. // BUSServer 自己支持的命令
  166. const DWORD BUSCMD_StartService = 20000;
  167. const DWORD BUSCMD_StopService = 20001;
  168. const DWORD BUSCMD_RestartService = 20002;
  169. const DWORD BUSCMD_ControlService = 20003;
  170. const DWORD BUSCMD_RestartSystem = 20010; // 重新启动机器
  171. const DWORD BUSCMD_ShutdownSystem = 20011; // 关机
  172. const DWORD BUSCMD_ExecOSCommand = 20020; // 执行系统命令
  173. // 专用于测试的命令 (单元测试或功能测试)
  174. const DWORD BUSCMD_Test_First = 25000;
  175. const DWORD BUSCMD_Test_Last = 25999;
  176. // DICOM 命令, 用二进制数据传输
  177. const DWORD BUSCMD_DicomCFind = 30000;
  178. const DWORD BUSCMD_DicomCGet = 30001;
  179. const DWORD BUSCMD_DicomCMove = 30002;
  180. const DWORD BUSCMD_DicomCStore = 30005;
  181. const DWORD BUSCMD_DicomCStoreCommit = 30006;
  182. const DWORD BUSCMD_DicomCGetHeader = 30009;
  183. const DWORD BUSCMD_DicomNGet = 30010;
  184. //const DWORD BUSCMD_DicomNEventReport = 30015;
  185. const DWORD BUSCMD_BeginBUSDicomCMove = 30020;
  186. const DWORD BUSCMD_EndBUSDicomCMove = 30021;
  187. const DWORD BUSCMD_CancelBUSDicomCMove = 30025;
  188. const DWORD BUSCMD_DicomCEcho = 30030;
  189. /*
  190. // BLOB 命令, 用二进制数据传输
  191. const DWORD BUSBLOB_Find = 31000;
  192. const DWORD BUSBLOB_Get = 31001;
  193. const DWORD BUSBLOB_Move = 31002;
  194. const DWORD BUSBLOB_Store = 31005;
  195. */
  196. // 大于 40000 以上的命令是私有命令
  197. const DWORD BUSCMD_Private = 40000;
  198. // 大于 50000 以上的命令是用户命令 (聊天命令)
  199. const DWORD BUSCMD_Chat = 50000;