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.

77 lines
3.0 KiB

  1. ///////////////////////////////////////////////////////////////////////////
  2. // Copyright (C) 2000 Microsoft Corporation. All Right Reserved.
  3. //
  4. // File: dshow.h
  5. // Content: DirectShow top-level include file
  6. ///////////////////////////////////////////////////////////////////////////
  7. #ifndef __DSHOW_INCLUDED__
  8. #define __DSHOW_INCLUDED__
  9. ///////////////////////////////////////////////////////////////////////////
  10. // Set up constants & pragmas for the compiler
  11. ///////////////////////////////////////////////////////////////////////////
  12. #ifdef _MSC_VER
  13. // disable some level-4 warnings, use #pragma warning(enable:###) to re-enable
  14. #pragma warning(disable:4100) // warning C4100: unreferenced formal parameter
  15. #pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
  16. #pragma warning(disable:4511) // warning C4511: copy constructor could not be generated
  17. #pragma warning(disable:4512) // warning C4512: assignment operator could not be generated
  18. #pragma warning(disable:4514) // warning C4514: "unreferenced inline function has been removed"
  19. #if _MSC_VER>=1100
  20. #define AM_NOVTABLE __declspec(novtable)
  21. #else
  22. #define AM_NOVTABLE
  23. #endif
  24. #endif // MSC_VER
  25. ///////////////////////////////////////////////////////////////////////////
  26. // Include standard Windows files
  27. ///////////////////////////////////////////////////////////////////////////
  28. #include <windows.h>
  29. #include <windowsx.h>
  30. #include <olectl.h>
  31. #include <ddraw.h>
  32. #include <mmsystem.h>
  33. #ifndef NUMELMS
  34. #define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
  35. #endif
  36. ///////////////////////////////////////////////////////////////////////////
  37. // Include DirectShow include files
  38. ///////////////////////////////////////////////////////////////////////////
  39. #include <strmif.h> // Generated IDL header file for streams interfaces
  40. #include <amvideo.h> // ActiveMovie video interfaces and definitions
  41. #include <amaudio.h> // ActiveMovie audio interfaces and definitions
  42. #include <control.h> // generated from control.odl
  43. #include <evcode.h> // event code definitions
  44. #include <uuids.h> // declaration of type GUIDs and well-known clsids
  45. #include <errors.h> // HRESULT status and error definitions
  46. #include <edevdefs.h> // External device control interface defines
  47. #include <audevcod.h> // audio filter device error event codes
  48. #include <dvdevcod.h> // DVD error event codes
  49. ///////////////////////////////////////////////////////////////////////////
  50. // Define OLE Automation constants
  51. ///////////////////////////////////////////////////////////////////////////
  52. #ifndef OATRUE
  53. #define OATRUE (-1)
  54. #endif // OATRUE
  55. #ifndef OAFALSE
  56. #define OAFALSE (0)
  57. #endif // OAFALSE
  58. ///////////////////////////////////////////////////////////////////////////
  59. // Define Win64 interfaces if not already defined
  60. ///////////////////////////////////////////////////////////////////////////
  61. // InterlockedExchangePointer
  62. #ifndef InterlockedExchangePointer
  63. #define InterlockedExchangePointer(Target, Value) \
  64. (PVOID)InterlockedExchange((PLONG)(Target), (LONG)(Value))
  65. #endif
  66. #endif // __DSHOW_INCLUDED__