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.

106 lines
2.9 KiB

  1. /*++
  2. Copyright (c) 1997-2000 Microsoft Corporation All Rights Reserved
  3. Module Name:
  4. Msvad.h
  5. Abstract:
  6. Header file for common stuff.
  7. --*/
  8. #ifndef _MSVAD_H_
  9. #define _MSVAD_H_
  10. #include <portcls.h>
  11. #include <stdunk.h>
  12. #include <ksdebug.h>
  13. #include "kshelper.h"
  14. //=============================================================================
  15. // Defines
  16. //=============================================================================
  17. // Version number. Revision numbers are specified for each sample.
  18. #define MSVAD_VERSION 1
  19. // Revision number.
  20. #define MSVAD_REVISION 0
  21. // Product Id
  22. // {5B722BF8-F0AB-47ee-B9C8-8D61D31375A1}
  23. #define STATIC_PID_MSVAD\
  24. 0x5b722bf8, 0xf0ab, 0x47ee, 0xb9, 0xc8, 0x8d, 0x61, 0xd3, 0x13, 0x75, 0xa1
  25. DEFINE_GUIDSTRUCT("5B722BF8-F0AB-47ee-B9C8-8D61D31375A1", PID_MSVAD);
  26. #define PID_MSVAD DEFINE_GUIDNAMED(PID_MSVAD)
  27. // Pool tag used for MSVAD allocations
  28. #define MSVAD_POOLTAG 'DVSM'
  29. // Debug module name
  30. #define STR_MODULENAME "MSVAD: "
  31. // Debug utility macros
  32. #define D_FUNC 4
  33. #define D_BLAB DEBUGLVL_BLAB
  34. #define D_VERBOSE DEBUGLVL_VERBOSE
  35. #define D_TERSE DEBUGLVL_TERSE
  36. #define D_ERROR DEBUGLVL_ERROR
  37. #define DPF _DbgPrintF
  38. #define DPF_ENTER(x) DPF(D_FUNC, x)
  39. // Channel orientation
  40. #define CHAN_LEFT 0
  41. #define CHAN_RIGHT 1
  42. #define CHAN_MASTER (-1)
  43. // Dma Settings.
  44. #define DMA_BUFFER_SIZE 0x16000
  45. #define KSPROPERTY_TYPE_ALL KSPROPERTY_TYPE_BASICSUPPORT | \
  46. KSPROPERTY_TYPE_GET | \
  47. KSPROPERTY_TYPE_SET
  48. //=============================================================================
  49. // Typedefs
  50. //=============================================================================
  51. // Connection table for registering topology/wave bridge connection
  52. typedef struct _PHYSICALCONNECTIONTABLE
  53. {
  54. ULONG ulTopologyIn;
  55. ULONG ulTopologyOut;
  56. ULONG ulWaveIn;
  57. ULONG ulWaveOut;
  58. } PHYSICALCONNECTIONTABLE, *PPHYSICALCONNECTIONTABLE;
  59. //=============================================================================
  60. // Externs
  61. //=============================================================================
  62. // Physical connection table. Defined in mintopo.cpp for each sample
  63. extern PHYSICALCONNECTIONTABLE TopologyPhysicalConnections;
  64. // Generic topology handler
  65. extern NTSTATUS PropertyHandler_Topology
  66. (
  67. IN PPCPROPERTY_REQUEST PropertyRequest
  68. );
  69. // Generic wave port handler
  70. extern NTSTATUS PropertyHandler_Wave
  71. (
  72. IN PPCPROPERTY_REQUEST PropertyRequest
  73. );
  74. // Default WaveFilter automation table.
  75. // Handles the GeneralComponentId request.
  76. extern NTSTATUS PropertyHandler_WaveFilter
  77. (
  78. IN PPCPROPERTY_REQUEST PropertyRequest
  79. );
  80. #endif