summaryrefslogtreecommitdiffstats
path: root/dxsdk/Include/vptype.h
diff options
context:
space:
mode:
authoraap <aap@papnet.eu>2019-06-02 10:25:55 +0200
committerGitHub <noreply@github.com>2019-06-02 10:25:55 +0200
commit9c26e46e17b421288f7653f4c9cff81b4b6cdfb0 (patch)
treec1b34122ddd4be0461a5310c964e8218b9f5781e /dxsdk/Include/vptype.h
parentimplemented splashes; fixed zones (diff)
parentMerge branch 'master' into master (diff)
downloadre3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.gz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.bz2
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.lz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.xz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.zst
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.zip
Diffstat (limited to 'dxsdk/Include/vptype.h')
-rw-r--r--dxsdk/Include/vptype.h78
1 files changed, 78 insertions, 0 deletions
diff --git a/dxsdk/Include/vptype.h b/dxsdk/Include/vptype.h
new file mode 100644
index 00000000..b03baae6
--- /dev/null
+++ b/dxsdk/Include/vptype.h
@@ -0,0 +1,78 @@
+//------------------------------------------------------------------------------
+// File: VPType.h
+//
+// Desc: This file includes all the data structures defined for the IVPConfig
+// interface.
+//
+// Copyright (c) 1997-2001, Microsoft Corporation. All rights reserved.
+//------------------------------------------------------------------------------
+
+
+#ifndef __IVPType__
+#define __IVPType__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ // enum to specify the criterion, which the vpmixer is supposed to use
+ // in order to select the video format
+ typedef enum _AMVP_SELECT_FORMAT_BY
+ {
+ AMVP_DO_NOT_CARE,
+ AMVP_BEST_BANDWIDTH,
+ AMVP_INPUT_SAME_AS_OUTPUT
+ } AMVP_SELECT_FORMAT_BY;
+
+ // enum to specify the various mode
+ typedef enum _AMVP_MODE
+ {
+ AMVP_MODE_WEAVE,
+ AMVP_MODE_BOBINTERLEAVED,
+ AMVP_MODE_BOBNONINTERLEAVED,
+ AMVP_MODE_SKIPEVEN,
+ AMVP_MODE_SKIPODD
+ } AMVP_MODE;
+
+ // struct to specify the width and height. The context could be anything
+ // such as scaling cropping etc.
+ typedef struct _AMVPSIZE
+ {
+ DWORD dwWidth; // the width
+ DWORD dwHeight; // the height
+ } AMVPSIZE, *LPAMVPSIZE;
+
+ // struct to specify the dimensional characteristics of the input stream
+ typedef struct _AMVPDIMINFO
+ {
+ DWORD dwFieldWidth; // Field height of the data
+ DWORD dwFieldHeight; // Field width of the data
+ DWORD dwVBIWidth; // Width of the VBI data
+ DWORD dwVBIHeight; // Height of the VBI data
+ RECT rcValidRegion; // The vaild rectangle, used for cropping
+ } AMVPDIMINFO, *LPAMVPDIMINFO;
+
+ // struct to specify the various data specific characteristics of the input stream
+ typedef struct _AMVPDATAINFO
+ {
+ DWORD dwSize; // Size of the struct
+ DWORD dwMicrosecondsPerField; // Time taken by each field
+ AMVPDIMINFO amvpDimInfo; // Dimensional Information
+ DWORD dwPictAspectRatioX; // X dimension of Picture Aspect Ratio
+ DWORD dwPictAspectRatioY; // Y dimension of Picture Aspect Ratio
+ BOOL bEnableDoubleClock; // Videoport should enable double clocking
+ BOOL bEnableVACT; // Videoport should use an external VACT signal
+ BOOL bDataIsInterlaced; // Indicates that the signal is interlaced
+ LONG lHalfLinesOdd; // number of halflines in the odd field
+ BOOL bFieldPolarityInverted; // Device inverts the polarity by default
+ DWORD dwNumLinesInVREF; // Number of lines of data in VREF
+ LONG lHalfLinesEven; // number of halflines in the even field
+ DWORD dwReserved1; // Reserved for future use
+ } AMVPDATAINFO, *LPAMVPDATAINFO;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __IVPType__