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.

191 lines
3.4 KiB

  1. //
  2. // Copyright (C) Microsoft Corporation, 1999 - 2000
  3. //
  4. // MsdvUtil.h
  5. //
  6. VOID
  7. DVDelayExecutionThread(
  8. ULONG ulDelayMSec
  9. );
  10. NTSTATUS
  11. DVSubmitIrpSynchWithTimeout(
  12. IN PDVCR_EXTENSION pDevExt,
  13. IN PIRP pIrp,
  14. IN PAV_61883_REQUEST pAVReq,
  15. IN ULONG ulTimeoutMSec
  16. );
  17. NTSTATUS
  18. DVSubmitIrpSynch(
  19. IN PDVCR_EXTENSION pDevExt,
  20. IN PIRP pIrp,
  21. IN PAV_61883_REQUEST pAVReq
  22. );
  23. //
  24. // Related to DeviceControl
  25. //
  26. NTSTATUS
  27. DVGetUnitCapabilities(
  28. IN OUT PDVCR_EXTENSION pDevExt
  29. );
  30. BOOL
  31. DVGetDevModeOfOperation(
  32. IN OUT PDVCR_EXTENSION pDevExt
  33. );
  34. BOOL
  35. DVGetDevIsItDVCPro(
  36. IN OUT PDVCR_EXTENSION pDevExt
  37. );
  38. BOOL
  39. DVGetDevSignalFormat(
  40. IN PDVCR_EXTENSION pDevExt,
  41. IN KSPIN_DATAFLOW DataFlow,
  42. IN PSTREAMEX pStrmExt
  43. );
  44. BOOL
  45. DVCmpGUIDsAndFormatSize(
  46. IN PKSDATARANGE pDataRange1,
  47. IN PKSDATARANGE pDataRange2,
  48. IN BOOL fCompareSubformat,
  49. IN BOOL fCompareFormatSize
  50. );
  51. NTSTATUS
  52. DvAllocatePCResource(
  53. IN KSPIN_DATAFLOW DataFlow,
  54. IN PSTREAMEX pStrmExt
  55. );
  56. NTSTATUS
  57. DvFreePCResource(
  58. IN PSTREAMEX pStrmExt
  59. );
  60. NTSTATUS
  61. DVGetDVPlug(
  62. IN PDVCR_EXTENSION pDevExt,
  63. IN CMP_PLUG_TYPE PlugType,
  64. IN ULONG PlugNum,
  65. OUT HANDLE *pPlugHandle
  66. );
  67. #ifdef NT51_61883
  68. NTSTATUS
  69. DVSetAddressRangeExclusive(
  70. IN PDVCR_EXTENSION pDevExt
  71. );
  72. NTSTATUS
  73. DVGetUnitIsochParam(
  74. IN PDVCR_EXTENSION pDevExt,
  75. OUT UNIT_ISOCH_PARAMS * pUnitIoschParams
  76. );
  77. NTSTATUS
  78. DVCreateLocalPlug(
  79. IN PDVCR_EXTENSION pDevExt,
  80. IN CMP_PLUG_TYPE PlugType,
  81. IN ULONG PlugNum,
  82. OUT HANDLE *pPlugHandle
  83. );
  84. NTSTATUS
  85. DVDeleteLocalPlug(
  86. IN PDVCR_EXTENSION pDevExt,
  87. IN HANDLE PlugHandle
  88. );
  89. #endif
  90. NTSTATUS
  91. DVGetPlugState(
  92. IN PDVCR_EXTENSION pDevExt,
  93. IN PSTREAMEX pStrmExt,
  94. IN PAV_61883_REQUEST pAVReq
  95. );
  96. VOID
  97. DVAttachFrameThread(
  98. IN PSTREAMEX pStrmExt
  99. );
  100. NTSTATUS
  101. DVCreateAttachFrameThread(
  102. PSTREAMEX pStrmExt
  103. );
  104. VOID
  105. DVTerminateAttachFrameThread(
  106. IN PSTREAMEX pStrmExt
  107. );
  108. void
  109. DVSetXmtThreadState(
  110. PSTREAMEX pStrmExt,
  111. XMT_THREAD_STATE RequestState
  112. );
  113. NTSTATUS
  114. DVConnect(
  115. IN KSPIN_DATAFLOW ulDataFlow,
  116. IN PDVCR_EXTENSION pDevExt,
  117. IN PSTREAMEX pStrmExt,
  118. IN PAV_61883_REQUEST pAVReq
  119. );
  120. NTSTATUS
  121. DVDisconnect(
  122. IN KSPIN_DATAFLOW ulDataFlow,
  123. IN PDVCR_EXTENSION pDevExt,
  124. IN PSTREAMEX pStrmExt
  125. );
  126. ULONGLONG
  127. GetSystemTime(
  128. );
  129. #ifdef MSDV_SUPPORT_EXTRACT_SUBCODE_DATA
  130. VOID
  131. DVCRExtractTimecodeFromFrame(
  132. IN PDVCR_EXTENSION pDevExt,
  133. IN PSTREAMEX pStrmExt,
  134. IN PUCHAR pFrameBuffer
  135. );
  136. #endif
  137. #ifdef MSDV_SUPPORT_EXTRACT_DV_DATE_TIME
  138. VOID
  139. DVCRExtractRecDateAndTimeFromFrame(
  140. IN PDVCR_EXTENSION pDevExt,
  141. IN PSTREAMEX pStrmExt,
  142. IN PUCHAR pFrameBuffer
  143. );
  144. #endif
  145. #ifdef MSDV_SUPPORT_MUTE_AUDIO
  146. BOOL
  147. DVMuteDVFrame(
  148. IN PDVCR_EXTENSION pDevExt,
  149. IN OUT PUCHAR pFrameBuffer,
  150. IN BOOL bMute // TRUE to mute; FALSE to un-Mute
  151. );
  152. #endif
  153. BOOL
  154. DVGetPropertyValuesFromRegistry(
  155. IN PDVCR_EXTENSION pDevExt
  156. );
  157. BOOL
  158. DVSetPropertyValuesToRegistry(
  159. PDVCR_EXTENSION pDevExt
  160. );