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.

216 lines
6.8 KiB

  1. /****************************************************************************
  2. *
  3. * VfW.H - Video for windows include file version 1.1
  4. *
  5. * Copyright (c) 1991-1994, Microsoft Corp. All rights reserved.
  6. *
  7. * This include files defines interfaces to the following
  8. * components of VfW 1.0 OR VFW 1.1
  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. #ifdef WIN32
  50. #define VFWAPI WINAPI
  51. #define VFWAPIV WINAPIV
  52. #else
  53. #ifndef VFWAPI
  54. #define VFWAPI FAR PASCAL
  55. #define VFWAPIV FAR CDECL
  56. #endif
  57. #endif
  58. /****************************************************************************
  59. *
  60. * VideoForWindowsVersion() - returns version of VfW
  61. *
  62. ***************************************************************************/
  63. DWORD FAR PASCAL VideoForWindowsVersion(void);
  64. /****************************************************************************
  65. *
  66. * call these to start stop using VfW from your app.
  67. *
  68. ***************************************************************************/
  69. LONG VFWAPI InitVFW(void);
  70. LONG VFWAPI TermVFW(void);
  71. /****************************************************************************
  72. *
  73. * do we need MMSYSTEM?
  74. *
  75. ****************************************************************************/
  76. #if !defined(_INC_MMSYSTEM) && (!defined(NOVIDEO) || !defined(NOAVICAP))
  77. #include <mmsystem.h>
  78. #endif
  79. /****************************************************************************/
  80. /* */
  81. /* Macros */
  82. /* */
  83. /* should we define this?? */
  84. /* */
  85. /****************************************************************************/
  86. #ifndef MKFOURCC
  87. #define MKFOURCC( ch0, ch1, ch2, ch3 ) \
  88. ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) | \
  89. ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
  90. #endif
  91. #if !defined(_INC_MMSYSTEM)
  92. #define mmioFOURCC MKFOURCC
  93. #endif
  94. /**************************************************************************
  95. *
  96. * DRAWDIB - Routines for drawing to the display.
  97. *
  98. *************************************************************************/
  99. #ifndef NODRAWDIB
  100. #include <drawdib.h>
  101. #endif /* NODRAWDIB */
  102. /****************************************************************************
  103. *
  104. * AVIFMT - AVI file format definitions
  105. *
  106. ****************************************************************************/
  107. #ifndef NOAVIFMT
  108. #ifndef _INC_MMSYSTEM
  109. typedef DWORD FOURCC;
  110. #endif
  111. #include <avifmt.h>
  112. #endif /* NOAVIFMT */
  113. /****************************************************************************
  114. *
  115. * MMREG.H (standard include file for MM defines, like FOURCC and things)
  116. *
  117. ***************************************************************************/
  118. #ifndef NOMMREG
  119. #include <mmreg.h>
  120. #endif
  121. /****************************************************************************
  122. *
  123. * AVIFile - routines for reading/writing standard AVI files
  124. *
  125. ***************************************************************************/
  126. #ifndef NOAVIFILE
  127. #include <avifile.h>
  128. #endif /* NOAVIFILE */
  129. /****************************************************************************
  130. *
  131. * COMPMAN - Installable Compression Manager.
  132. *
  133. ****************************************************************************/
  134. #ifndef NOCOMPMAN
  135. #include <compman.h>
  136. #endif /* NOCOMPMAN */
  137. /****************************************************************************
  138. *
  139. * MCIWnd - Window class for MCI objects
  140. *
  141. ***************************************************************************/
  142. #ifndef NOMCIWND
  143. #include <mciwnd.h>
  144. #endif /* NOAVIFILE */
  145. /****************************************************************************
  146. *
  147. * VIDEO - Video Capture Driver Interface
  148. *
  149. ****************************************************************************/
  150. #if !defined(NOAVICAP) || !defined(NOVIDEO)
  151. #include <msvideo.h>
  152. #endif /* NOVIDEO */
  153. /****************************************************************************
  154. *
  155. * AVICAP - Window class for AVI capture
  156. *
  157. ***************************************************************************/
  158. #ifndef NOAVICAP
  159. #include <avicap.h>
  160. #endif /* NOAVIFILE */
  161. /****************************************************************************
  162. *
  163. * ACM (Audio compression manager)
  164. *
  165. ***************************************************************************/
  166. #ifndef NOMSACM
  167. #include <msacm.h>
  168. #endif
  169. /****************************************************************************
  170. *
  171. * File Preview dialog (if commdlg.h was included already)
  172. *
  173. ***************************************************************************/
  174. #ifdef OFN_READONLY
  175. BOOL VFWAPI GetOpenFileNamePreview(LPOPENFILENAME lpofn);
  176. BOOL VFWAPI GetSaveFileNamePreview(LPOPENFILENAME lpofn);
  177. #endif
  178. #ifdef __cplusplus
  179. } /* End of extern "C" { */
  180. #endif /* __cplusplus */
  181. #endif /* _INC_VFW */