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.

180 lines
3.1 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. NTSTATUS
  105. DVConnect(
  106. IN KSPIN_DATAFLOW ulDataFlow,
  107. IN PDVCR_EXTENSION pDevExt,
  108. IN PSTREAMEX pStrmExt,
  109. IN PAV_61883_REQUEST pAVReq
  110. );
  111. NTSTATUS
  112. DVDisconnect(
  113. IN KSPIN_DATAFLOW ulDataFlow,
  114. IN PDVCR_EXTENSION pDevExt,
  115. IN PSTREAMEX pStrmExt
  116. );
  117. ULONGLONG
  118. GetSystemTime(
  119. );
  120. #ifdef MSDV_SUPPORT_EXTRACT_SUBCODE_DATA
  121. VOID
  122. DVCRExtractTimecodeFromFrame(
  123. IN PDVCR_EXTENSION pDevExt,
  124. IN PSTREAMEX pStrmExt,
  125. IN PUCHAR pFrameBuffer
  126. );
  127. #endif
  128. #ifdef MSDV_SUPPORT_EXTRACT_DV_DATE_TIME
  129. VOID
  130. DVCRExtractRecDateAndTimeFromFrame(
  131. IN PDVCR_EXTENSION pDevExt,
  132. IN PSTREAMEX pStrmExt,
  133. IN PUCHAR pFrameBuffer
  134. );
  135. #endif
  136. #ifdef MSDV_SUPPORT_MUTE_AUDIO
  137. BOOL
  138. DVMuteDVFrame(
  139. IN PDVCR_EXTENSION pDevExt,
  140. IN OUT PUCHAR pFrameBuffer,
  141. IN BOOL bMute // TRUE to mute; FALSE to un-Mute
  142. );
  143. #endif
  144. BOOL
  145. DVGetPropertyValuesFromRegistry(
  146. IN PDVCR_EXTENSION pDevExt
  147. );
  148. BOOL
  149. DVSetPropertyValuesToRegistry(
  150. PDVCR_EXTENSION pDevExt
  151. );