Leaked source code of windows server 2003
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.

142 lines
4.2 KiB

  1. /*++
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. faxdevex.h
  5. Abstract:
  6. This file contains the prototypes, etc for the
  7. FAX device provider extended API.
  8. --*/
  9. #ifndef _FAX_DEV_EX_H_
  10. #define _FAX_DEV_EX_H_
  11. #include <faxdev.h>
  12. #include <oleauto.h>
  13. #include <CoverPgId.h>
  14. //
  15. // Extended Fax Service Provider Interface
  16. //
  17. //
  18. // Job Queue Status codes
  19. //
  20. #define FSPI_JS_UNKNOWN 0x00000001
  21. #define FSPI_JS_PENDING 0x00000002
  22. #define FSPI_JS_INPROGRESS 0x00000003
  23. #define FSPI_JS_SUSPENDING 0x00000004
  24. #define FSPI_JS_SUSPENDED 0x00000005
  25. #define FSPI_JS_RESUMING 0x00000006
  26. #define FSPI_JS_ABORTING 0x00000007
  27. #define FSPI_JS_ABORTED 0x00000008
  28. #define FSPI_JS_COMPLETED 0x00000009
  29. #define FSPI_JS_RETRY 0x0000000A
  30. #define FSPI_JS_FAILED 0x0000000B
  31. #define FSPI_JS_FAILED_NO_RETRY 0x0000000C
  32. #define FSPI_JS_DELETED 0x0000000D
  33. //
  34. // Extended job status codes
  35. //
  36. #define FSPI_ES_DISCONNECTED 0x00000001
  37. #define FSPI_ES_INITIALIZING 0x00000002
  38. #define FSPI_ES_DIALING 0x00000003
  39. #define FSPI_ES_TRANSMITTING 0x00000004
  40. #define FSPI_ES_ANSWERED 0x00000005
  41. #define FSPI_ES_RECEIVING 0x00000006
  42. #define FSPI_ES_LINE_UNAVAILABLE 0x00000007
  43. #define FSPI_ES_BUSY 0x00000008
  44. #define FSPI_ES_NO_ANSWER 0x00000009
  45. #define FSPI_ES_BAD_ADDRESS 0x0000000A
  46. #define FSPI_ES_NO_DIAL_TONE 0x0000000B
  47. #define FSPI_ES_FATAL_ERROR 0x0000000C
  48. #define FSPI_ES_CALL_DELAYED 0x0000000D
  49. #define FSPI_ES_CALL_BLACKLISTED 0x0000000E
  50. #define FSPI_ES_NOT_FAX_CALL 0x0000000F
  51. #define FSPI_ES_PARTIALLY_RECEIVED 0x00000010
  52. #define FSPI_ES_HANDLED 0x00000011
  53. #define FSPI_ES_CALL_COMPLETED 0x00000012
  54. #define FSPI_ES_CALL_ABORTED 0x00000013
  55. #define FSPI_ES_PROPRIETARY 0x30000000 // Must be greater than FPS_ANSWERED to preserve
  56. // backward compatibiity with W2K FSPs
  57. //
  58. // Status information fields availability flags
  59. //
  60. #define FSPI_JOB_STATUS_INFO_PAGECOUNT 0x00000001
  61. #define FSPI_JOB_STATUS_INFO_TRANSMISSION_START 0x00000002
  62. #define FSPI_JOB_STATUS_INFO_TRANSMISSION_END 0x00000004
  63. //
  64. // data structures
  65. //
  66. typedef struct _FSPI_PERSONAL_PROFILE {
  67. DWORD dwSizeOfStruct;
  68. LPWSTR lpwstrName;
  69. LPWSTR lpwstrFaxNumber;
  70. LPWSTR lpwstrCompany;
  71. LPWSTR lpwstrStreetAddress;
  72. LPWSTR lpwstrCity;
  73. LPWSTR lpwstrState;
  74. LPWSTR lpwstrZip;
  75. LPWSTR lpwstrCountry;
  76. LPWSTR lpwstrTitle;
  77. LPWSTR lpwstrDepartment;
  78. LPWSTR lpwstrOfficeLocation;
  79. LPWSTR lpwstrHomePhone;
  80. LPWSTR lpwstrOfficePhone;
  81. LPWSTR lpwstrEmail;
  82. LPWSTR lpwstrBillingCode;
  83. LPWSTR lpwstrTSID;
  84. } FSPI_PERSONAL_PROFILE;
  85. typedef FSPI_PERSONAL_PROFILE * LPFSPI_PERSONAL_PROFILE;
  86. typedef const FSPI_PERSONAL_PROFILE * LPCFSPI_PERSONAL_PROFILE;
  87. typedef struct _FSPI_COVERPAGE_INFO {
  88. DWORD dwSizeOfStruct;
  89. DWORD dwCoverPageFormat;
  90. LPWSTR lpwstrCoverPageFileName;
  91. DWORD dwNumberOfPages;
  92. LPWSTR lpwstrNote;
  93. LPWSTR lpwstrSubject;
  94. } FSPI_COVERPAGE_INFO;
  95. typedef FSPI_COVERPAGE_INFO * LPFSPI_COVERPAGE_INFO;
  96. typedef const FSPI_COVERPAGE_INFO * LPCFSPI_COVERPAGE_INFO;
  97. typedef struct _FSPI_MESSAGE_ID {
  98. DWORD dwSizeOfStruct;
  99. DWORD dwIdSize;
  100. LPBYTE lpbId;
  101. } FSPI_MESSAGE_ID;
  102. typedef FSPI_MESSAGE_ID * LPFSPI_MESSAGE_ID;
  103. typedef const FSPI_MESSAGE_ID * LPCFSPI_MESSAGE_ID;
  104. typedef struct _FSPI_JOB_STATUS {
  105. DWORD dwSizeOfStruct;
  106. DWORD fAvailableStatusInfo;
  107. DWORD dwJobStatus;
  108. DWORD dwExtendedStatus;
  109. DWORD dwExtendedStatusStringId;
  110. LPWSTR lpwstrRemoteStationId;
  111. LPWSTR lpwstrCallerId;
  112. LPWSTR lpwstrRoutingInfo;
  113. DWORD dwPageCount;
  114. SYSTEMTIME tmTransmissionStart;
  115. SYSTEMTIME tmTransmissionEnd;
  116. } FSPI_JOB_STATUS;
  117. typedef FSPI_JOB_STATUS * LPFSPI_JOB_STATUS;
  118. typedef const FSPI_JOB_STATUS * LPCFSPI_JOB_STATUS;
  119. #endif // _FAX_DEV_EX_H_