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.

219 lines
3.7 KiB

  1. /*++
  2. Copyright (C) Microsoft Corporation, 1999 - 2000
  3. Module Name:
  4. MsdvGuts.h
  5. Abstract:
  6. Header file MsdvGuts.c
  7. Last changed by:
  8. Author: Yee J. Wu
  9. Environment:
  10. Kernel mode only
  11. Revision History:
  12. $Revision:: $
  13. $Date:: $
  14. --*/
  15. //
  16. // Device SRB
  17. //
  18. NTSTATUS
  19. DVInitializeDevice(
  20. IN PDVCR_EXTENSION pDevExt,
  21. IN PPORT_CONFIGURATION_INFORMATION pConfigInfo,
  22. IN PAV_61883_REQUEST pAVReq
  23. );
  24. NTSTATUS
  25. DVInitializeCompleted(
  26. IN PDVCR_EXTENSION pDevExt
  27. );
  28. NTSTATUS
  29. DVGetStreamInfo(
  30. IN PDVCR_EXTENSION pDevExt,
  31. IN ULONG ulBytesToTransfer,
  32. IN PHW_STREAM_HEADER pStreamHeader,
  33. IN PHW_STREAM_INFORMATION pStreamInfo
  34. );
  35. BOOL
  36. DVVerifyDataFormat(
  37. PKSDATAFORMAT pKSDataFormatToVerify,
  38. ULONG StreamNumber,
  39. ULONG ulSupportedFrameSize,
  40. HW_STREAM_INFORMATION * paCurrentStrmInfo
  41. );
  42. NTSTATUS
  43. DVGetDataIntersection(
  44. IN ULONG ulStreamNumber,
  45. IN PKSDATARANGE pDataRange,
  46. OUT PVOID pDataFormatBuffer,
  47. IN ULONG ulSizeOfDataFormatBuffer,
  48. IN ULONG ulSupportedFrameSize,
  49. OUT ULONG *pulActualBytesTransferred,
  50. HW_STREAM_INFORMATION * paCurrentStrmInfo
  51. #ifdef SUPPORT_NEW_AVC
  52. ,IN HANDLE hPlug
  53. #endif
  54. );
  55. NTSTATUS
  56. DVOpenStream(
  57. IN PHW_STREAM_OBJECT pStrmObject,
  58. IN PKSDATAFORMAT pOpenFormat,
  59. IN PAV_61883_REQUEST pAVReq
  60. );
  61. NTSTATUS
  62. DVCloseStream(
  63. IN PHW_STREAM_OBJECT pStrmObject,
  64. IN PKSDATAFORMAT pOpenFormat,
  65. IN PAV_61883_REQUEST pAVReq
  66. );
  67. NTSTATUS
  68. DVChangePower(
  69. PDVCR_EXTENSION pDevExt,
  70. PAV_61883_REQUEST pAVReq,
  71. DEVICE_POWER_STATE NewPowerState
  72. );
  73. NTSTATUS
  74. DVSurpriseRemoval(
  75. PDVCR_EXTENSION pDevExt,
  76. PAV_61883_REQUEST pAVReq
  77. );
  78. NTSTATUS
  79. DVProcessPnPBusReset(
  80. PDVCR_EXTENSION pDevExt
  81. );
  82. NTSTATUS
  83. DVUninitializeDevice(
  84. IN PDVCR_EXTENSION pDevExt
  85. );
  86. //
  87. // Stream SRB
  88. //
  89. NTSTATUS
  90. DVGetStreamState(
  91. PSTREAMEX pStrmExt,
  92. PKSSTATE pStreamState,
  93. PULONG pulActualBytesTransferred
  94. );
  95. NTSTATUS
  96. DVStreamingStop(
  97. PSTREAMEX pStrmExt,
  98. PDVCR_EXTENSION pDevExt,
  99. PAV_61883_REQUEST pAVReq
  100. );
  101. NTSTATUS
  102. DVStreamingStart(
  103. KSPIN_DATAFLOW ulDataFlow,
  104. PSTREAMEX pStrmExt,
  105. PDVCR_EXTENSION pDevExt
  106. );
  107. NTSTATUS
  108. DVSetStreamState(
  109. PSTREAMEX pStrmExt,
  110. PDVCR_EXTENSION pDevExt,
  111. PAV_61883_REQUEST pAVReq,
  112. KSSTATE StreamState
  113. );
  114. NTSTATUS
  115. DVGetStreamProperty(
  116. PHW_STREAM_REQUEST_BLOCK pSrb
  117. );
  118. NTSTATUS
  119. DVSetStreamProperty(
  120. PHW_STREAM_REQUEST_BLOCK pSrb
  121. );
  122. BOOL
  123. DVAbortStream(
  124. PDVCR_EXTENSION pDevExt,
  125. PSTREAMEX pStrmExt
  126. );
  127. NTSTATUS
  128. DVStopCancelDisconnect(
  129. PSTREAMEX pStrmExt
  130. );
  131. VOID
  132. DVCancelOnePacket(
  133. IN PHW_STREAM_REQUEST_BLOCK pSrbToCancel
  134. );
  135. VOID
  136. DVCancelAllPackets(
  137. IN PSTREAMEX pStrmExt,
  138. IN PDVCR_EXTENSION pDevExt
  139. );
  140. VOID
  141. DVTimeoutHandler(
  142. IN PHW_STREAM_REQUEST_BLOCK pSrb
  143. );
  144. NTSTATUS
  145. DVOpenCloseMasterClock (
  146. PSTREAMEX pStrmExt,
  147. HANDLE hMasterClockHandle
  148. );
  149. NTSTATUS
  150. DVIndicateMasterClock (
  151. PSTREAMEX pStrmExt,
  152. HANDLE hMasterClockHandle
  153. );
  154. VOID
  155. DVRcvDataPacket(
  156. IN PHW_STREAM_REQUEST_BLOCK pSrb
  157. );
  158. VOID
  159. DVRcvControlPacket(
  160. IN PHW_STREAM_REQUEST_BLOCK pSrb
  161. );
  162. VOID
  163. StreamClockRtn(
  164. IN PHW_TIME_CONTEXT TimeContext
  165. );
  166. VOID
  167. DVSignalClockEvent(
  168. IN PKDPC Dpc,
  169. IN PSTREAMEX pStrmExt,
  170. IN PVOID SystemArgument1,
  171. IN PVOID SystemArgument2
  172. );
  173. NTSTATUS
  174. DVEventHandler(
  175. IN PHW_EVENT_DESCRIPTOR pEventDescriptor
  176. );