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.

158 lines
4.9 KiB

  1. //==========================================================================;
  2. //
  3. // PinMedia.H
  4. // WDM MiniDriver development
  5. // AIW / AIWPro hardware platform.
  6. // ATI connections GUIDs Include Module.
  7. // Copyright (c) 1996 - 1998 ATI Technologies Inc. All Rights Reserved.
  8. //
  9. //==========================================================================;
  10. #ifndef _PINMEDIA_H_
  11. #define _PINMEDIA_H_
  12. #define WDM_REG_PIN_MEDIUMS "Mediums"
  13. #define UNICODE_WDM_REG_PIN_MEDIUMS L"Mediums"
  14. #define WDM_REG_PIN_NUMBER "Pin"
  15. #define UNICODE_WDM_REG_PIN_NUMBER L"Pin"
  16. #define PINMEDIA_REGISTRY_BUFFER_LENGTH 16
  17. /*
  18. TVTuner, XBar, and TVAudio Medium definitions
  19. */
  20. // {F3954420-34F6-11d1-821D-0000F8300212}
  21. #define STATIC_MEDIUM_ATIXBAR_VIDEOTUNERIN \
  22. 0xf3954420, 0x34f6, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  23. DEFINE_GUIDSTRUCT( "F3954420-34F6-11D1-821D-0000F8300212", MEDIUM_ATIXBAR_VIDEOTUNERIN);
  24. #define MEDIUM_ATXBAR_VIDEOTUNERIN DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_VIDEOTUNERIN)
  25. // {F3954421-34F6-11d1-821D-0000F8300212}
  26. #define STATIC_MEDIUM_ATIXBAR_AUDIOTUNERIN \
  27. 0xf3954421, 0x34f6, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  28. DEFINE_GUIDSTRUCT( "F3954421-34F6-11D1-821D-0000F8300212", MEDIUM_VIDEO_ATIXBAR_AUDIOTUNERIN);
  29. #define MEDIUM_ATXBAR_AUDIOTUNERIN DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_AUDIOTUNERIN)
  30. // {6001AFE0-39A7-11D1-821D-0000F8300212}
  31. #define STATIC_MEDIUM_ATIXBAR_VIDEOCOMPOSITEOUT \
  32. 0x6001afe0, 0x39a7, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  33. DEFINE_GUIDSTRUCT( "6001AFE0-39A7-11D1-821D-0000F8300212", MEDIUM_ATIXBAR_VIDEOCOMPOSITEOUT);
  34. #define MEDIUM_ATXBAR_VIDEOCOMPOSITEOUT DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_VIDEOCOMPOSITEOUT)
  35. // {6001AFE1-39A7-11D1-821D-0000F8300212}
  36. #define STATIC_MEDIUM_ATIXBAR_VIDEOSVIDEOOUT \
  37. 0x6001afe1, 0x39a7, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  38. DEFINE_GUIDSTRUCT( "6001AFE1-39A7-11D1-821D-0000F8300212", MEDIUM_ATIXBAR_VIDEOSVIDEOOUT);
  39. #define MEDIUM_ATXBAR_VIDEOSVIDEOOUT DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_VIDEOSVIDEOOUT)
  40. // {AE8F28C0-3346-11D1-821D-0000F8300212}
  41. #define STATIC_MEDIUM_ATIXBAR_VIDEOTUNEROUT \
  42. 0xae8f28c0, 0x3346, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  43. DEFINE_GUIDSTRUCT( "AE8F28C0-3346-11D1-821D-0000F8300212", MEDIUM_ATIXBAR_VIDEOTUNEROUT);
  44. #define MEDIUM_ATXBAR_VIDEOTUNEROUT DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_VIDEOTUNEROUT)
  45. // {AE8F28C1-3346-11D1-821D-0000F8300212}
  46. #define STATIC_MEDIUM_ATIXBAR_AUDIODECODEROUT \
  47. 0xae8f28c1, 0x3346, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  48. DEFINE_GUIDSTRUCT( "AE8F28C1-3346-11D1-821D-0000F8300212", MEDIUM_ATIXBAR_AUDIODECODEROUT);
  49. #define MEDIUM_ATXBAR_AUDIODECODEROUT DEFINE_GUIDNAMED( MEDIUM_ATIXBAR_AUDIODECODEROUT)
  50. // {F3954422-34F6-11D1-821D-0000F8300212}
  51. #define STATIC_MEDIUM_ATITVTUNER_RADIOAUDIOOUT \
  52. 0xf3954422, 0x34f6, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  53. DEFINE_GUIDSTRUCT("F3954422-34F6-11D1-821D-0000F8300212", MEDIUM_VIDEO_ATITVTUNER_RADIOAUDIOOUT);
  54. #define MEDIUM_ATXBAR_RADIOAUDIOOUT DEFINE_GUIDNAMED( MEDIUM_ATITVTUNER_RADIOAUDIOOUT)
  55. // {F3954423-34F6-11d1-821D-0000F8300212}
  56. #define STATIC_MEDIUM_ATITVTUNER_TVAUDIOOUT \
  57. 0xf3954423, 0x34f6, 0x11d1, 0x82, 0x1d, 0x0, 0x0, 0xf8, 0x30, 0x2, 0x12
  58. DEFINE_GUIDSTRUCT( "F3954423-34F6-11D1-821D-0000F8300212", MEDIUM_VIDEO_ATITVTUNER_TVAUDIOOUT);
  59. #define MEDIUM_ATITVTUNER_TVAUDIOOUT DEFINE_GUIDNAMED( MEDIUM_ATITVTUNER_TVAUDIOOUT)
  60. const KSPIN_MEDIUM ATIXBarVideoTunerInMedium =
  61. {
  62. STATIC_MEDIUM_ATIXBAR_VIDEOTUNERIN,
  63. 0,
  64. 0
  65. };
  66. const KSPIN_MEDIUM ATIXBarAudioTunerInMedium =
  67. {
  68. STATIC_MEDIUM_ATIXBAR_AUDIOTUNERIN,
  69. 0,
  70. 0
  71. };
  72. const KSPIN_MEDIUM ATIXBarVideoCompositeOutMedium =
  73. {
  74. STATIC_MEDIUM_ATIXBAR_VIDEOCOMPOSITEOUT,
  75. 0,
  76. 0
  77. };
  78. const KSPIN_MEDIUM ATIXBarVideoSVideoOutMedium =
  79. {
  80. STATIC_MEDIUM_ATIXBAR_VIDEOSVIDEOOUT,
  81. 0,
  82. 0
  83. };
  84. const KSPIN_MEDIUM ATIXBarVideoTunerOutMedium =
  85. {
  86. STATIC_MEDIUM_ATIXBAR_VIDEOTUNEROUT,
  87. 0,
  88. 0
  89. };
  90. const KSPIN_MEDIUM ATIXBarAudioDecoderOutMedium =
  91. {
  92. STATIC_GUID_NULL,
  93. 0,
  94. 0
  95. };
  96. const KSPIN_MEDIUM ATITVTunerRadioAudioOutMedium =
  97. {
  98. STATIC_MEDIUM_ATITVTUNER_RADIOAUDIOOUT,
  99. 0,
  100. 0
  101. };
  102. const KSPIN_MEDIUM ATITVTunerTVAudioOutMedium =
  103. {
  104. STATIC_MEDIUM_ATITVTUNER_TVAUDIOOUT,
  105. 0,
  106. 0
  107. };
  108. const KSPIN_MEDIUM MEDIUM_WILDCARD =
  109. {
  110. STATIC_GUID_NULL,
  111. 0,
  112. 0
  113. };
  114. // compatible mediums between ATITVTuner and ATIXBar
  115. #define ATITVTunerVideoOutMedium ATIXBarVideoTunerInMedium
  116. #define ATITVAudioInMedium ATITVTunerTVAudioOutMedium
  117. #define ATITVAudioOutMedium ATIXBarAudioTunerInMedium
  118. // Pin Mediums support functions prototypes
  119. ULONG GetDriverInstanceNumber ( PDEVICE_OBJECT pDeviceObject);
  120. HANDLE OpenRegistryPinMediumFolder ( PDEVICE_OBJECT pDeviceObject, PWCHAR pwchFolderName);
  121. BOOL ReadPinMediumFromRegistryFolder ( HANDLE hFolder, ULONG nPin, PKSPIN_MEDIUM pMediumKSPin);
  122. #endif // _PINMEDIA_H
  123.