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.

100 lines
3.6 KiB

  1. /****************************************************************************
  2. *
  3. * VfW.H - Video for windows include file for WIN32
  4. *
  5. * Copyright (c) 1991-1995, Microsoft Corp. All rights reserved.
  6. *
  7. * This include files defines interfaces to the following
  8. * video components
  9. *
  10. * COMPMAN - Installable Compression Manager.
  11. * DRAWDIB - Routines for drawing to the display.
  12. * VIDEO - Video Capture Driver Interface
  13. *
  14. * AVIFMT - AVI File Format structure definitions.
  15. * MMREG - FOURCC and other things
  16. *
  17. * AVIFile - Interface for reading AVI Files and AVI Streams
  18. * MCIWND - MCI/AVI window class
  19. * AVICAP - AVI Capture Window class
  20. *
  21. * MSACM - Audio compression manager.
  22. *
  23. * The following symbols control inclusion of various parts of this file:
  24. *
  25. * NOCOMPMAN - dont include COMPMAN
  26. * NODRAWDIB - dont include DRAWDIB
  27. * NOVIDEO - dont include video capture interface
  28. *
  29. * NOAVIFMT - dont include AVI file format structs
  30. * NOMMREG - dont include MMREG
  31. *
  32. * NOAVIFILE - dont include AVIFile interface
  33. * NOMCIWND - dont include AVIWnd class.
  34. * NOAVICAP - dont include AVICap class.
  35. *
  36. * NOMSACM - dont include ACM stuff.
  37. *
  38. ****************************************************************************/
  39. #ifndef _INC_VFW
  40. #define _INC_VFW
  41. #ifdef __cplusplus
  42. extern "C" { /* Assume C declarations for C++ */
  43. #endif /* __cplusplus */
  44. /****************************************************************************
  45. *
  46. * types
  47. *
  48. ***************************************************************************/
  49. #define VFWAPI WINAPI
  50. #define VFWAPIV WINAPIV
  51. /****************************************************************************
  52. *
  53. * VideoForWindowsVersion() - returns version of VfW
  54. *
  55. ***************************************************************************/
  56. DWORD FAR PASCAL VideoForWindowsVersion(void);
  57. /****************************************************************************
  58. *
  59. * call these to start stop using VfW from your app.
  60. *
  61. ***************************************************************************/
  62. LONG VFWAPI InitVFW(void);
  63. LONG VFWAPI TermVFW(void);
  64. /****************************************************************************
  65. *
  66. * do we need MMSYSTEM?
  67. *
  68. ****************************************************************************/
  69. #if !defined(_INC_MMSYSTEM) && (!defined(NOVIDEO) || !defined(NOAVICAP))
  70. #include <mmsystem.h>
  71. #endif
  72. /****************************************************************************/
  73. /* */
  74. /* Macros */
  75. /* */
  76. /* should we define this?? */
  77. /* */
  78. /****************************************************************************/
  79. #ifndef MKFOURCC
  80. #define MKFOURCC( ch0, ch1, ch2, ch3 ) \
  81. ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) | \
  82. ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
  83. #endif
  84. #if !defined(_INC_MMSYSTEM)
  85. #define mmioFOURCC MKFOURCC
  86. #endif