Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
3.2 KiB

  1. /*++
  2. Copyright (c) 1992-1993 Microsoft Corporation
  3. Module Name:
  4. queue.h
  5. Abstract:
  6. Header file included by the print provider
  7. Author:
  8. Yi-Hsin Sung (yihsins) 15-May-1993
  9. Environment:
  10. User Mode -Win32
  11. Revision History:
  12. --*/
  13. #ifndef _NW_QUEUE_INCLUDED_
  14. #define _NW_QUEUE_INCLUDED_
  15. //
  16. // Functions from queue.c
  17. //
  18. typedef BYTE JOBTIME[6];
  19. DWORD
  20. NwGetQueueId(
  21. IN HANDLE handleServer,
  22. IN LPWSTR QueueName,
  23. OUT LPDWORD QueueId
  24. );
  25. DWORD
  26. NwCreateQueueJobAndFile(
  27. IN HANDLE handleServer,
  28. IN DWORD QueueId,
  29. IN LPWSTR DocumentName,
  30. IN LPWSTR UserName,
  31. IN DWORD fGateway,
  32. IN DWORD PrintOption, //Multi-User addition
  33. IN LPWSTR QueueName,
  34. OUT LPWORD JobId
  35. );
  36. DWORD
  37. NwCloseFileAndStartQueueJob(
  38. IN HANDLE handleServer,
  39. IN DWORD QueueId,
  40. IN WORD JobId
  41. );
  42. DWORD
  43. NwRemoveJobFromQueue(
  44. IN HANDLE handleServer,
  45. IN DWORD QueueId,
  46. IN WORD JobId
  47. );
  48. DWORD
  49. NwRemoveAllJobsFromQueue(
  50. IN HANDLE handleServer,
  51. IN DWORD QueueId
  52. );
  53. DWORD
  54. NwReadQueueCurrentStatus(
  55. IN HANDLE handleServer,
  56. IN DWORD QueueId,
  57. OUT LPBYTE QueueStatus,
  58. OUT LPBYTE NumberOfJobs
  59. );
  60. DWORD
  61. NwSetQueueCurrentStatus(
  62. IN HANDLE handleServer,
  63. IN DWORD QueueId,
  64. IN BYTE QueueStatus
  65. );
  66. DWORD
  67. NwGetQueueJobList(
  68. IN HANDLE handleServer,
  69. IN DWORD QueueId,
  70. OUT LPWORD NumberOfJobs,
  71. OUT LPWORD JobIdList
  72. );
  73. DWORD
  74. NwReadQueueJobEntry(
  75. IN HANDLE handleServer,
  76. IN DWORD QueueId,
  77. IN WORD JobId,
  78. OUT JOBTIME TargetExecutionTime,
  79. OUT JOBTIME JobEntryTime,
  80. OUT LPBYTE JobPosition,
  81. OUT LPBYTE JobControlFlags,
  82. OUT LPSTR TextJobDescription,
  83. OUT LPSTR UserName
  84. );
  85. DWORD
  86. NwGetQueueJobsFileSize(
  87. IN HANDLE handleServer,
  88. IN DWORD QueueId,
  89. IN WORD JobId,
  90. OUT LPDWORD FileSize
  91. );
  92. DWORD
  93. NwChangeQueueJobPosition(
  94. IN HANDLE handleServer,
  95. IN DWORD QueueId,
  96. IN WORD JobId,
  97. IN BYTE NewPosition
  98. );
  99. DWORD
  100. NwChangeQueueJobEntry(
  101. IN HANDLE handleServer,
  102. IN DWORD QueueId,
  103. IN WORD JobId,
  104. IN DWORD dwCommand,
  105. IN PNW_JOB_INFO pNwJobInfo
  106. );
  107. DWORD
  108. NwGetQueueJobs(
  109. IN HANDLE handleServer,
  110. IN DWORD QueueId,
  111. IN LPWSTR PrinterName,
  112. IN DWORD FirstJobRequested,
  113. IN DWORD EntriesRequested,
  114. IN DWORD Level,
  115. OUT LPBYTE Buffer,
  116. IN DWORD cbBuf,
  117. OUT LPDWORD BytesNeeded,
  118. OUT LPDWORD Entries
  119. );
  120. DWORD
  121. NwGetQueueJobInfo(
  122. IN HANDLE handleServer,
  123. IN DWORD QueueId,
  124. IN WORD JobId,
  125. IN LPWSTR PrinterName,
  126. IN DWORD Level,
  127. IN OUT LPBYTE *FixedPortion,
  128. IN OUT LPWSTR *EndOfVariableData,
  129. OUT LPDWORD EntrySize
  130. );
  131. #ifndef NOT_USED
  132. DWORD
  133. NwDestroyQueue (
  134. IN HANDLE hServer,
  135. IN DWORD dwQueueId
  136. );
  137. DWORD
  138. NwAssocPServers (
  139. IN HANDLE hServer,
  140. IN LPWSTR pswQueue,
  141. IN LPWSTR pszPServer
  142. );
  143. DWORD
  144. NwCreateQueue (
  145. IN HANDLE hServer,
  146. IN LPWSTR pszQueue,
  147. OUT LPDWORD pQueueId
  148. );
  149. #endif // #ifndef NOT_USED
  150. #endif // _NW_QUEUE_INCLUDED_