Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorDalai Felinto <dfelinto@gmail.com>2018-04-16 15:07:42 +0300
committerDalai Felinto <dfelinto@gmail.com>2018-04-17 18:51:28 +0300
commit159806140fd33e6ddab951c0f6f180cfbf927d38 (patch)
treeda076be3baa4d987fb5935e220a3d901c926e0e7 /intern
parent28b996a9d2090efdd74115a653629ef9d7d871f7 (diff)
Removing Blender Game Engine from Blender 2.8
Folders removed entirely: * //extern/recastnavigation * //intern/decklink * //intern/moto * //source/blender/editors/space_logic * //source/blenderplayer * //source/gameengine This includes DNA data and any reference to the BGE code in Blender itself. We are bumping the subversion. Pending tasks: * Tile/clamp code in image editor draw code. * Viewport drawing code (so much of this will go away because of BI removal that we can wait until then to remove this.
Diffstat (limited to 'intern')
-rw-r--r--intern/CMakeLists.txt8
-rw-r--r--intern/decklink/CMakeLists.txt58
-rw-r--r--intern/decklink/DeckLinkAPI.cpp50
-rw-r--r--intern/decklink/DeckLinkAPI.h56
-rw-r--r--intern/decklink/linux/DeckLinkAPI.h767
-rw-r--r--intern/decklink/linux/DeckLinkAPIConfiguration.h192
-rw-r--r--intern/decklink/linux/DeckLinkAPIDeckControl.h215
-rw-r--r--intern/decklink/linux/DeckLinkAPIDiscovery.h71
-rw-r--r--intern/decklink/linux/DeckLinkAPIDispatch.cpp148
-rw-r--r--intern/decklink/linux/DeckLinkAPIModes.h191
-rw-r--r--intern/decklink/linux/DeckLinkAPITypes.h110
-rw-r--r--intern/decklink/linux/DeckLinkAPIVersion.h37
-rw-r--r--intern/decklink/linux/LinuxCOM.h100
-rw-r--r--intern/decklink/win/DeckLinkAPI_h.h13323
-rw-r--r--intern/decklink/win/DeckLinkAPI_i.c343
-rw-r--r--intern/moto/CMakeLists.txt77
-rw-r--r--intern/moto/include/MT_CmMatrix4x4.h148
-rw-r--r--intern/moto/include/MT_Matrix3x3.h276
-rw-r--r--intern/moto/include/MT_Matrix3x3.inl128
-rw-r--r--intern/moto/include/MT_Matrix4x4.h262
-rw-r--r--intern/moto/include/MT_Matrix4x4.inl108
-rw-r--r--intern/moto/include/MT_MinMax.h71
-rw-r--r--intern/moto/include/MT_Optimize.h43
-rw-r--r--intern/moto/include/MT_Point2.h83
-rw-r--r--intern/moto/include/MT_Point2.inl54
-rw-r--r--intern/moto/include/MT_Point3.h84
-rw-r--r--intern/moto/include/MT_Point3.inl59
-rw-r--r--intern/moto/include/MT_Quaternion.h114
-rw-r--r--intern/moto/include/MT_Quaternion.inl100
-rw-r--r--intern/moto/include/MT_Scalar.h96
-rw-r--r--intern/moto/include/MT_Stream.h59
-rw-r--r--intern/moto/include/MT_Transform.h190
-rw-r--r--intern/moto/include/MT_Tuple2.h111
-rw-r--r--intern/moto/include/MT_Tuple3.h116
-rw-r--r--intern/moto/include/MT_Tuple4.h126
-rw-r--r--intern/moto/include/MT_Vector2.h114
-rw-r--r--intern/moto/include/MT_Vector2.inl89
-rw-r--r--intern/moto/include/MT_Vector3.h120
-rw-r--r--intern/moto/include/MT_Vector3.inl141
-rw-r--r--intern/moto/include/MT_Vector4.h103
-rw-r--r--intern/moto/include/MT_Vector4.inl80
-rw-r--r--intern/moto/include/MT_assert.h103
-rw-r--r--intern/moto/include/MT_random.h44
-rw-r--r--intern/moto/intern/MT_Assert.cpp68
-rw-r--r--intern/moto/intern/MT_CmMatrix4x4.cpp206
-rw-r--r--intern/moto/intern/MT_Matrix3x3.cpp38
-rw-r--r--intern/moto/intern/MT_Matrix4x4.cpp38
-rw-r--r--intern/moto/intern/MT_Point3.cpp38
-rw-r--r--intern/moto/intern/MT_Quaternion.cpp38
-rw-r--r--intern/moto/intern/MT_Transform.cpp139
-rw-r--r--intern/moto/intern/MT_Vector2.cpp38
-rw-r--r--intern/moto/intern/MT_Vector3.cpp38
-rw-r--r--intern/moto/intern/MT_Vector4.cpp38
-rw-r--r--intern/moto/intern/MT_random.cpp143
-rw-r--r--intern/string/CMakeLists.txt1
-rw-r--r--intern/string/STR_HashedString.h158
56 files changed, 0 insertions, 19749 deletions
diff --git a/intern/CMakeLists.txt b/intern/CMakeLists.txt
index 4b3ccfc808a..582ef480cd2 100644
--- a/intern/CMakeLists.txt
+++ b/intern/CMakeLists.txt
@@ -36,10 +36,6 @@ add_subdirectory(glew-mx)
add_subdirectory(eigen)
add_subdirectory(gawain)
-if(WITH_GAMEENGINE_DECKLINK)
- add_subdirectory(decklink)
-endif()
-
if(WITH_AUDASPACE)
add_subdirectory(audaspace)
endif()
@@ -64,10 +60,6 @@ if(WITH_IK_ITASC)
add_subdirectory(itasc)
endif()
-if(WITH_GAMEENGINE)
- add_subdirectory(moto)
-endif()
-
if(WITH_CYCLES)
add_subdirectory(cycles)
endif()
diff --git a/intern/decklink/CMakeLists.txt b/intern/decklink/CMakeLists.txt
deleted file mode 100644
index b7727cbc32a..00000000000
--- a/intern/decklink/CMakeLists.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-#
-# The Original Code is Copyright (C) 2015, Blender Foundation
-# All rights reserved.
-#
-# The Original Code is: all of this file.
-#
-# Contributor(s): Blender Foundation.
-#
-# ***** END GPL LICENSE BLOCK *****
-
-set(INC
-)
-
-set(INC_SYS
-)
-
-set(SRC
- DeckLinkAPI.cpp
- DeckLinkAPI.h
-)
-
-if(WIN32)
- list(APPEND SRC
- win/DeckLinkAPI_h.h
- win/DeckLinkAPI_i.c
- )
-endif()
-
-if(UNIX AND NOT APPLE)
- list(APPEND SRC
- linux/DeckLinkAPI.h
- linux/DeckLinkAPIConfiguration.h
- linux/DeckLinkAPIDeckControl.h
- linux/DeckLinkAPIDiscovery.h
- linux/DeckLinkAPIDispatch.cpp
- linux/DeckLinkAPIModes.h
- linux/DeckLinkAPIVersion.h
- linux/DeckLinkAPITypes.h
- linux/LinuxCOM.h
- )
-endif()
-
-blender_add_lib(bf_intern_decklink "${SRC}" "${INC}" "${INC_SYS}")
diff --git a/intern/decklink/DeckLinkAPI.cpp b/intern/decklink/DeckLinkAPI.cpp
deleted file mode 100644
index aff25af70eb..00000000000
--- a/intern/decklink/DeckLinkAPI.cpp
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2015, Blender Foundation
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): Blender Foundation.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file decklink/DeckLinkAPI.cpp
- * \ingroup decklink
- */
-
-#include "DeckLinkAPI.h"
-
-#ifdef WIN32
-IDeckLinkIterator* BMD_CreateDeckLinkIterator(void)
-{
- HRESULT result;
- IDeckLinkIterator* pDLIterator = NULL;
-
- result = CoCreateInstance(CLSID_CDeckLinkIterator, NULL, CLSCTX_ALL, IID_IDeckLinkIterator, (void**)&pDLIterator);
- if (FAILED(result))
- return NULL;
- return pDLIterator;
-}
-#else
-IDeckLinkIterator* BMD_CreateDeckLinkIterator(void)
-{
- return CreateDeckLinkIteratorInstance();
-}
-#endif // WIN32
diff --git a/intern/decklink/DeckLinkAPI.h b/intern/decklink/DeckLinkAPI.h
deleted file mode 100644
index 2a429c18c3c..00000000000
--- a/intern/decklink/DeckLinkAPI.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2015, Blender Foundation
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): Blender Foundation.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file decklink/DeckLinkAPI.h
- * \ingroup decklink
- */
-
-#ifndef __DECKLINKAPI_H__
-#define __DECKLINKAPI_H__
-
-/* Include the OS specific Declink headers */
-
-#ifdef WIN32
-# include <windows.h>
-# include <objbase.h>
-# include <comutil.h>
-# include "win/DeckLinkAPI_h.h"
- typedef unsigned int dl_size_t;
-#elif defined(__APPLE__)
-# error "Decklink not supported in OSX"
-#else
-# include "linux/DeckLinkAPI.h"
- /* Windows COM API uses BOOL, linux uses bool */
-# define BOOL bool
- typedef uint32_t dl_size_t;
-#endif
-
-
-/* OS independent function to get the device iterator */
-IDeckLinkIterator* BMD_CreateDeckLinkIterator(void);
-
-#endif /* __DECKLINKAPI_H__ */
diff --git a/intern/decklink/linux/DeckLinkAPI.h b/intern/decklink/linux/DeckLinkAPI.h
deleted file mode 100644
index 08bfba39994..00000000000
--- a/intern/decklink/linux/DeckLinkAPI.h
+++ /dev/null
@@ -1,767 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPI_H
-#define BMD_DECKLINKAPI_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-/* DeckLink API */
-
-#include <stdint.h>
-#include "LinuxCOM.h"
-
-#include "DeckLinkAPITypes.h"
-#include "DeckLinkAPIModes.h"
-#include "DeckLinkAPIDiscovery.h"
-#include "DeckLinkAPIConfiguration.h"
-#include "DeckLinkAPIDeckControl.h"
-
-#define BLACKMAGIC_DECKLINK_API_MAGIC 1
-
-// Type Declarations
-
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLinkVideoOutputCallback = /* 20AA5225-1958-47CB-820B-80A8D521A6EE */ {0x20,0xAA,0x52,0x25,0x19,0x58,0x47,0xCB,0x82,0x0B,0x80,0xA8,0xD5,0x21,0xA6,0xEE};
-BMD_CONST REFIID IID_IDeckLinkInputCallback = /* DD04E5EC-7415-42AB-AE4A-E80C4DFC044A */ {0xDD,0x04,0xE5,0xEC,0x74,0x15,0x42,0xAB,0xAE,0x4A,0xE8,0x0C,0x4D,0xFC,0x04,0x4A};
-BMD_CONST REFIID IID_IDeckLinkMemoryAllocator = /* B36EB6E7-9D29-4AA8-92EF-843B87A289E8 */ {0xB3,0x6E,0xB6,0xE7,0x9D,0x29,0x4A,0xA8,0x92,0xEF,0x84,0x3B,0x87,0xA2,0x89,0xE8};
-BMD_CONST REFIID IID_IDeckLinkAudioOutputCallback = /* 403C681B-7F46-4A12-B993-2BB127084EE6 */ {0x40,0x3C,0x68,0x1B,0x7F,0x46,0x4A,0x12,0xB9,0x93,0x2B,0xB1,0x27,0x08,0x4E,0xE6};
-BMD_CONST REFIID IID_IDeckLinkIterator = /* 50FB36CD-3063-4B73-BDBB-958087F2D8BA */ {0x50,0xFB,0x36,0xCD,0x30,0x63,0x4B,0x73,0xBD,0xBB,0x95,0x80,0x87,0xF2,0xD8,0xBA};
-BMD_CONST REFIID IID_IDeckLinkAPIInformation = /* 7BEA3C68-730D-4322-AF34-8A7152B532A4 */ {0x7B,0xEA,0x3C,0x68,0x73,0x0D,0x43,0x22,0xAF,0x34,0x8A,0x71,0x52,0xB5,0x32,0xA4};
-BMD_CONST REFIID IID_IDeckLinkOutput = /* CC5C8A6E-3F2F-4B3A-87EA-FD78AF300564 */ {0xCC,0x5C,0x8A,0x6E,0x3F,0x2F,0x4B,0x3A,0x87,0xEA,0xFD,0x78,0xAF,0x30,0x05,0x64};
-BMD_CONST REFIID IID_IDeckLinkInput = /* AF22762B-DFAC-4846-AA79-FA8883560995 */ {0xAF,0x22,0x76,0x2B,0xDF,0xAC,0x48,0x46,0xAA,0x79,0xFA,0x88,0x83,0x56,0x09,0x95};
-BMD_CONST REFIID IID_IDeckLinkVideoFrame = /* 3F716FE0-F023-4111-BE5D-EF4414C05B17 */ {0x3F,0x71,0x6F,0xE0,0xF0,0x23,0x41,0x11,0xBE,0x5D,0xEF,0x44,0x14,0xC0,0x5B,0x17};
-BMD_CONST REFIID IID_IDeckLinkMutableVideoFrame = /* 69E2639F-40DA-4E19-B6F2-20ACE815C390 */ {0x69,0xE2,0x63,0x9F,0x40,0xDA,0x4E,0x19,0xB6,0xF2,0x20,0xAC,0xE8,0x15,0xC3,0x90};
-BMD_CONST REFIID IID_IDeckLinkVideoFrame3DExtensions = /* DA0F7E4A-EDC7-48A8-9CDD-2DB51C729CD7 */ {0xDA,0x0F,0x7E,0x4A,0xED,0xC7,0x48,0xA8,0x9C,0xDD,0x2D,0xB5,0x1C,0x72,0x9C,0xD7};
-BMD_CONST REFIID IID_IDeckLinkVideoInputFrame = /* 05CFE374-537C-4094-9A57-680525118F44 */ {0x05,0xCF,0xE3,0x74,0x53,0x7C,0x40,0x94,0x9A,0x57,0x68,0x05,0x25,0x11,0x8F,0x44};
-BMD_CONST REFIID IID_IDeckLinkVideoFrameAncillary = /* 732E723C-D1A4-4E29-9E8E-4A88797A0004 */ {0x73,0x2E,0x72,0x3C,0xD1,0xA4,0x4E,0x29,0x9E,0x8E,0x4A,0x88,0x79,0x7A,0x00,0x04};
-BMD_CONST REFIID IID_IDeckLinkAudioInputPacket = /* E43D5870-2894-11DE-8C30-0800200C9A66 */ {0xE4,0x3D,0x58,0x70,0x28,0x94,0x11,0xDE,0x8C,0x30,0x08,0x00,0x20,0x0C,0x9A,0x66};
-BMD_CONST REFIID IID_IDeckLinkScreenPreviewCallback = /* B1D3F49A-85FE-4C5D-95C8-0B5D5DCCD438 */ {0xB1,0xD3,0xF4,0x9A,0x85,0xFE,0x4C,0x5D,0x95,0xC8,0x0B,0x5D,0x5D,0xCC,0xD4,0x38};
-BMD_CONST REFIID IID_IDeckLinkGLScreenPreviewHelper = /* 504E2209-CAC7-4C1A-9FB4-C5BB6274D22F */ {0x50,0x4E,0x22,0x09,0xCA,0xC7,0x4C,0x1A,0x9F,0xB4,0xC5,0xBB,0x62,0x74,0xD2,0x2F};
-BMD_CONST REFIID IID_IDeckLinkNotificationCallback = /* B002A1EC-070D-4288-8289-BD5D36E5FF0D */ {0xB0,0x02,0xA1,0xEC,0x07,0x0D,0x42,0x88,0x82,0x89,0xBD,0x5D,0x36,0xE5,0xFF,0x0D};
-BMD_CONST REFIID IID_IDeckLinkNotification = /* 0A1FB207-E215-441B-9B19-6FA1575946C5 */ {0x0A,0x1F,0xB2,0x07,0xE2,0x15,0x44,0x1B,0x9B,0x19,0x6F,0xA1,0x57,0x59,0x46,0xC5};
-BMD_CONST REFIID IID_IDeckLinkAttributes = /* ABC11843-D966-44CB-96E2-A1CB5D3135C4 */ {0xAB,0xC1,0x18,0x43,0xD9,0x66,0x44,0xCB,0x96,0xE2,0xA1,0xCB,0x5D,0x31,0x35,0xC4};
-BMD_CONST REFIID IID_IDeckLinkKeyer = /* 89AFCAF5-65F8-421E-98F7-96FE5F5BFBA3 */ {0x89,0xAF,0xCA,0xF5,0x65,0xF8,0x42,0x1E,0x98,0xF7,0x96,0xFE,0x5F,0x5B,0xFB,0xA3};
-BMD_CONST REFIID IID_IDeckLinkVideoConversion = /* 3BBCB8A2-DA2C-42D9-B5D8-88083644E99A */ {0x3B,0xBC,0xB8,0xA2,0xDA,0x2C,0x42,0xD9,0xB5,0xD8,0x88,0x08,0x36,0x44,0xE9,0x9A};
-BMD_CONST REFIID IID_IDeckLinkDeviceNotificationCallback = /* 4997053B-0ADF-4CC8-AC70-7A50C4BE728F */ {0x49,0x97,0x05,0x3B,0x0A,0xDF,0x4C,0xC8,0xAC,0x70,0x7A,0x50,0xC4,0xBE,0x72,0x8F};
-BMD_CONST REFIID IID_IDeckLinkDiscovery = /* CDBF631C-BC76-45FA-B44D-C55059BC6101 */ {0xCD,0xBF,0x63,0x1C,0xBC,0x76,0x45,0xFA,0xB4,0x4D,0xC5,0x50,0x59,0xBC,0x61,0x01};
-
-/* Enum BMDVideoOutputFlags - Flags to control the output of ancillary data along with video. */
-
-typedef uint32_t BMDVideoOutputFlags;
-enum _BMDVideoOutputFlags {
- bmdVideoOutputFlagDefault = 0,
- bmdVideoOutputVANC = 1 << 0,
- bmdVideoOutputVITC = 1 << 1,
- bmdVideoOutputRP188 = 1 << 2,
- bmdVideoOutputDualStream3D = 1 << 4
-};
-
-/* Enum BMDFrameFlags - Frame flags */
-
-typedef uint32_t BMDFrameFlags;
-enum _BMDFrameFlags {
- bmdFrameFlagDefault = 0,
- bmdFrameFlagFlipVertical = 1 << 0,
-
- /* Flags that are applicable only to instances of IDeckLinkVideoInputFrame */
-
- bmdFrameHasNoInputSource = 1 << 31
-};
-
-/* Enum BMDVideoInputFlags - Flags applicable to video input */
-
-typedef uint32_t BMDVideoInputFlags;
-enum _BMDVideoInputFlags {
- bmdVideoInputFlagDefault = 0,
- bmdVideoInputEnableFormatDetection = 1 << 0,
- bmdVideoInputDualStream3D = 1 << 1
-};
-
-/* Enum BMDVideoInputFormatChangedEvents - Bitmask passed to the VideoInputFormatChanged notification to identify the properties of the input signal that have changed */
-
-typedef uint32_t BMDVideoInputFormatChangedEvents;
-enum _BMDVideoInputFormatChangedEvents {
- bmdVideoInputDisplayModeChanged = 1 << 0,
- bmdVideoInputFieldDominanceChanged = 1 << 1,
- bmdVideoInputColorspaceChanged = 1 << 2
-};
-
-/* Enum BMDDetectedVideoInputFormatFlags - Flags passed to the VideoInputFormatChanged notification to describe the detected video input signal */
-
-typedef uint32_t BMDDetectedVideoInputFormatFlags;
-enum _BMDDetectedVideoInputFormatFlags {
- bmdDetectedVideoInputYCbCr422 = 1 << 0,
- bmdDetectedVideoInputRGB444 = 1 << 1,
- bmdDetectedVideoInputDualStream3D = 1 << 2
-};
-
-/* Enum BMDDeckLinkCapturePassthroughMode - Enumerates whether the video output is electrically connected to the video input or if the clean switching mode is enabled */
-
-typedef uint32_t BMDDeckLinkCapturePassthroughMode;
-enum _BMDDeckLinkCapturePassthroughMode {
- bmdDeckLinkCapturePassthroughModeDirect = /* 'pdir' */ 0x70646972,
- bmdDeckLinkCapturePassthroughModeCleanSwitch = /* 'pcln' */ 0x70636C6E
-};
-
-/* Enum BMDOutputFrameCompletionResult - Frame Completion Callback */
-
-typedef uint32_t BMDOutputFrameCompletionResult;
-enum _BMDOutputFrameCompletionResult {
- bmdOutputFrameCompleted,
- bmdOutputFrameDisplayedLate,
- bmdOutputFrameDropped,
- bmdOutputFrameFlushed
-};
-
-/* Enum BMDReferenceStatus - GenLock input status */
-
-typedef uint32_t BMDReferenceStatus;
-enum _BMDReferenceStatus {
- bmdReferenceNotSupportedByHardware = 1 << 0,
- bmdReferenceLocked = 1 << 1
-};
-
-/* Enum BMDAudioSampleRate - Audio sample rates supported for output/input */
-
-typedef uint32_t BMDAudioSampleRate;
-enum _BMDAudioSampleRate {
- bmdAudioSampleRate48kHz = 48000
-};
-
-/* Enum BMDAudioSampleType - Audio sample sizes supported for output/input */
-
-typedef uint32_t BMDAudioSampleType;
-enum _BMDAudioSampleType {
- bmdAudioSampleType16bitInteger = 16,
- bmdAudioSampleType32bitInteger = 32
-};
-
-/* Enum BMDAudioOutputStreamType - Audio output stream type */
-
-typedef uint32_t BMDAudioOutputStreamType;
-enum _BMDAudioOutputStreamType {
- bmdAudioOutputStreamContinuous,
- bmdAudioOutputStreamContinuousDontResample,
- bmdAudioOutputStreamTimestamped
-};
-
-/* Enum BMDDisplayModeSupport - Output mode supported flags */
-
-typedef uint32_t BMDDisplayModeSupport;
-enum _BMDDisplayModeSupport {
- bmdDisplayModeNotSupported = 0,
- bmdDisplayModeSupported,
- bmdDisplayModeSupportedWithConversion
-};
-
-/* Enum BMDTimecodeFormat - Timecode formats for frame metadata */
-
-typedef uint32_t BMDTimecodeFormat;
-enum _BMDTimecodeFormat {
- bmdTimecodeRP188VITC1 = /* 'rpv1' */ 0x72707631, // RP188 timecode where DBB1 equals VITC1 (line 9)
- bmdTimecodeRP188VITC2 = /* 'rp12' */ 0x72703132, // RP188 timecode where DBB1 equals VITC2 (line 9 for progressive or line 571 for interlaced/PsF)
- bmdTimecodeRP188LTC = /* 'rplt' */ 0x72706C74, // RP188 timecode where DBB1 equals LTC (line 10)
- bmdTimecodeRP188Any = /* 'rp18' */ 0x72703138, // For capture: return the first valid timecode in {VITC1, LTC ,VITC2} - For playback: set the timecode as VITC1
- bmdTimecodeVITC = /* 'vitc' */ 0x76697463,
- bmdTimecodeVITCField2 = /* 'vit2' */ 0x76697432,
- bmdTimecodeSerial = /* 'seri' */ 0x73657269
-};
-
-/* Enum BMDAnalogVideoFlags - Analog video display flags */
-
-typedef uint32_t BMDAnalogVideoFlags;
-enum _BMDAnalogVideoFlags {
- bmdAnalogVideoFlagCompositeSetup75 = 1 << 0,
- bmdAnalogVideoFlagComponentBetacamLevels = 1 << 1
-};
-
-/* Enum BMDAudioOutputAnalogAESSwitch - Audio output Analog/AESEBU switch */
-
-typedef uint32_t BMDAudioOutputAnalogAESSwitch;
-enum _BMDAudioOutputAnalogAESSwitch {
- bmdAudioOutputSwitchAESEBU = /* 'aes ' */ 0x61657320,
- bmdAudioOutputSwitchAnalog = /* 'anlg' */ 0x616E6C67
-};
-
-/* Enum BMDVideoOutputConversionMode - Video/audio conversion mode */
-
-typedef uint32_t BMDVideoOutputConversionMode;
-enum _BMDVideoOutputConversionMode {
- bmdNoVideoOutputConversion = /* 'none' */ 0x6E6F6E65,
- bmdVideoOutputLetterboxDownconversion = /* 'ltbx' */ 0x6C746278,
- bmdVideoOutputAnamorphicDownconversion = /* 'amph' */ 0x616D7068,
- bmdVideoOutputHD720toHD1080Conversion = /* '720c' */ 0x37323063,
- bmdVideoOutputHardwareLetterboxDownconversion = /* 'HWlb' */ 0x48576C62,
- bmdVideoOutputHardwareAnamorphicDownconversion = /* 'HWam' */ 0x4857616D,
- bmdVideoOutputHardwareCenterCutDownconversion = /* 'HWcc' */ 0x48576363,
- bmdVideoOutputHardware720p1080pCrossconversion = /* 'xcap' */ 0x78636170,
- bmdVideoOutputHardwareAnamorphic720pUpconversion = /* 'ua7p' */ 0x75613770,
- bmdVideoOutputHardwareAnamorphic1080iUpconversion = /* 'ua1i' */ 0x75613169,
- bmdVideoOutputHardwareAnamorphic149To720pUpconversion = /* 'u47p' */ 0x75343770,
- bmdVideoOutputHardwareAnamorphic149To1080iUpconversion = /* 'u41i' */ 0x75343169,
- bmdVideoOutputHardwarePillarbox720pUpconversion = /* 'up7p' */ 0x75703770,
- bmdVideoOutputHardwarePillarbox1080iUpconversion = /* 'up1i' */ 0x75703169
-};
-
-/* Enum BMDVideoInputConversionMode - Video input conversion mode */
-
-typedef uint32_t BMDVideoInputConversionMode;
-enum _BMDVideoInputConversionMode {
- bmdNoVideoInputConversion = /* 'none' */ 0x6E6F6E65,
- bmdVideoInputLetterboxDownconversionFromHD1080 = /* '10lb' */ 0x31306C62,
- bmdVideoInputAnamorphicDownconversionFromHD1080 = /* '10am' */ 0x3130616D,
- bmdVideoInputLetterboxDownconversionFromHD720 = /* '72lb' */ 0x37326C62,
- bmdVideoInputAnamorphicDownconversionFromHD720 = /* '72am' */ 0x3732616D,
- bmdVideoInputLetterboxUpconversion = /* 'lbup' */ 0x6C627570,
- bmdVideoInputAnamorphicUpconversion = /* 'amup' */ 0x616D7570
-};
-
-/* Enum BMDVideo3DPackingFormat - Video 3D packing format */
-
-typedef uint32_t BMDVideo3DPackingFormat;
-enum _BMDVideo3DPackingFormat {
- bmdVideo3DPackingSidebySideHalf = /* 'sbsh' */ 0x73627368,
- bmdVideo3DPackingLinebyLine = /* 'lbyl' */ 0x6C62796C,
- bmdVideo3DPackingTopAndBottom = /* 'tabo' */ 0x7461626F,
- bmdVideo3DPackingFramePacking = /* 'frpk' */ 0x6672706B,
- bmdVideo3DPackingLeftOnly = /* 'left' */ 0x6C656674,
- bmdVideo3DPackingRightOnly = /* 'righ' */ 0x72696768
-};
-
-/* Enum BMDIdleVideoOutputOperation - Video output operation when not playing video */
-
-typedef uint32_t BMDIdleVideoOutputOperation;
-enum _BMDIdleVideoOutputOperation {
- bmdIdleVideoOutputBlack = /* 'blac' */ 0x626C6163,
- bmdIdleVideoOutputLastFrame = /* 'lafa' */ 0x6C616661,
- bmdIdleVideoOutputDesktop = /* 'desk' */ 0x6465736B
-};
-
-/* Enum BMDDeckLinkAttributeID - DeckLink Attribute ID */
-
-typedef uint32_t BMDDeckLinkAttributeID;
-enum _BMDDeckLinkAttributeID {
-
- /* Flags */
-
- BMDDeckLinkSupportsInternalKeying = /* 'keyi' */ 0x6B657969,
- BMDDeckLinkSupportsExternalKeying = /* 'keye' */ 0x6B657965,
- BMDDeckLinkSupportsHDKeying = /* 'keyh' */ 0x6B657968,
- BMDDeckLinkSupportsInputFormatDetection = /* 'infd' */ 0x696E6664,
- BMDDeckLinkHasReferenceInput = /* 'hrin' */ 0x6872696E,
- BMDDeckLinkHasSerialPort = /* 'hspt' */ 0x68737074,
- BMDDeckLinkHasAnalogVideoOutputGain = /* 'avog' */ 0x61766F67,
- BMDDeckLinkCanOnlyAdjustOverallVideoOutputGain = /* 'ovog' */ 0x6F766F67,
- BMDDeckLinkHasVideoInputAntiAliasingFilter = /* 'aafl' */ 0x6161666C,
- BMDDeckLinkHasBypass = /* 'byps' */ 0x62797073,
- BMDDeckLinkSupportsDesktopDisplay = /* 'extd' */ 0x65787464,
- BMDDeckLinkSupportsClockTimingAdjustment = /* 'ctad' */ 0x63746164,
- BMDDeckLinkSupportsFullDuplex = /* 'fdup' */ 0x66647570,
- BMDDeckLinkSupportsFullFrameReferenceInputTimingOffset = /* 'frin' */ 0x6672696E,
- BMDDeckLinkSupportsSMPTELevelAOutput = /* 'lvla' */ 0x6C766C61,
- BMDDeckLinkSupportsDualLinkSDI = /* 'sdls' */ 0x73646C73,
- BMDDeckLinkSupportsIdleOutput = /* 'idou' */ 0x69646F75,
-
- /* Integers */
-
- BMDDeckLinkMaximumAudioChannels = /* 'mach' */ 0x6D616368,
- BMDDeckLinkMaximumAnalogAudioChannels = /* 'aach' */ 0x61616368,
- BMDDeckLinkNumberOfSubDevices = /* 'nsbd' */ 0x6E736264,
- BMDDeckLinkSubDeviceIndex = /* 'subi' */ 0x73756269,
- BMDDeckLinkPersistentID = /* 'peid' */ 0x70656964,
- BMDDeckLinkTopologicalID = /* 'toid' */ 0x746F6964,
- BMDDeckLinkVideoOutputConnections = /* 'vocn' */ 0x766F636E,
- BMDDeckLinkVideoInputConnections = /* 'vicn' */ 0x7669636E,
- BMDDeckLinkAudioOutputConnections = /* 'aocn' */ 0x616F636E,
- BMDDeckLinkAudioInputConnections = /* 'aicn' */ 0x6169636E,
- BMDDeckLinkDeviceBusyState = /* 'dbst' */ 0x64627374,
- BMDDeckLinkVideoIOSupport = /* 'vios' */ 0x76696F73, // Returns a BMDVideoIOSupport bit field
-
- /* Floats */
-
- BMDDeckLinkVideoInputGainMinimum = /* 'vigm' */ 0x7669676D,
- BMDDeckLinkVideoInputGainMaximum = /* 'vigx' */ 0x76696778,
- BMDDeckLinkVideoOutputGainMinimum = /* 'vogm' */ 0x766F676D,
- BMDDeckLinkVideoOutputGainMaximum = /* 'vogx' */ 0x766F6778,
-
- /* Strings */
-
- BMDDeckLinkSerialPortDeviceName = /* 'slpn' */ 0x736C706E
-};
-
-/* Enum BMDDeckLinkAPIInformationID - DeckLinkAPI information ID */
-
-typedef uint32_t BMDDeckLinkAPIInformationID;
-enum _BMDDeckLinkAPIInformationID {
- BMDDeckLinkAPIVersion = /* 'vers' */ 0x76657273
-};
-
-/* Enum BMDDeviceBusyState - Current device busy state */
-
-typedef uint32_t BMDDeviceBusyState;
-enum _BMDDeviceBusyState {
- bmdDeviceCaptureBusy = 1 << 0,
- bmdDevicePlaybackBusy = 1 << 1,
- bmdDeviceSerialPortBusy = 1 << 2
-};
-
-/* Enum BMDVideoIOSupport - Device video input/output support */
-
-typedef uint32_t BMDVideoIOSupport;
-enum _BMDVideoIOSupport {
- bmdDeviceSupportsCapture = 1 << 0,
- bmdDeviceSupportsPlayback = 1 << 1
-};
-
-/* Enum BMD3DPreviewFormat - Linked Frame preview format */
-
-typedef uint32_t BMD3DPreviewFormat;
-enum _BMD3DPreviewFormat {
- bmd3DPreviewFormatDefault = /* 'defa' */ 0x64656661,
- bmd3DPreviewFormatLeftOnly = /* 'left' */ 0x6C656674,
- bmd3DPreviewFormatRightOnly = /* 'righ' */ 0x72696768,
- bmd3DPreviewFormatSideBySide = /* 'side' */ 0x73696465,
- bmd3DPreviewFormatTopBottom = /* 'topb' */ 0x746F7062
-};
-
-/* Enum BMDNotifications - Events that can be subscribed through IDeckLinkNotification */
-
-typedef uint32_t BMDNotifications;
-enum _BMDNotifications {
- bmdPreferencesChanged = /* 'pref' */ 0x70726566
-};
-
-#if defined(__cplusplus)
-
-// Forward Declarations
-
-class IDeckLinkVideoOutputCallback;
-class IDeckLinkInputCallback;
-class IDeckLinkMemoryAllocator;
-class IDeckLinkAudioOutputCallback;
-class IDeckLinkIterator;
-class IDeckLinkAPIInformation;
-class IDeckLinkOutput;
-class IDeckLinkInput;
-class IDeckLinkVideoFrame;
-class IDeckLinkMutableVideoFrame;
-class IDeckLinkVideoFrame3DExtensions;
-class IDeckLinkVideoInputFrame;
-class IDeckLinkVideoFrameAncillary;
-class IDeckLinkAudioInputPacket;
-class IDeckLinkScreenPreviewCallback;
-class IDeckLinkGLScreenPreviewHelper;
-class IDeckLinkNotificationCallback;
-class IDeckLinkNotification;
-class IDeckLinkAttributes;
-class IDeckLinkKeyer;
-class IDeckLinkVideoConversion;
-class IDeckLinkDeviceNotificationCallback;
-class IDeckLinkDiscovery;
-
-/* Interface IDeckLinkVideoOutputCallback - Frame completion callback. */
-
-class IDeckLinkVideoOutputCallback : public IUnknown
-{
-public:
- virtual HRESULT ScheduledFrameCompleted (/* in */ IDeckLinkVideoFrame *completedFrame, /* in */ BMDOutputFrameCompletionResult result) = 0;
- virtual HRESULT ScheduledPlaybackHasStopped (void) = 0;
-
-protected:
- virtual ~IDeckLinkVideoOutputCallback () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkInputCallback - Frame arrival callback. */
-
-class IDeckLinkInputCallback : public IUnknown
-{
-public:
- virtual HRESULT VideoInputFormatChanged (/* in */ BMDVideoInputFormatChangedEvents notificationEvents, /* in */ IDeckLinkDisplayMode *newDisplayMode, /* in */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
- virtual HRESULT VideoInputFrameArrived (/* in */ IDeckLinkVideoInputFrame* videoFrame, /* in */ IDeckLinkAudioInputPacket* audioPacket) = 0;
-
-protected:
- virtual ~IDeckLinkInputCallback () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkMemoryAllocator - Memory allocator for video frames. */
-
-class IDeckLinkMemoryAllocator : public IUnknown
-{
-public:
- virtual HRESULT AllocateBuffer (/* in */ uint32_t bufferSize, /* out */ void **allocatedBuffer) = 0;
- virtual HRESULT ReleaseBuffer (/* in */ void *buffer) = 0;
-
- virtual HRESULT Commit (void) = 0;
- virtual HRESULT Decommit (void) = 0;
-};
-
-/* Interface IDeckLinkAudioOutputCallback - Optional callback to allow audio samples to be pulled as required. */
-
-class IDeckLinkAudioOutputCallback : public IUnknown
-{
-public:
- virtual HRESULT RenderAudioSamples (/* in */ bool preroll) = 0;
-};
-
-/* Interface IDeckLinkIterator - enumerates installed DeckLink hardware */
-
-class IDeckLinkIterator : public IUnknown
-{
-public:
- virtual HRESULT Next (/* out */ IDeckLink **deckLinkInstance) = 0;
-};
-
-/* Interface IDeckLinkAPIInformation - DeckLinkAPI attribute interface */
-
-class IDeckLinkAPIInformation : public IUnknown
-{
-public:
- virtual HRESULT GetFlag (/* in */ BMDDeckLinkAPIInformationID cfgID, /* out */ bool *value) = 0;
- virtual HRESULT GetInt (/* in */ BMDDeckLinkAPIInformationID cfgID, /* out */ int64_t *value) = 0;
- virtual HRESULT GetFloat (/* in */ BMDDeckLinkAPIInformationID cfgID, /* out */ double *value) = 0;
- virtual HRESULT GetString (/* in */ BMDDeckLinkAPIInformationID cfgID, /* out */ const char **value) = 0;
-
-protected:
- virtual ~IDeckLinkAPIInformation () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkOutput - Created by QueryInterface from IDeckLink. */
-
-class IDeckLinkOutput : public IUnknown
-{
-public:
- virtual HRESULT DoesSupportVideoMode (/* in */ BMDDisplayMode displayMode, /* in */ BMDPixelFormat pixelFormat, /* in */ BMDVideoOutputFlags flags, /* out */ BMDDisplayModeSupport *result, /* out */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
- virtual HRESULT GetDisplayModeIterator (/* out */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT SetScreenPreviewCallback (/* in */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- /* Video Output */
-
- virtual HRESULT EnableVideoOutput (/* in */ BMDDisplayMode displayMode, /* in */ BMDVideoOutputFlags flags) = 0;
- virtual HRESULT DisableVideoOutput (void) = 0;
-
- virtual HRESULT SetVideoOutputFrameMemoryAllocator (/* in */ IDeckLinkMemoryAllocator *theAllocator) = 0;
- virtual HRESULT CreateVideoFrame (/* in */ int32_t width, /* in */ int32_t height, /* in */ int32_t rowBytes, /* in */ BMDPixelFormat pixelFormat, /* in */ BMDFrameFlags flags, /* out */ IDeckLinkMutableVideoFrame **outFrame) = 0;
- virtual HRESULT CreateAncillaryData (/* in */ BMDPixelFormat pixelFormat, /* out */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
-
- virtual HRESULT DisplayVideoFrameSync (/* in */ IDeckLinkVideoFrame *theFrame) = 0;
- virtual HRESULT ScheduleVideoFrame (/* in */ IDeckLinkVideoFrame *theFrame, /* in */ BMDTimeValue displayTime, /* in */ BMDTimeValue displayDuration, /* in */ BMDTimeScale timeScale) = 0;
- virtual HRESULT SetScheduledFrameCompletionCallback (/* in */ IDeckLinkVideoOutputCallback *theCallback) = 0;
- virtual HRESULT GetBufferedVideoFrameCount (/* out */ uint32_t *bufferedFrameCount) = 0;
-
- /* Audio Output */
-
- virtual HRESULT EnableAudioOutput (/* in */ BMDAudioSampleRate sampleRate, /* in */ BMDAudioSampleType sampleType, /* in */ uint32_t channelCount, /* in */ BMDAudioOutputStreamType streamType) = 0;
- virtual HRESULT DisableAudioOutput (void) = 0;
-
- virtual HRESULT WriteAudioSamplesSync (/* in */ void *buffer, /* in */ uint32_t sampleFrameCount, /* out */ uint32_t *sampleFramesWritten) = 0;
-
- virtual HRESULT BeginAudioPreroll (void) = 0;
- virtual HRESULT EndAudioPreroll (void) = 0;
- virtual HRESULT ScheduleAudioSamples (/* in */ void *buffer, /* in */ uint32_t sampleFrameCount, /* in */ BMDTimeValue streamTime, /* in */ BMDTimeScale timeScale, /* out */ uint32_t *sampleFramesWritten) = 0;
-
- virtual HRESULT GetBufferedAudioSampleFrameCount (/* out */ uint32_t *bufferedSampleFrameCount) = 0;
- virtual HRESULT FlushBufferedAudioSamples (void) = 0;
-
- virtual HRESULT SetAudioCallback (/* in */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- /* Output Control */
-
- virtual HRESULT StartScheduledPlayback (/* in */ BMDTimeValue playbackStartTime, /* in */ BMDTimeScale timeScale, /* in */ double playbackSpeed) = 0;
- virtual HRESULT StopScheduledPlayback (/* in */ BMDTimeValue stopPlaybackAtTime, /* out */ BMDTimeValue *actualStopTime, /* in */ BMDTimeScale timeScale) = 0;
- virtual HRESULT IsScheduledPlaybackRunning (/* out */ bool *active) = 0;
- virtual HRESULT GetScheduledStreamTime (/* in */ BMDTimeScale desiredTimeScale, /* out */ BMDTimeValue *streamTime, /* out */ double *playbackSpeed) = 0;
- virtual HRESULT GetReferenceStatus (/* out */ BMDReferenceStatus *referenceStatus) = 0;
-
- /* Hardware Timing */
-
- virtual HRESULT GetHardwareReferenceClock (/* in */ BMDTimeScale desiredTimeScale, /* out */ BMDTimeValue *hardwareTime, /* out */ BMDTimeValue *timeInFrame, /* out */ BMDTimeValue *ticksPerFrame) = 0;
- virtual HRESULT GetFrameCompletionReferenceTimestamp (/* in */ IDeckLinkVideoFrame *theFrame, /* in */ BMDTimeScale desiredTimeScale, /* out */ BMDTimeValue *frameCompletionTimestamp) = 0;
-
-protected:
- virtual ~IDeckLinkOutput () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkInput - Created by QueryInterface from IDeckLink. */
-
-class IDeckLinkInput : public IUnknown
-{
-public:
- virtual HRESULT DoesSupportVideoMode (/* in */ BMDDisplayMode displayMode, /* in */ BMDPixelFormat pixelFormat, /* in */ BMDVideoInputFlags flags, /* out */ BMDDisplayModeSupport *result, /* out */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
- virtual HRESULT GetDisplayModeIterator (/* out */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT SetScreenPreviewCallback (/* in */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- /* Video Input */
-
- virtual HRESULT EnableVideoInput (/* in */ BMDDisplayMode displayMode, /* in */ BMDPixelFormat pixelFormat, /* in */ BMDVideoInputFlags flags) = 0;
- virtual HRESULT DisableVideoInput (void) = 0;
- virtual HRESULT GetAvailableVideoFrameCount (/* out */ uint32_t *availableFrameCount) = 0;
- virtual HRESULT SetVideoInputFrameMemoryAllocator (/* in */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- /* Audio Input */
-
- virtual HRESULT EnableAudioInput (/* in */ BMDAudioSampleRate sampleRate, /* in */ BMDAudioSampleType sampleType, /* in */ uint32_t channelCount) = 0;
- virtual HRESULT DisableAudioInput (void) = 0;
- virtual HRESULT GetAvailableAudioSampleFrameCount (/* out */ uint32_t *availableSampleFrameCount) = 0;
-
- /* Input Control */
-
- virtual HRESULT StartStreams (void) = 0;
- virtual HRESULT StopStreams (void) = 0;
- virtual HRESULT PauseStreams (void) = 0;
- virtual HRESULT FlushStreams (void) = 0;
- virtual HRESULT SetCallback (/* in */ IDeckLinkInputCallback *theCallback) = 0;
-
- /* Hardware Timing */
-
- virtual HRESULT GetHardwareReferenceClock (/* in */ BMDTimeScale desiredTimeScale, /* out */ BMDTimeValue *hardwareTime, /* out */ BMDTimeValue *timeInFrame, /* out */ BMDTimeValue *ticksPerFrame) = 0;
-
-protected:
- virtual ~IDeckLinkInput () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkVideoFrame - Interface to encapsulate a video frame; can be caller-implemented. */
-
-class IDeckLinkVideoFrame : public IUnknown
-{
-public:
- virtual long GetWidth (void) = 0;
- virtual long GetHeight (void) = 0;
- virtual long GetRowBytes (void) = 0;
- virtual BMDPixelFormat GetPixelFormat (void) = 0;
- virtual BMDFrameFlags GetFlags (void) = 0;
- virtual HRESULT GetBytes (/* out */ void **buffer) = 0;
-
- virtual HRESULT GetTimecode (/* in */ BMDTimecodeFormat format, /* out */ IDeckLinkTimecode **timecode) = 0;
- virtual HRESULT GetAncillaryData (/* out */ IDeckLinkVideoFrameAncillary **ancillary) = 0;
-
-protected:
- virtual ~IDeckLinkVideoFrame () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkMutableVideoFrame - Created by IDeckLinkOutput::CreateVideoFrame. */
-
-class IDeckLinkMutableVideoFrame : public IDeckLinkVideoFrame
-{
-public:
- virtual HRESULT SetFlags (/* in */ BMDFrameFlags newFlags) = 0;
-
- virtual HRESULT SetTimecode (/* in */ BMDTimecodeFormat format, /* in */ IDeckLinkTimecode *timecode) = 0;
- virtual HRESULT SetTimecodeFromComponents (/* in */ BMDTimecodeFormat format, /* in */ uint8_t hours, /* in */ uint8_t minutes, /* in */ uint8_t seconds, /* in */ uint8_t frames, /* in */ BMDTimecodeFlags flags) = 0;
- virtual HRESULT SetAncillaryData (/* in */ IDeckLinkVideoFrameAncillary *ancillary) = 0;
- virtual HRESULT SetTimecodeUserBits (/* in */ BMDTimecodeFormat format, /* in */ BMDTimecodeUserBits userBits) = 0;
-
-protected:
- virtual ~IDeckLinkMutableVideoFrame () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkVideoFrame3DExtensions - Optional interface implemented on IDeckLinkVideoFrame to support 3D frames */
-
-class IDeckLinkVideoFrame3DExtensions : public IUnknown
-{
-public:
- virtual BMDVideo3DPackingFormat Get3DPackingFormat (void) = 0;
- virtual HRESULT GetFrameForRightEye (/* out */ IDeckLinkVideoFrame* *rightEyeFrame) = 0;
-
-protected:
- virtual ~IDeckLinkVideoFrame3DExtensions () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkVideoInputFrame - Provided by the IDeckLinkVideoInput frame arrival callback. */
-
-class IDeckLinkVideoInputFrame : public IDeckLinkVideoFrame
-{
-public:
- virtual HRESULT GetStreamTime (/* out */ BMDTimeValue *frameTime, /* out */ BMDTimeValue *frameDuration, /* in */ BMDTimeScale timeScale) = 0;
- virtual HRESULT GetHardwareReferenceTimestamp (/* in */ BMDTimeScale timeScale, /* out */ BMDTimeValue *frameTime, /* out */ BMDTimeValue *frameDuration) = 0;
-
-protected:
- virtual ~IDeckLinkVideoInputFrame () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkVideoFrameAncillary - Obtained through QueryInterface() on an IDeckLinkVideoFrame object. */
-
-class IDeckLinkVideoFrameAncillary : public IUnknown
-{
-public:
-
- virtual HRESULT GetBufferForVerticalBlankingLine (/* in */ uint32_t lineNumber, /* out */ void **buffer) = 0;
- virtual BMDPixelFormat GetPixelFormat (void) = 0;
- virtual BMDDisplayMode GetDisplayMode (void) = 0;
-
-protected:
- virtual ~IDeckLinkVideoFrameAncillary () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkAudioInputPacket - Provided by the IDeckLinkInput callback. */
-
-class IDeckLinkAudioInputPacket : public IUnknown
-{
-public:
- virtual long GetSampleFrameCount (void) = 0;
- virtual HRESULT GetBytes (/* out */ void **buffer) = 0;
- virtual HRESULT GetPacketTime (/* out */ BMDTimeValue *packetTime, /* in */ BMDTimeScale timeScale) = 0;
-
-protected:
- virtual ~IDeckLinkAudioInputPacket () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkScreenPreviewCallback - Screen preview callback */
-
-class IDeckLinkScreenPreviewCallback : public IUnknown
-{
-public:
- virtual HRESULT DrawFrame (/* in */ IDeckLinkVideoFrame *theFrame) = 0;
-
-protected:
- virtual ~IDeckLinkScreenPreviewCallback () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkGLScreenPreviewHelper - Created with CoCreateInstance(). */
-
-class IDeckLinkGLScreenPreviewHelper : public IUnknown
-{
-public:
-
- /* Methods must be called with OpenGL context set */
-
- virtual HRESULT InitializeGL (void) = 0;
- virtual HRESULT PaintGL (void) = 0;
- virtual HRESULT SetFrame (/* in */ IDeckLinkVideoFrame *theFrame) = 0;
- virtual HRESULT Set3DPreviewFormat (/* in */ BMD3DPreviewFormat previewFormat) = 0;
-
-protected:
- virtual ~IDeckLinkGLScreenPreviewHelper () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkNotificationCallback - DeckLink Notification Callback Interface */
-
-class IDeckLinkNotificationCallback : public IUnknown
-{
-public:
- virtual HRESULT Notify (/* in */ BMDNotifications topic, /* in */ uint64_t param1, /* in */ uint64_t param2) = 0;
-};
-
-/* Interface IDeckLinkNotification - DeckLink Notification interface */
-
-class IDeckLinkNotification : public IUnknown
-{
-public:
- virtual HRESULT Subscribe (/* in */ BMDNotifications topic, /* in */ IDeckLinkNotificationCallback *theCallback) = 0;
- virtual HRESULT Unsubscribe (/* in */ BMDNotifications topic, /* in */ IDeckLinkNotificationCallback *theCallback) = 0;
-};
-
-/* Interface IDeckLinkAttributes - DeckLink Attribute interface */
-
-class IDeckLinkAttributes : public IUnknown
-{
-public:
- virtual HRESULT GetFlag (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ bool *value) = 0;
- virtual HRESULT GetInt (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ int64_t *value) = 0;
- virtual HRESULT GetFloat (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ double *value) = 0;
- virtual HRESULT GetString (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ const char **value) = 0;
-
-protected:
- virtual ~IDeckLinkAttributes () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkKeyer - DeckLink Keyer interface */
-
-class IDeckLinkKeyer : public IUnknown
-{
-public:
- virtual HRESULT Enable (/* in */ bool isExternal) = 0;
- virtual HRESULT SetLevel (/* in */ uint8_t level) = 0;
- virtual HRESULT RampUp (/* in */ uint32_t numberOfFrames) = 0;
- virtual HRESULT RampDown (/* in */ uint32_t numberOfFrames) = 0;
- virtual HRESULT Disable (void) = 0;
-
-protected:
- virtual ~IDeckLinkKeyer () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkVideoConversion - Created with CoCreateInstance(). */
-
-class IDeckLinkVideoConversion : public IUnknown
-{
-public:
- virtual HRESULT ConvertFrame (/* in */ IDeckLinkVideoFrame* srcFrame, /* in */ IDeckLinkVideoFrame* dstFrame) = 0;
-
-protected:
- virtual ~IDeckLinkVideoConversion () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkDeviceNotificationCallback - DeckLink device arrival/removal notification callbacks */
-
-class IDeckLinkDeviceNotificationCallback : public IUnknown
-{
-public:
- virtual HRESULT DeckLinkDeviceArrived (/* in */ IDeckLink* deckLinkDevice) = 0;
- virtual HRESULT DeckLinkDeviceRemoved (/* in */ IDeckLink* deckLinkDevice) = 0;
-
-protected:
- virtual ~IDeckLinkDeviceNotificationCallback () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkDiscovery - DeckLink device discovery */
-
-class IDeckLinkDiscovery : public IUnknown
-{
-public:
- virtual HRESULT InstallDeviceNotifications (/* in */ IDeckLinkDeviceNotificationCallback* deviceNotificationCallback) = 0;
- virtual HRESULT UninstallDeviceNotifications (void) = 0;
-
-protected:
- virtual ~IDeckLinkDiscovery () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
- IDeckLinkIterator* CreateDeckLinkIteratorInstance (void);
- IDeckLinkDiscovery* CreateDeckLinkDiscoveryInstance (void);
- IDeckLinkAPIInformation* CreateDeckLinkAPIInformationInstance (void);
- IDeckLinkGLScreenPreviewHelper* CreateOpenGLScreenPreviewHelper (void);
- IDeckLinkVideoConversion* CreateVideoConversionInstance (void);
- bool IsDeckLinkAPIPresent (void);
-}
-
-
-#endif // defined(__cplusplus)
-#endif /* defined(BMD_DECKLINKAPI_H) */
diff --git a/intern/decklink/linux/DeckLinkAPIConfiguration.h b/intern/decklink/linux/DeckLinkAPIConfiguration.h
deleted file mode 100644
index 9d5bc9a9e1b..00000000000
--- a/intern/decklink/linux/DeckLinkAPIConfiguration.h
+++ /dev/null
@@ -1,192 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPICONFIGURATION_H
-#define BMD_DECKLINKAPICONFIGURATION_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-// Type Declarations
-
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLinkConfiguration = /* 1E69FCF6-4203-4936-8076-2A9F4CFD50CB */ {0x1E,0x69,0xFC,0xF6,0x42,0x03,0x49,0x36,0x80,0x76,0x2A,0x9F,0x4C,0xFD,0x50,0xCB};
-
-/* Enum BMDDeckLinkConfigurationID - DeckLink Configuration ID */
-
-typedef uint32_t BMDDeckLinkConfigurationID;
-enum _BMDDeckLinkConfigurationID {
-
- /* Serial port Flags */
-
- bmdDeckLinkConfigSwapSerialRxTx = /* 'ssrt' */ 0x73737274,
-
- /* Video Input/Output Flags */
-
- bmdDeckLinkConfigUse1080pNotPsF = /* 'fpro' */ 0x6670726F,
-
- /* Video Input/Output Integers */
-
- bmdDeckLinkConfigHDMI3DPackingFormat = /* '3dpf' */ 0x33647066,
- bmdDeckLinkConfigBypass = /* 'byps' */ 0x62797073,
- bmdDeckLinkConfigClockTimingAdjustment = /* 'ctad' */ 0x63746164,
-
- /* Audio Input/Output Flags */
-
- bmdDeckLinkConfigAnalogAudioConsumerLevels = /* 'aacl' */ 0x6161636C,
-
- /* Video output flags */
-
- bmdDeckLinkConfigFieldFlickerRemoval = /* 'fdfr' */ 0x66646672,
- bmdDeckLinkConfigHD1080p24ToHD1080i5994Conversion = /* 'to59' */ 0x746F3539,
- bmdDeckLinkConfig444SDIVideoOutput = /* '444o' */ 0x3434346F,
- bmdDeckLinkConfigSingleLinkVideoOutput = /* 'sglo' */ 0x73676C6F,
- bmdDeckLinkConfigBlackVideoOutputDuringCapture = /* 'bvoc' */ 0x62766F63,
- bmdDeckLinkConfigLowLatencyVideoOutput = /* 'llvo' */ 0x6C6C766F,
- bmdDeckLinkConfigDownConversionOnAllAnalogOutput = /* 'caao' */ 0x6361616F,
- bmdDeckLinkConfigSMPTELevelAOutput = /* 'smta' */ 0x736D7461,
-
- /* Video Output Integers */
-
- bmdDeckLinkConfigVideoOutputConnection = /* 'vocn' */ 0x766F636E,
- bmdDeckLinkConfigVideoOutputConversionMode = /* 'vocm' */ 0x766F636D,
- bmdDeckLinkConfigAnalogVideoOutputFlags = /* 'avof' */ 0x61766F66,
- bmdDeckLinkConfigReferenceInputTimingOffset = /* 'glot' */ 0x676C6F74,
- bmdDeckLinkConfigVideoOutputIdleOperation = /* 'voio' */ 0x766F696F,
- bmdDeckLinkConfigDefaultVideoOutputMode = /* 'dvom' */ 0x64766F6D,
- bmdDeckLinkConfigDefaultVideoOutputModeFlags = /* 'dvof' */ 0x64766F66,
-
- /* Video Output Floats */
-
- bmdDeckLinkConfigVideoOutputComponentLumaGain = /* 'oclg' */ 0x6F636C67,
- bmdDeckLinkConfigVideoOutputComponentChromaBlueGain = /* 'occb' */ 0x6F636362,
- bmdDeckLinkConfigVideoOutputComponentChromaRedGain = /* 'occr' */ 0x6F636372,
- bmdDeckLinkConfigVideoOutputCompositeLumaGain = /* 'oilg' */ 0x6F696C67,
- bmdDeckLinkConfigVideoOutputCompositeChromaGain = /* 'oicg' */ 0x6F696367,
- bmdDeckLinkConfigVideoOutputSVideoLumaGain = /* 'oslg' */ 0x6F736C67,
- bmdDeckLinkConfigVideoOutputSVideoChromaGain = /* 'oscg' */ 0x6F736367,
-
- /* Video Input Flags */
-
- bmdDeckLinkConfigVideoInputScanning = /* 'visc' */ 0x76697363, // Applicable to H264 Pro Recorder only
- bmdDeckLinkConfigUseDedicatedLTCInput = /* 'dltc' */ 0x646C7463, // Use timecode from LTC input instead of SDI stream
-
- /* Video Input Integers */
-
- bmdDeckLinkConfigVideoInputConnection = /* 'vicn' */ 0x7669636E,
- bmdDeckLinkConfigAnalogVideoInputFlags = /* 'avif' */ 0x61766966,
- bmdDeckLinkConfigVideoInputConversionMode = /* 'vicm' */ 0x7669636D,
- bmdDeckLinkConfig32PulldownSequenceInitialTimecodeFrame = /* 'pdif' */ 0x70646966,
- bmdDeckLinkConfigVANCSourceLine1Mapping = /* 'vsl1' */ 0x76736C31,
- bmdDeckLinkConfigVANCSourceLine2Mapping = /* 'vsl2' */ 0x76736C32,
- bmdDeckLinkConfigVANCSourceLine3Mapping = /* 'vsl3' */ 0x76736C33,
- bmdDeckLinkConfigCapturePassThroughMode = /* 'cptm' */ 0x6370746D,
-
- /* Video Input Floats */
-
- bmdDeckLinkConfigVideoInputComponentLumaGain = /* 'iclg' */ 0x69636C67,
- bmdDeckLinkConfigVideoInputComponentChromaBlueGain = /* 'iccb' */ 0x69636362,
- bmdDeckLinkConfigVideoInputComponentChromaRedGain = /* 'iccr' */ 0x69636372,
- bmdDeckLinkConfigVideoInputCompositeLumaGain = /* 'iilg' */ 0x69696C67,
- bmdDeckLinkConfigVideoInputCompositeChromaGain = /* 'iicg' */ 0x69696367,
- bmdDeckLinkConfigVideoInputSVideoLumaGain = /* 'islg' */ 0x69736C67,
- bmdDeckLinkConfigVideoInputSVideoChromaGain = /* 'iscg' */ 0x69736367,
-
- /* Audio Input Integers */
-
- bmdDeckLinkConfigAudioInputConnection = /* 'aicn' */ 0x6169636E,
-
- /* Audio Input Floats */
-
- bmdDeckLinkConfigAnalogAudioInputScaleChannel1 = /* 'ais1' */ 0x61697331,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel2 = /* 'ais2' */ 0x61697332,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel3 = /* 'ais3' */ 0x61697333,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel4 = /* 'ais4' */ 0x61697334,
- bmdDeckLinkConfigDigitalAudioInputScale = /* 'dais' */ 0x64616973,
-
- /* Audio Output Integers */
-
- bmdDeckLinkConfigAudioOutputAESAnalogSwitch = /* 'aoaa' */ 0x616F6161,
-
- /* Audio Output Floats */
-
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel1 = /* 'aos1' */ 0x616F7331,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel2 = /* 'aos2' */ 0x616F7332,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel3 = /* 'aos3' */ 0x616F7333,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel4 = /* 'aos4' */ 0x616F7334,
- bmdDeckLinkConfigDigitalAudioOutputScale = /* 'daos' */ 0x64616F73,
-
- /* Device Information Strings */
-
- bmdDeckLinkConfigDeviceInformationLabel = /* 'dila' */ 0x64696C61,
- bmdDeckLinkConfigDeviceInformationSerialNumber = /* 'disn' */ 0x6469736E,
- bmdDeckLinkConfigDeviceInformationCompany = /* 'dico' */ 0x6469636F,
- bmdDeckLinkConfigDeviceInformationPhone = /* 'diph' */ 0x64697068,
- bmdDeckLinkConfigDeviceInformationEmail = /* 'diem' */ 0x6469656D,
- bmdDeckLinkConfigDeviceInformationDate = /* 'dida' */ 0x64696461
-};
-
-// Forward Declarations
-
-class IDeckLinkConfiguration;
-
-/* Interface IDeckLinkConfiguration - DeckLink Configuration interface */
-
-class IDeckLinkConfiguration : public IUnknown
-{
-public:
- virtual HRESULT SetFlag (/* in */ BMDDeckLinkConfigurationID cfgID, /* in */ bool value) = 0;
- virtual HRESULT GetFlag (/* in */ BMDDeckLinkConfigurationID cfgID, /* out */ bool *value) = 0;
- virtual HRESULT SetInt (/* in */ BMDDeckLinkConfigurationID cfgID, /* in */ int64_t value) = 0;
- virtual HRESULT GetInt (/* in */ BMDDeckLinkConfigurationID cfgID, /* out */ int64_t *value) = 0;
- virtual HRESULT SetFloat (/* in */ BMDDeckLinkConfigurationID cfgID, /* in */ double value) = 0;
- virtual HRESULT GetFloat (/* in */ BMDDeckLinkConfigurationID cfgID, /* out */ double *value) = 0;
- virtual HRESULT SetString (/* in */ BMDDeckLinkConfigurationID cfgID, /* in */ const char *value) = 0;
- virtual HRESULT GetString (/* in */ BMDDeckLinkConfigurationID cfgID, /* out */ const char **value) = 0;
- virtual HRESULT WriteConfigurationToPreferences (void) = 0;
-
-protected:
- virtual ~IDeckLinkConfiguration () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
-
-}
-
-
-#endif /* defined(BMD_DECKLINKAPICONFIGURATION_H) */
diff --git a/intern/decklink/linux/DeckLinkAPIDeckControl.h b/intern/decklink/linux/DeckLinkAPIDeckControl.h
deleted file mode 100644
index b83d013129e..00000000000
--- a/intern/decklink/linux/DeckLinkAPIDeckControl.h
+++ /dev/null
@@ -1,215 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPIDECKCONTROL_H
-#define BMD_DECKLINKAPIDECKCONTROL_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-// Type Declarations
-
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLinkDeckControlStatusCallback = /* 53436FFB-B434-4906-BADC-AE3060FFE8EF */ {0x53,0x43,0x6F,0xFB,0xB4,0x34,0x49,0x06,0xBA,0xDC,0xAE,0x30,0x60,0xFF,0xE8,0xEF};
-BMD_CONST REFIID IID_IDeckLinkDeckControl = /* 8E1C3ACE-19C7-4E00-8B92-D80431D958BE */ {0x8E,0x1C,0x3A,0xCE,0x19,0xC7,0x4E,0x00,0x8B,0x92,0xD8,0x04,0x31,0xD9,0x58,0xBE};
-
-/* Enum BMDDeckControlMode - DeckControl mode */
-
-typedef uint32_t BMDDeckControlMode;
-enum _BMDDeckControlMode {
- bmdDeckControlNotOpened = /* 'ntop' */ 0x6E746F70,
- bmdDeckControlVTRControlMode = /* 'vtrc' */ 0x76747263,
- bmdDeckControlExportMode = /* 'expm' */ 0x6578706D,
- bmdDeckControlCaptureMode = /* 'capm' */ 0x6361706D
-};
-
-/* Enum BMDDeckControlEvent - DeckControl event */
-
-typedef uint32_t BMDDeckControlEvent;
-enum _BMDDeckControlEvent {
- bmdDeckControlAbortedEvent = /* 'abte' */ 0x61627465, // This event is triggered when a capture or edit-to-tape operation is aborted.
-
- /* Export-To-Tape events */
-
- bmdDeckControlPrepareForExportEvent = /* 'pfee' */ 0x70666565, // This event is triggered a few frames before reaching the in-point. IDeckLinkInput::StartScheduledPlayback() should be called at this point.
- bmdDeckControlExportCompleteEvent = /* 'exce' */ 0x65786365, // This event is triggered a few frames after reaching the out-point. At this point, it is safe to stop playback.
-
- /* Capture events */
-
- bmdDeckControlPrepareForCaptureEvent = /* 'pfce' */ 0x70666365, // This event is triggered a few frames before reaching the in-point. The serial timecode attached to IDeckLinkVideoInputFrames is now valid.
- bmdDeckControlCaptureCompleteEvent = /* 'ccev' */ 0x63636576 // This event is triggered a few frames after reaching the out-point.
-};
-
-/* Enum BMDDeckControlVTRControlState - VTR Control state */
-
-typedef uint32_t BMDDeckControlVTRControlState;
-enum _BMDDeckControlVTRControlState {
- bmdDeckControlNotInVTRControlMode = /* 'nvcm' */ 0x6E76636D,
- bmdDeckControlVTRControlPlaying = /* 'vtrp' */ 0x76747270,
- bmdDeckControlVTRControlRecording = /* 'vtrr' */ 0x76747272,
- bmdDeckControlVTRControlStill = /* 'vtra' */ 0x76747261,
- bmdDeckControlVTRControlShuttleForward = /* 'vtsf' */ 0x76747366,
- bmdDeckControlVTRControlShuttleReverse = /* 'vtsr' */ 0x76747372,
- bmdDeckControlVTRControlJogForward = /* 'vtjf' */ 0x76746A66,
- bmdDeckControlVTRControlJogReverse = /* 'vtjr' */ 0x76746A72,
- bmdDeckControlVTRControlStopped = /* 'vtro' */ 0x7674726F
-};
-
-/* Enum BMDDeckControlStatusFlags - Deck Control status flags */
-
-typedef uint32_t BMDDeckControlStatusFlags;
-enum _BMDDeckControlStatusFlags {
- bmdDeckControlStatusDeckConnected = 1 << 0,
- bmdDeckControlStatusRemoteMode = 1 << 1,
- bmdDeckControlStatusRecordInhibited = 1 << 2,
- bmdDeckControlStatusCassetteOut = 1 << 3
-};
-
-/* Enum BMDDeckControlExportModeOpsFlags - Export mode flags */
-
-typedef uint32_t BMDDeckControlExportModeOpsFlags;
-enum _BMDDeckControlExportModeOpsFlags {
- bmdDeckControlExportModeInsertVideo = 1 << 0,
- bmdDeckControlExportModeInsertAudio1 = 1 << 1,
- bmdDeckControlExportModeInsertAudio2 = 1 << 2,
- bmdDeckControlExportModeInsertAudio3 = 1 << 3,
- bmdDeckControlExportModeInsertAudio4 = 1 << 4,
- bmdDeckControlExportModeInsertAudio5 = 1 << 5,
- bmdDeckControlExportModeInsertAudio6 = 1 << 6,
- bmdDeckControlExportModeInsertAudio7 = 1 << 7,
- bmdDeckControlExportModeInsertAudio8 = 1 << 8,
- bmdDeckControlExportModeInsertAudio9 = 1 << 9,
- bmdDeckControlExportModeInsertAudio10 = 1 << 10,
- bmdDeckControlExportModeInsertAudio11 = 1 << 11,
- bmdDeckControlExportModeInsertAudio12 = 1 << 12,
- bmdDeckControlExportModeInsertTimeCode = 1 << 13,
- bmdDeckControlExportModeInsertAssemble = 1 << 14,
- bmdDeckControlExportModeInsertPreview = 1 << 15,
- bmdDeckControlUseManualExport = 1 << 16
-};
-
-/* Enum BMDDeckControlError - Deck Control error */
-
-typedef uint32_t BMDDeckControlError;
-enum _BMDDeckControlError {
- bmdDeckControlNoError = /* 'noer' */ 0x6E6F6572,
- bmdDeckControlModeError = /* 'moer' */ 0x6D6F6572,
- bmdDeckControlMissedInPointError = /* 'mier' */ 0x6D696572,
- bmdDeckControlDeckTimeoutError = /* 'dter' */ 0x64746572,
- bmdDeckControlCommandFailedError = /* 'cfer' */ 0x63666572,
- bmdDeckControlDeviceAlreadyOpenedError = /* 'dalo' */ 0x64616C6F,
- bmdDeckControlFailedToOpenDeviceError = /* 'fder' */ 0x66646572,
- bmdDeckControlInLocalModeError = /* 'lmer' */ 0x6C6D6572,
- bmdDeckControlEndOfTapeError = /* 'eter' */ 0x65746572,
- bmdDeckControlUserAbortError = /* 'uaer' */ 0x75616572,
- bmdDeckControlNoTapeInDeckError = /* 'nter' */ 0x6E746572,
- bmdDeckControlNoVideoFromCardError = /* 'nvfc' */ 0x6E766663,
- bmdDeckControlNoCommunicationError = /* 'ncom' */ 0x6E636F6D,
- bmdDeckControlBufferTooSmallError = /* 'btsm' */ 0x6274736D,
- bmdDeckControlBadChecksumError = /* 'chks' */ 0x63686B73,
- bmdDeckControlUnknownError = /* 'uner' */ 0x756E6572
-};
-
-// Forward Declarations
-
-class IDeckLinkDeckControlStatusCallback;
-class IDeckLinkDeckControl;
-
-/* Interface IDeckLinkDeckControlStatusCallback - Deck control state change callback. */
-
-class IDeckLinkDeckControlStatusCallback : public IUnknown
-{
-public:
- virtual HRESULT TimecodeUpdate (/* in */ BMDTimecodeBCD currentTimecode) = 0;
- virtual HRESULT VTRControlStateChanged (/* in */ BMDDeckControlVTRControlState newState, /* in */ BMDDeckControlError error) = 0;
- virtual HRESULT DeckControlEventReceived (/* in */ BMDDeckControlEvent event, /* in */ BMDDeckControlError error) = 0;
- virtual HRESULT DeckControlStatusChanged (/* in */ BMDDeckControlStatusFlags flags, /* in */ uint32_t mask) = 0;
-
-protected:
- virtual ~IDeckLinkDeckControlStatusCallback () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkDeckControl - Deck Control main interface */
-
-class IDeckLinkDeckControl : public IUnknown
-{
-public:
- virtual HRESULT Open (/* in */ BMDTimeScale timeScale, /* in */ BMDTimeValue timeValue, /* in */ bool timecodeIsDropFrame, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Close (/* in */ bool standbyOn) = 0;
- virtual HRESULT GetCurrentState (/* out */ BMDDeckControlMode *mode, /* out */ BMDDeckControlVTRControlState *vtrControlState, /* out */ BMDDeckControlStatusFlags *flags) = 0;
- virtual HRESULT SetStandby (/* in */ bool standbyOn) = 0;
- virtual HRESULT SendCommand (/* in */ uint8_t *inBuffer, /* in */ uint32_t inBufferSize, /* out */ uint8_t *outBuffer, /* out */ uint32_t *outDataSize, /* in */ uint32_t outBufferSize, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Play (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Stop (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT TogglePlayStop (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Eject (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT GoToTimecode (/* in */ BMDTimecodeBCD timecode, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT FastForward (/* in */ bool viewTape, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Rewind (/* in */ bool viewTape, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT StepForward (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT StepBack (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Jog (/* in */ double rate, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Shuttle (/* in */ double rate, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT GetTimecodeString (/* out */ const char **currentTimeCode, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT GetTimecode (/* out */ IDeckLinkTimecode **currentTimecode, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT GetTimecodeBCD (/* out */ BMDTimecodeBCD *currentTimecode, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT SetPreroll (/* in */ uint32_t prerollSeconds) = 0;
- virtual HRESULT GetPreroll (/* out */ uint32_t *prerollSeconds) = 0;
- virtual HRESULT SetExportOffset (/* in */ int32_t exportOffsetFields) = 0;
- virtual HRESULT GetExportOffset (/* out */ int32_t *exportOffsetFields) = 0;
- virtual HRESULT GetManualExportOffset (/* out */ int32_t *deckManualExportOffsetFields) = 0;
- virtual HRESULT SetCaptureOffset (/* in */ int32_t captureOffsetFields) = 0;
- virtual HRESULT GetCaptureOffset (/* out */ int32_t *captureOffsetFields) = 0;
- virtual HRESULT StartExport (/* in */ BMDTimecodeBCD inTimecode, /* in */ BMDTimecodeBCD outTimecode, /* in */ BMDDeckControlExportModeOpsFlags exportModeOps, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT StartCapture (/* in */ bool useVITC, /* in */ BMDTimecodeBCD inTimecode, /* in */ BMDTimecodeBCD outTimecode, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT GetDeviceID (/* out */ uint16_t *deviceId, /* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT Abort (void) = 0;
- virtual HRESULT CrashRecordStart (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT CrashRecordStop (/* out */ BMDDeckControlError *error) = 0;
- virtual HRESULT SetCallback (/* in */ IDeckLinkDeckControlStatusCallback *callback) = 0;
-
-protected:
- virtual ~IDeckLinkDeckControl () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
-
-}
-
-
-#endif /* defined(BMD_DECKLINKAPIDECKCONTROL_H) */
diff --git a/intern/decklink/linux/DeckLinkAPIDiscovery.h b/intern/decklink/linux/DeckLinkAPIDiscovery.h
deleted file mode 100644
index 424d9d54b39..00000000000
--- a/intern/decklink/linux/DeckLinkAPIDiscovery.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPIDISCOVERY_H
-#define BMD_DECKLINKAPIDISCOVERY_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-// Type Declarations
-
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLink = /* C418FBDD-0587-48ED-8FE5-640F0A14AF91 */ {0xC4,0x18,0xFB,0xDD,0x05,0x87,0x48,0xED,0x8F,0xE5,0x64,0x0F,0x0A,0x14,0xAF,0x91};
-
-// Forward Declarations
-
-class IDeckLink;
-
-/* Interface IDeckLink - represents a DeckLink device */
-
-class IDeckLink : public IUnknown
-{
-public:
- virtual HRESULT GetModelName (/* out */ const char **modelName) = 0;
- virtual HRESULT GetDisplayName (/* out */ const char **displayName) = 0;
-
-protected:
- virtual ~IDeckLink () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
-
-}
-
-
-#endif /* defined(BMD_DECKLINKAPIDISCOVERY_H) */
diff --git a/intern/decklink/linux/DeckLinkAPIDispatch.cpp b/intern/decklink/linux/DeckLinkAPIDispatch.cpp
deleted file mode 100644
index 3cf53f109ac..00000000000
--- a/intern/decklink/linux/DeckLinkAPIDispatch.cpp
+++ /dev/null
@@ -1,148 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2009 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-**/
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <pthread.h>
-#include <dlfcn.h>
-#include <ctype.h>
-
-#include "DeckLinkAPI.h"
-
-#define kDeckLinkAPI_Name "libDeckLinkAPI.so"
-#define KDeckLinkPreviewAPI_Name "libDeckLinkPreviewAPI.so"
-
-typedef IDeckLinkIterator* (*CreateIteratorFunc)(void);
-typedef IDeckLinkAPIInformation* (*CreateAPIInformationFunc)(void);
-typedef IDeckLinkGLScreenPreviewHelper* (*CreateOpenGLScreenPreviewHelperFunc)(void);
-typedef IDeckLinkVideoConversion* (*CreateVideoConversionInstanceFunc)(void);
-typedef IDeckLinkDiscovery* (*CreateDeckLinkDiscoveryInstanceFunc)(void);
-
-static pthread_once_t gDeckLinkOnceControl = PTHREAD_ONCE_INIT;
-static pthread_once_t gPreviewOnceControl = PTHREAD_ONCE_INIT;
-
-static bool gLoadedDeckLinkAPI = false;
-
-static CreateIteratorFunc gCreateIteratorFunc = NULL;
-static CreateAPIInformationFunc gCreateAPIInformationFunc = NULL;
-static CreateOpenGLScreenPreviewHelperFunc gCreateOpenGLPreviewFunc = NULL;
-static CreateVideoConversionInstanceFunc gCreateVideoConversionFunc = NULL;
-static CreateDeckLinkDiscoveryInstanceFunc gCreateDeckLinkDiscoveryFunc = NULL;
-
-static void InitDeckLinkAPI (void)
-{
- void *libraryHandle;
-
- libraryHandle = dlopen(kDeckLinkAPI_Name, RTLD_NOW|RTLD_GLOBAL);
- if (!libraryHandle)
- {
- fprintf(stderr, "%s\n", dlerror());
- return;
- }
-
- gLoadedDeckLinkAPI = true;
-
- gCreateIteratorFunc = (CreateIteratorFunc)dlsym(libraryHandle, "CreateDeckLinkIteratorInstance_0002");
- if (!gCreateIteratorFunc)
- fprintf(stderr, "%s\n", dlerror());
- gCreateAPIInformationFunc = (CreateAPIInformationFunc)dlsym(libraryHandle, "CreateDeckLinkAPIInformationInstance_0001");
- if (!gCreateAPIInformationFunc)
- fprintf(stderr, "%s\n", dlerror());
- gCreateVideoConversionFunc = (CreateVideoConversionInstanceFunc)dlsym(libraryHandle, "CreateVideoConversionInstance_0001");
- if (!gCreateVideoConversionFunc)
- fprintf(stderr, "%s\n", dlerror());
- gCreateDeckLinkDiscoveryFunc = (CreateDeckLinkDiscoveryInstanceFunc)dlsym(libraryHandle, "CreateDeckLinkDiscoveryInstance_0001");
- if (!gCreateDeckLinkDiscoveryFunc)
- fprintf(stderr, "%s\n", dlerror());
-}
-
-static void InitDeckLinkPreviewAPI (void)
-{
- void *libraryHandle;
-
- libraryHandle = dlopen(KDeckLinkPreviewAPI_Name, RTLD_NOW|RTLD_GLOBAL);
- if (!libraryHandle)
- {
- fprintf(stderr, "%s\n", dlerror());
- return;
- }
- gCreateOpenGLPreviewFunc = (CreateOpenGLScreenPreviewHelperFunc)dlsym(libraryHandle, "CreateOpenGLScreenPreviewHelper_0001");
- if (!gCreateOpenGLPreviewFunc)
- fprintf(stderr, "%s\n", dlerror());
-}
-
-bool IsDeckLinkAPIPresent (void)
-{
- // If the DeckLink API dynamic library was successfully loaded, return this knowledge to the caller
- return gLoadedDeckLinkAPI;
-}
-
-IDeckLinkIterator* CreateDeckLinkIteratorInstance (void)
-{
- pthread_once(&gDeckLinkOnceControl, InitDeckLinkAPI);
-
- if (gCreateIteratorFunc == NULL)
- return NULL;
- return gCreateIteratorFunc();
-}
-
-IDeckLinkAPIInformation* CreateDeckLinkAPIInformationInstance (void)
-{
- pthread_once(&gDeckLinkOnceControl, InitDeckLinkAPI);
-
- if (gCreateAPIInformationFunc == NULL)
- return NULL;
- return gCreateAPIInformationFunc();
-}
-
-IDeckLinkGLScreenPreviewHelper* CreateOpenGLScreenPreviewHelper (void)
-{
- pthread_once(&gDeckLinkOnceControl, InitDeckLinkAPI);
- pthread_once(&gPreviewOnceControl, InitDeckLinkPreviewAPI);
-
- if (gCreateOpenGLPreviewFunc == NULL)
- return NULL;
- return gCreateOpenGLPreviewFunc();
-}
-
-IDeckLinkVideoConversion* CreateVideoConversionInstance (void)
-{
- pthread_once(&gDeckLinkOnceControl, InitDeckLinkAPI);
-
- if (gCreateVideoConversionFunc == NULL)
- return NULL;
- return gCreateVideoConversionFunc();
-}
-
-IDeckLinkDiscovery* CreateDeckLinkDiscoveryInstance (void)
-{
- pthread_once(&gDeckLinkOnceControl, InitDeckLinkAPI);
-
- if (gCreateDeckLinkDiscoveryFunc == NULL)
- return NULL;
- return gCreateDeckLinkDiscoveryFunc();
-}
diff --git a/intern/decklink/linux/DeckLinkAPIModes.h b/intern/decklink/linux/DeckLinkAPIModes.h
deleted file mode 100644
index 394d68c3078..00000000000
--- a/intern/decklink/linux/DeckLinkAPIModes.h
+++ /dev/null
@@ -1,191 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPIMODES_H
-#define BMD_DECKLINKAPIMODES_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-// Type Declarations
-
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLinkDisplayModeIterator = /* 9C88499F-F601-4021-B80B-032E4EB41C35 */ {0x9C,0x88,0x49,0x9F,0xF6,0x01,0x40,0x21,0xB8,0x0B,0x03,0x2E,0x4E,0xB4,0x1C,0x35};
-BMD_CONST REFIID IID_IDeckLinkDisplayMode = /* 3EB2C1AB-0A3D-4523-A3AD-F40D7FB14E78 */ {0x3E,0xB2,0xC1,0xAB,0x0A,0x3D,0x45,0x23,0xA3,0xAD,0xF4,0x0D,0x7F,0xB1,0x4E,0x78};
-
-/* Enum BMDDisplayMode - Video display modes */
-
-typedef uint32_t BMDDisplayMode;
-enum _BMDDisplayMode {
-
- /* SD Modes */
-
- bmdModeNTSC = /* 'ntsc' */ 0x6E747363,
- bmdModeNTSC2398 = /* 'nt23' */ 0x6E743233, // 3:2 pulldown
- bmdModePAL = /* 'pal ' */ 0x70616C20,
- bmdModeNTSCp = /* 'ntsp' */ 0x6E747370,
- bmdModePALp = /* 'palp' */ 0x70616C70,
-
- /* HD 1080 Modes */
-
- bmdModeHD1080p2398 = /* '23ps' */ 0x32337073,
- bmdModeHD1080p24 = /* '24ps' */ 0x32347073,
- bmdModeHD1080p25 = /* 'Hp25' */ 0x48703235,
- bmdModeHD1080p2997 = /* 'Hp29' */ 0x48703239,
- bmdModeHD1080p30 = /* 'Hp30' */ 0x48703330,
- bmdModeHD1080i50 = /* 'Hi50' */ 0x48693530,
- bmdModeHD1080i5994 = /* 'Hi59' */ 0x48693539,
- bmdModeHD1080i6000 = /* 'Hi60' */ 0x48693630, // N.B. This _really_ is 60.00 Hz.
- bmdModeHD1080p50 = /* 'Hp50' */ 0x48703530,
- bmdModeHD1080p5994 = /* 'Hp59' */ 0x48703539,
- bmdModeHD1080p6000 = /* 'Hp60' */ 0x48703630, // N.B. This _really_ is 60.00 Hz.
-
- /* HD 720 Modes */
-
- bmdModeHD720p50 = /* 'hp50' */ 0x68703530,
- bmdModeHD720p5994 = /* 'hp59' */ 0x68703539,
- bmdModeHD720p60 = /* 'hp60' */ 0x68703630,
-
- /* 2k Modes */
-
- bmdMode2k2398 = /* '2k23' */ 0x326B3233,
- bmdMode2k24 = /* '2k24' */ 0x326B3234,
- bmdMode2k25 = /* '2k25' */ 0x326B3235,
-
- /* DCI Modes (output only) */
-
- bmdMode2kDCI2398 = /* '2d23' */ 0x32643233,
- bmdMode2kDCI24 = /* '2d24' */ 0x32643234,
- bmdMode2kDCI25 = /* '2d25' */ 0x32643235,
-
- /* 4k Modes */
-
- bmdMode4K2160p2398 = /* '4k23' */ 0x346B3233,
- bmdMode4K2160p24 = /* '4k24' */ 0x346B3234,
- bmdMode4K2160p25 = /* '4k25' */ 0x346B3235,
- bmdMode4K2160p2997 = /* '4k29' */ 0x346B3239,
- bmdMode4K2160p30 = /* '4k30' */ 0x346B3330,
- bmdMode4K2160p50 = /* '4k50' */ 0x346B3530,
- bmdMode4K2160p5994 = /* '4k59' */ 0x346B3539,
- bmdMode4K2160p60 = /* '4k60' */ 0x346B3630,
-
- /* DCI Modes (output only) */
-
- bmdMode4kDCI2398 = /* '4d23' */ 0x34643233,
- bmdMode4kDCI24 = /* '4d24' */ 0x34643234,
- bmdMode4kDCI25 = /* '4d25' */ 0x34643235,
-
- /* Special Modes */
-
- bmdModeUnknown = /* 'iunk' */ 0x69756E6B
-};
-
-/* Enum BMDFieldDominance - Video field dominance */
-
-typedef uint32_t BMDFieldDominance;
-enum _BMDFieldDominance {
- bmdUnknownFieldDominance = 0,
- bmdLowerFieldFirst = /* 'lowr' */ 0x6C6F7772,
- bmdUpperFieldFirst = /* 'uppr' */ 0x75707072,
- bmdProgressiveFrame = /* 'prog' */ 0x70726F67,
- bmdProgressiveSegmentedFrame = /* 'psf ' */ 0x70736620
-};
-
-/* Enum BMDPixelFormat - Video pixel formats supported for output/input */
-
-typedef uint32_t BMDPixelFormat;
-enum _BMDPixelFormat {
- bmdFormat8BitYUV = /* '2vuy' */ 0x32767579,
- bmdFormat10BitYUV = /* 'v210' */ 0x76323130,
- bmdFormat8BitARGB = 32,
- bmdFormat8BitBGRA = /* 'BGRA' */ 0x42475241,
- bmdFormat10BitRGB = /* 'r210' */ 0x72323130, // Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10
- bmdFormat12BitRGB = /* 'R12B' */ 0x52313242, // Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component
- bmdFormat12BitRGBLE = /* 'R12L' */ 0x5231324C, // Little-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component
- bmdFormat10BitRGBXLE = /* 'R10l' */ 0x5231306C, // Little-endian 10-bit RGB with SMPTE video levels (64-940)
- bmdFormat10BitRGBX = /* 'R10b' */ 0x52313062 // Big-endian 10-bit RGB with SMPTE video levels (64-940)
-};
-
-/* Enum BMDDisplayModeFlags - Flags to describe the characteristics of an IDeckLinkDisplayMode. */
-
-typedef uint32_t BMDDisplayModeFlags;
-enum _BMDDisplayModeFlags {
- bmdDisplayModeSupports3D = 1 << 0,
- bmdDisplayModeColorspaceRec601 = 1 << 1,
- bmdDisplayModeColorspaceRec709 = 1 << 2
-};
-
-// Forward Declarations
-
-class IDeckLinkDisplayModeIterator;
-class IDeckLinkDisplayMode;
-
-/* Interface IDeckLinkDisplayModeIterator - enumerates over supported input/output display modes. */
-
-class IDeckLinkDisplayModeIterator : public IUnknown
-{
-public:
- virtual HRESULT Next (/* out */ IDeckLinkDisplayMode **deckLinkDisplayMode) = 0;
-
-protected:
- virtual ~IDeckLinkDisplayModeIterator () {} // call Release method to drop reference count
-};
-
-/* Interface IDeckLinkDisplayMode - represents a display mode */
-
-class IDeckLinkDisplayMode : public IUnknown
-{
-public:
- virtual HRESULT GetName (/* out */ const char **name) = 0;
- virtual BMDDisplayMode GetDisplayMode (void) = 0;
- virtual long GetWidth (void) = 0;
- virtual long GetHeight (void) = 0;
- virtual HRESULT GetFrameRate (/* out */ BMDTimeValue *frameDuration, /* out */ BMDTimeScale *timeScale) = 0;
- virtual BMDFieldDominance GetFieldDominance (void) = 0;
- virtual BMDDisplayModeFlags GetFlags (void) = 0;
-
-protected:
- virtual ~IDeckLinkDisplayMode () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
-
-}
-
-
-#endif /* defined(BMD_DECKLINKAPIMODES_H) */
diff --git a/intern/decklink/linux/DeckLinkAPITypes.h b/intern/decklink/linux/DeckLinkAPITypes.h
deleted file mode 100644
index 55e015f2a3c..00000000000
--- a/intern/decklink/linux/DeckLinkAPITypes.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2014 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef BMD_DECKLINKAPITYPES_H
-#define BMD_DECKLINKAPITYPES_H
-
-
-#ifndef BMD_CONST
- #if defined(_MSC_VER)
- #define BMD_CONST __declspec(selectany) static const
- #else
- #define BMD_CONST static const
- #endif
-#endif
-
-// Type Declarations
-
-typedef int64_t BMDTimeValue;
-typedef int64_t BMDTimeScale;
-typedef uint32_t BMDTimecodeBCD;
-typedef uint32_t BMDTimecodeUserBits;
-
-// Interface ID Declarations
-
-BMD_CONST REFIID IID_IDeckLinkTimecode = /* BC6CFBD3-8317-4325-AC1C-1216391E9340 */ {0xBC,0x6C,0xFB,0xD3,0x83,0x17,0x43,0x25,0xAC,0x1C,0x12,0x16,0x39,0x1E,0x93,0x40};
-
-/* Enum BMDTimecodeFlags - Timecode flags */
-
-typedef uint32_t BMDTimecodeFlags;
-enum _BMDTimecodeFlags {
- bmdTimecodeFlagDefault = 0,
- bmdTimecodeIsDropFrame = 1 << 0,
- bmdTimecodeFieldMark = 1 << 1
-};
-
-/* Enum BMDVideoConnection - Video connection types */
-
-typedef uint32_t BMDVideoConnection;
-enum _BMDVideoConnection {
- bmdVideoConnectionSDI = 1 << 0,
- bmdVideoConnectionHDMI = 1 << 1,
- bmdVideoConnectionOpticalSDI = 1 << 2,
- bmdVideoConnectionComponent = 1 << 3,
- bmdVideoConnectionComposite = 1 << 4,
- bmdVideoConnectionSVideo = 1 << 5
-};
-
-/* Enum BMDAudioConnection - Audio connection types */
-
-typedef uint32_t BMDAudioConnection;
-enum _BMDAudioConnection {
- bmdAudioConnectionEmbedded = 1 << 0,
- bmdAudioConnectionAESEBU = 1 << 1,
- bmdAudioConnectionAnalog = 1 << 2,
- bmdAudioConnectionAnalogXLR = 1 << 3,
- bmdAudioConnectionAnalogRCA = 1 << 4
-};
-
-// Forward Declarations
-
-class IDeckLinkTimecode;
-
-/* Interface IDeckLinkTimecode - Used for video frame timecode representation. */
-
-class IDeckLinkTimecode : public IUnknown
-{
-public:
- virtual BMDTimecodeBCD GetBCD (void) = 0;
- virtual HRESULT GetComponents (/* out */ uint8_t *hours, /* out */ uint8_t *minutes, /* out */ uint8_t *seconds, /* out */ uint8_t *frames) = 0;
- virtual HRESULT GetString (/* out */ const char **timecode) = 0;
- virtual BMDTimecodeFlags GetFlags (void) = 0;
- virtual HRESULT GetTimecodeUserBits (/* out */ BMDTimecodeUserBits *userBits) = 0;
-
-protected:
- virtual ~IDeckLinkTimecode () {} // call Release method to drop reference count
-};
-
-/* Functions */
-
-extern "C" {
-
-
-}
-
-
-#endif /* defined(BMD_DECKLINKAPITYPES_H) */
diff --git a/intern/decklink/linux/DeckLinkAPIVersion.h b/intern/decklink/linux/DeckLinkAPIVersion.h
deleted file mode 100644
index cfcc701c427..00000000000
--- a/intern/decklink/linux/DeckLinkAPIVersion.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -LICENSE-START-
- * ** Copyright (c) 2014 Blackmagic Design
- * **
- * ** Permission is hereby granted, free of charge, to any person or organization
- * ** obtaining a copy of the software and accompanying documentation covered by
- * ** this license (the "Software") to use, reproduce, display, distribute,
- * ** execute, and transmit the Software, and to prepare derivative works of the
- * ** Software, and to permit third-parties to whom the Software is furnished to
- * ** do so, all subject to the following:
- * **
- * ** The copyright notices in the Software and this entire statement, including
- * ** the above license grant, this restriction and the following disclaimer,
- * ** must be included in all copies of the Software, in whole or in part, and
- * ** all derivative works of the Software, unless such copies or derivative
- * ** works are solely in the form of machine-executable object code generated by
- * ** a source language processor.
- * **
- * ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * ** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
- * ** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
- * ** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
- * ** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * ** DEALINGS IN THE SOFTWARE.
- * ** -LICENSE-END-
- * */
-
-/* DeckLinkAPIVersion.h */
-
-#ifndef __DeckLink_API_Version_h__
-#define __DeckLink_API_Version_h__
-
-#define BLACKMAGIC_DECKLINK_API_VERSION 0x0a040000
-#define BLACKMAGIC_DECKLINK_API_VERSION_STRING "10.4"
-
-#endif // __DeckLink_API_Version_h__
-
diff --git a/intern/decklink/linux/LinuxCOM.h b/intern/decklink/linux/LinuxCOM.h
deleted file mode 100644
index ee783bbd58f..00000000000
--- a/intern/decklink/linux/LinuxCOM.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* -LICENSE-START-
-** Copyright (c) 2009 Blackmagic Design
-**
-** Permission is hereby granted, free of charge, to any person or organization
-** obtaining a copy of the software and accompanying documentation covered by
-** this license (the "Software") to use, reproduce, display, distribute,
-** execute, and transmit the Software, and to prepare derivative works of the
-** Software, and to permit third-parties to whom the Software is furnished to
-** do so, all subject to the following:
-**
-** The copyright notices in the Software and this entire statement, including
-** the above license grant, this restriction and the following disclaimer,
-** must be included in all copies of the Software, in whole or in part, and
-** all derivative works of the Software, unless such copies or derivative
-** works are solely in the form of machine-executable object code generated by
-** a source language processor.
-**
-** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-** FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-** SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-** FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-** ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-** DEALINGS IN THE SOFTWARE.
-** -LICENSE-END-
-*/
-
-#ifndef __LINUX_COM_H_
-#define __LINUX_COM_H_
-
-struct REFIID
-{
- unsigned char byte0;
- unsigned char byte1;
- unsigned char byte2;
- unsigned char byte3;
- unsigned char byte4;
- unsigned char byte5;
- unsigned char byte6;
- unsigned char byte7;
- unsigned char byte8;
- unsigned char byte9;
- unsigned char byte10;
- unsigned char byte11;
- unsigned char byte12;
- unsigned char byte13;
- unsigned char byte14;
- unsigned char byte15;
-};
-
-typedef REFIID CFUUIDBytes;
-#define CFUUIDGetUUIDBytes(x) x
-
-#define _HRESULT_DEFINED
-typedef int HRESULT;
-typedef unsigned long ULONG;
-typedef void *LPVOID;
-
-#define SUCCEEDED(Status) ((HRESULT)(Status) >= 0)
-#define FAILED(Status) ((HRESULT)(Status)<0)
-
-#define IS_ERROR(Status) ((unsigned long)(Status) >> 31 == SEVERITY_ERROR)
-#define HRESULT_CODE(hr) ((hr) & 0xFFFF)
-#define HRESULT_FACILITY(hr) (((hr) >> 16) & 0x1fff)
-#define HRESULT_SEVERITY(hr) (((hr) >> 31) & 0x1)
-#define SEVERITY_SUCCESS 0
-#define SEVERITY_ERROR 1
-
-#define MAKE_HRESULT(sev,fac,code) ((HRESULT) (((unsigned long)(sev)<<31) | ((unsigned long)(fac)<<16) | ((unsigned long)(code))) )
-
-#define S_OK ((HRESULT)0x00000000L)
-#define S_FALSE ((HRESULT)0x00000001L)
-#define E_UNEXPECTED ((HRESULT)0x8000FFFFL)
-#define E_NOTIMPL ((HRESULT)0x80000001L)
-#define E_OUTOFMEMORY ((HRESULT)0x80000002L)
-#define E_INVALIDARG ((HRESULT)0x80000003L)
-#define E_NOINTERFACE ((HRESULT)0x80000004L)
-#define E_POINTER ((HRESULT)0x80000005L)
-#define E_HANDLE ((HRESULT)0x80000006L)
-#define E_ABORT ((HRESULT)0x80000007L)
-#define E_FAIL ((HRESULT)0x80000008L)
-#define E_ACCESSDENIED ((HRESULT)0x80000009L)
-
-#define STDMETHODCALLTYPE
-
-#define IID_IUnknown (REFIID){0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}
-#define IUnknownUUID IID_IUnknown
-
-#ifdef __cplusplus
-class IUnknown
-{
- public:
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) = 0;
- virtual ULONG STDMETHODCALLTYPE AddRef(void) = 0;
- virtual ULONG STDMETHODCALLTYPE Release(void) = 0;
-};
-#endif
-
-#endif
-
diff --git a/intern/decklink/win/DeckLinkAPI_h.h b/intern/decklink/win/DeckLinkAPI_h.h
deleted file mode 100644
index 1bd80b6dc95..00000000000
--- a/intern/decklink/win/DeckLinkAPI_h.h
+++ /dev/null
@@ -1,13323 +0,0 @@
-
-
-/* this ALWAYS GENERATED file contains the definitions for the interfaces */
-
-
- /* File created by MIDL compiler version 8.00.0603 */
-/* at Mon Apr 13 20:57:05 2015
- */
-/* Compiler settings for ..\..\include\DeckLinkAPI.idl:
- Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.00.0603
- protocol : dce , ms_ext, c_ext, robust
- error checks: allocation ref bounds_check enum stub_data
- VC __declspec() decoration level:
- __declspec(uuid()), __declspec(selectany), __declspec(novtable)
- DECLSPEC_UUID(), MIDL_INTERFACE()
-*/
-/* @@MIDL_FILE_HEADING( ) */
-
-#pragma warning( disable: 4049 ) /* more than 64k source lines */
-
-
-/* verify that the <rpcndr.h> version is high enough to compile this file*/
-#ifndef __REQUIRED_RPCNDR_H_VERSION__
-#define __REQUIRED_RPCNDR_H_VERSION__ 475
-#endif
-
-#include "rpc.h"
-#include "rpcndr.h"
-
-#ifndef __RPCNDR_H_VERSION__
-#error this stub requires an updated version of <rpcndr.h>
-#endif // __RPCNDR_H_VERSION__
-
-
-#ifndef __DeckLinkAPI_h_h__
-#define __DeckLinkAPI_h_h__
-
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
-#pragma once
-#endif
-
-/* Forward Declarations */
-
-#ifndef __IDeckLinkTimecode_FWD_DEFINED__
-#define __IDeckLinkTimecode_FWD_DEFINED__
-typedef interface IDeckLinkTimecode IDeckLinkTimecode;
-
-#endif /* __IDeckLinkTimecode_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_FWD_DEFINED__
-#define __IDeckLinkDisplayModeIterator_FWD_DEFINED__
-typedef interface IDeckLinkDisplayModeIterator IDeckLinkDisplayModeIterator;
-
-#endif /* __IDeckLinkDisplayModeIterator_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_FWD_DEFINED__
-#define __IDeckLinkDisplayMode_FWD_DEFINED__
-typedef interface IDeckLinkDisplayMode IDeckLinkDisplayMode;
-
-#endif /* __IDeckLinkDisplayMode_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLink_FWD_DEFINED__
-#define __IDeckLink_FWD_DEFINED__
-typedef interface IDeckLink IDeckLink;
-
-#endif /* __IDeckLink_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkConfiguration_FWD_DEFINED__
-#define __IDeckLinkConfiguration_FWD_DEFINED__
-typedef interface IDeckLinkConfiguration IDeckLinkConfiguration;
-
-#endif /* __IDeckLinkConfiguration_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__
-#define __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__
-typedef interface IDeckLinkDeckControlStatusCallback IDeckLinkDeckControlStatusCallback;
-
-#endif /* __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControl_FWD_DEFINED__
-#define __IDeckLinkDeckControl_FWD_DEFINED__
-typedef interface IDeckLinkDeckControl IDeckLinkDeckControl;
-
-#endif /* __IDeckLinkDeckControl_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__
-#define __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__
-typedef interface IBMDStreamingDeviceNotificationCallback IBMDStreamingDeviceNotificationCallback;
-
-#endif /* __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264InputCallback_FWD_DEFINED__
-#define __IBMDStreamingH264InputCallback_FWD_DEFINED__
-typedef interface IBMDStreamingH264InputCallback IBMDStreamingH264InputCallback;
-
-#endif /* __IBMDStreamingH264InputCallback_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDiscovery_FWD_DEFINED__
-#define __IBMDStreamingDiscovery_FWD_DEFINED__
-typedef interface IBMDStreamingDiscovery IBMDStreamingDiscovery;
-
-#endif /* __IBMDStreamingDiscovery_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingVideoEncodingMode_FWD_DEFINED__
-#define __IBMDStreamingVideoEncodingMode_FWD_DEFINED__
-typedef interface IBMDStreamingVideoEncodingMode IBMDStreamingVideoEncodingMode;
-
-#endif /* __IBMDStreamingVideoEncodingMode_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__
-#define __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__
-typedef interface IBMDStreamingMutableVideoEncodingMode IBMDStreamingMutableVideoEncodingMode;
-
-#endif /* __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__
-#define __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__
-typedef interface IBMDStreamingVideoEncodingModePresetIterator IBMDStreamingVideoEncodingModePresetIterator;
-
-#endif /* __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDeviceInput_FWD_DEFINED__
-#define __IBMDStreamingDeviceInput_FWD_DEFINED__
-typedef interface IBMDStreamingDeviceInput IBMDStreamingDeviceInput;
-
-#endif /* __IBMDStreamingDeviceInput_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264NALPacket_FWD_DEFINED__
-#define __IBMDStreamingH264NALPacket_FWD_DEFINED__
-typedef interface IBMDStreamingH264NALPacket IBMDStreamingH264NALPacket;
-
-#endif /* __IBMDStreamingH264NALPacket_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingAudioPacket_FWD_DEFINED__
-#define __IBMDStreamingAudioPacket_FWD_DEFINED__
-typedef interface IBMDStreamingAudioPacket IBMDStreamingAudioPacket;
-
-#endif /* __IBMDStreamingAudioPacket_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__
-#define __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__
-typedef interface IBMDStreamingMPEG2TSPacket IBMDStreamingMPEG2TSPacket;
-
-#endif /* __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264NALParser_FWD_DEFINED__
-#define __IBMDStreamingH264NALParser_FWD_DEFINED__
-typedef interface IBMDStreamingH264NALParser IBMDStreamingH264NALParser;
-
-#endif /* __IBMDStreamingH264NALParser_FWD_DEFINED__ */
-
-
-#ifndef __CBMDStreamingDiscovery_FWD_DEFINED__
-#define __CBMDStreamingDiscovery_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CBMDStreamingDiscovery CBMDStreamingDiscovery;
-#else
-typedef struct CBMDStreamingDiscovery CBMDStreamingDiscovery;
-#endif /* __cplusplus */
-
-#endif /* __CBMDStreamingDiscovery_FWD_DEFINED__ */
-
-
-#ifndef __CBMDStreamingH264NALParser_FWD_DEFINED__
-#define __CBMDStreamingH264NALParser_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CBMDStreamingH264NALParser CBMDStreamingH264NALParser;
-#else
-typedef struct CBMDStreamingH264NALParser CBMDStreamingH264NALParser;
-#endif /* __cplusplus */
-
-#endif /* __CBMDStreamingH264NALParser_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoOutputCallback_FWD_DEFINED__
-#define __IDeckLinkVideoOutputCallback_FWD_DEFINED__
-typedef interface IDeckLinkVideoOutputCallback IDeckLinkVideoOutputCallback;
-
-#endif /* __IDeckLinkVideoOutputCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_FWD_DEFINED__
-#define __IDeckLinkInputCallback_FWD_DEFINED__
-typedef interface IDeckLinkInputCallback IDeckLinkInputCallback;
-
-#endif /* __IDeckLinkInputCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkMemoryAllocator_FWD_DEFINED__
-#define __IDeckLinkMemoryAllocator_FWD_DEFINED__
-typedef interface IDeckLinkMemoryAllocator IDeckLinkMemoryAllocator;
-
-#endif /* __IDeckLinkMemoryAllocator_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioOutputCallback_FWD_DEFINED__
-#define __IDeckLinkAudioOutputCallback_FWD_DEFINED__
-typedef interface IDeckLinkAudioOutputCallback IDeckLinkAudioOutputCallback;
-
-#endif /* __IDeckLinkAudioOutputCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkIterator_FWD_DEFINED__
-#define __IDeckLinkIterator_FWD_DEFINED__
-typedef interface IDeckLinkIterator IDeckLinkIterator;
-
-#endif /* __IDeckLinkIterator_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkAPIInformation_FWD_DEFINED__
-#define __IDeckLinkAPIInformation_FWD_DEFINED__
-typedef interface IDeckLinkAPIInformation IDeckLinkAPIInformation;
-
-#endif /* __IDeckLinkAPIInformation_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_FWD_DEFINED__
-#define __IDeckLinkOutput_FWD_DEFINED__
-typedef interface IDeckLinkOutput IDeckLinkOutput;
-
-#endif /* __IDeckLinkOutput_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_FWD_DEFINED__
-#define __IDeckLinkInput_FWD_DEFINED__
-typedef interface IDeckLinkInput IDeckLinkInput;
-
-#endif /* __IDeckLinkInput_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_FWD_DEFINED__
-#define __IDeckLinkVideoFrame_FWD_DEFINED__
-typedef interface IDeckLinkVideoFrame IDeckLinkVideoFrame;
-
-#endif /* __IDeckLinkVideoFrame_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkMutableVideoFrame_FWD_DEFINED__
-#define __IDeckLinkMutableVideoFrame_FWD_DEFINED__
-typedef interface IDeckLinkMutableVideoFrame IDeckLinkMutableVideoFrame;
-
-#endif /* __IDeckLinkMutableVideoFrame_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__
-#define __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__
-typedef interface IDeckLinkVideoFrame3DExtensions IDeckLinkVideoFrame3DExtensions;
-
-#endif /* __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_FWD_DEFINED__
-#define __IDeckLinkVideoInputFrame_FWD_DEFINED__
-typedef interface IDeckLinkVideoInputFrame IDeckLinkVideoInputFrame;
-
-#endif /* __IDeckLinkVideoInputFrame_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrameAncillary_FWD_DEFINED__
-#define __IDeckLinkVideoFrameAncillary_FWD_DEFINED__
-typedef interface IDeckLinkVideoFrameAncillary IDeckLinkVideoFrameAncillary;
-
-#endif /* __IDeckLinkVideoFrameAncillary_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioInputPacket_FWD_DEFINED__
-#define __IDeckLinkAudioInputPacket_FWD_DEFINED__
-typedef interface IDeckLinkAudioInputPacket IDeckLinkAudioInputPacket;
-
-#endif /* __IDeckLinkAudioInputPacket_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkScreenPreviewCallback_FWD_DEFINED__
-#define __IDeckLinkScreenPreviewCallback_FWD_DEFINED__
-typedef interface IDeckLinkScreenPreviewCallback IDeckLinkScreenPreviewCallback;
-
-#endif /* __IDeckLinkScreenPreviewCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__
-#define __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__
-typedef interface IDeckLinkGLScreenPreviewHelper IDeckLinkGLScreenPreviewHelper;
-
-#endif /* __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
-#define __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
-typedef interface IDeckLinkDX9ScreenPreviewHelper IDeckLinkDX9ScreenPreviewHelper;
-
-#endif /* __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkNotificationCallback_FWD_DEFINED__
-#define __IDeckLinkNotificationCallback_FWD_DEFINED__
-typedef interface IDeckLinkNotificationCallback IDeckLinkNotificationCallback;
-
-#endif /* __IDeckLinkNotificationCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkNotification_FWD_DEFINED__
-#define __IDeckLinkNotification_FWD_DEFINED__
-typedef interface IDeckLinkNotification IDeckLinkNotification;
-
-#endif /* __IDeckLinkNotification_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkAttributes_FWD_DEFINED__
-#define __IDeckLinkAttributes_FWD_DEFINED__
-typedef interface IDeckLinkAttributes IDeckLinkAttributes;
-
-#endif /* __IDeckLinkAttributes_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkKeyer_FWD_DEFINED__
-#define __IDeckLinkKeyer_FWD_DEFINED__
-typedef interface IDeckLinkKeyer IDeckLinkKeyer;
-
-#endif /* __IDeckLinkKeyer_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoConversion_FWD_DEFINED__
-#define __IDeckLinkVideoConversion_FWD_DEFINED__
-typedef interface IDeckLinkVideoConversion IDeckLinkVideoConversion;
-
-#endif /* __IDeckLinkVideoConversion_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__
-#define __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__
-typedef interface IDeckLinkDeviceNotificationCallback IDeckLinkDeviceNotificationCallback;
-
-#endif /* __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDiscovery_FWD_DEFINED__
-#define __IDeckLinkDiscovery_FWD_DEFINED__
-typedef interface IDeckLinkDiscovery IDeckLinkDiscovery;
-
-#endif /* __IDeckLinkDiscovery_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkIterator_FWD_DEFINED__
-#define __CDeckLinkIterator_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkIterator CDeckLinkIterator;
-#else
-typedef struct CDeckLinkIterator CDeckLinkIterator;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkIterator_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkAPIInformation_FWD_DEFINED__
-#define __CDeckLinkAPIInformation_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkAPIInformation CDeckLinkAPIInformation;
-#else
-typedef struct CDeckLinkAPIInformation CDeckLinkAPIInformation;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkAPIInformation_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__
-#define __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkGLScreenPreviewHelper CDeckLinkGLScreenPreviewHelper;
-#else
-typedef struct CDeckLinkGLScreenPreviewHelper CDeckLinkGLScreenPreviewHelper;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
-#define __CDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkDX9ScreenPreviewHelper CDeckLinkDX9ScreenPreviewHelper;
-#else
-typedef struct CDeckLinkDX9ScreenPreviewHelper CDeckLinkDX9ScreenPreviewHelper;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkVideoConversion_FWD_DEFINED__
-#define __CDeckLinkVideoConversion_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkVideoConversion CDeckLinkVideoConversion;
-#else
-typedef struct CDeckLinkVideoConversion CDeckLinkVideoConversion;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkVideoConversion_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkDiscovery_FWD_DEFINED__
-#define __CDeckLinkDiscovery_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkDiscovery CDeckLinkDiscovery;
-#else
-typedef struct CDeckLinkDiscovery CDeckLinkDiscovery;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkDiscovery_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkConfiguration_v10_2_FWD_DEFINED__
-#define __IDeckLinkConfiguration_v10_2_FWD_DEFINED__
-typedef interface IDeckLinkConfiguration_v10_2 IDeckLinkConfiguration_v10_2;
-
-#endif /* __IDeckLinkConfiguration_v10_2_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v9_9_FWD_DEFINED__
-#define __IDeckLinkOutput_v9_9_FWD_DEFINED__
-typedef interface IDeckLinkOutput_v9_9 IDeckLinkOutput_v9_9;
-
-#endif /* __IDeckLinkOutput_v9_9_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v9_2_FWD_DEFINED__
-#define __IDeckLinkInput_v9_2_FWD_DEFINED__
-typedef interface IDeckLinkInput_v9_2 IDeckLinkInput_v9_2;
-
-#endif /* __IDeckLinkInput_v9_2_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__
-#define __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__
-typedef interface IDeckLinkDeckControlStatusCallback_v8_1 IDeckLinkDeckControlStatusCallback_v8_1;
-
-#endif /* __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControl_v8_1_FWD_DEFINED__
-#define __IDeckLinkDeckControl_v8_1_FWD_DEFINED__
-typedef interface IDeckLinkDeckControl_v8_1 IDeckLinkDeckControl_v8_1;
-
-#endif /* __IDeckLinkDeckControl_v8_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLink_v8_0_FWD_DEFINED__
-#define __IDeckLink_v8_0_FWD_DEFINED__
-typedef interface IDeckLink_v8_0 IDeckLink_v8_0;
-
-#endif /* __IDeckLink_v8_0_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkIterator_v8_0_FWD_DEFINED__
-#define __IDeckLinkIterator_v8_0_FWD_DEFINED__
-typedef interface IDeckLinkIterator_v8_0 IDeckLinkIterator_v8_0;
-
-#endif /* __IDeckLinkIterator_v8_0_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkIterator_v8_0_FWD_DEFINED__
-#define __CDeckLinkIterator_v8_0_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkIterator_v8_0 CDeckLinkIterator_v8_0;
-#else
-typedef struct CDeckLinkIterator_v8_0 CDeckLinkIterator_v8_0;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkIterator_v8_0_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControl_v7_9_FWD_DEFINED__
-#define __IDeckLinkDeckControl_v7_9_FWD_DEFINED__
-typedef interface IDeckLinkDeckControl_v7_9 IDeckLinkDeckControl_v7_9;
-
-#endif /* __IDeckLinkDeckControl_v7_9_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__
-#define __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkDisplayModeIterator_v7_6 IDeckLinkDisplayModeIterator_v7_6;
-
-#endif /* __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__
-#define __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkDisplayMode_v7_6 IDeckLinkDisplayMode_v7_6;
-
-#endif /* __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_6_FWD_DEFINED__
-#define __IDeckLinkOutput_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkOutput_v7_6 IDeckLinkOutput_v7_6;
-
-#endif /* __IDeckLinkOutput_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_6_FWD_DEFINED__
-#define __IDeckLinkInput_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkInput_v7_6 IDeckLinkInput_v7_6;
-
-#endif /* __IDeckLinkInput_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkTimecode_v7_6_FWD_DEFINED__
-#define __IDeckLinkTimecode_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkTimecode_v7_6 IDeckLinkTimecode_v7_6;
-
-#endif /* __IDeckLinkTimecode_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__
-#define __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkVideoFrame_v7_6 IDeckLinkVideoFrame_v7_6;
-
-#endif /* __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__
-#define __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkMutableVideoFrame_v7_6 IDeckLinkMutableVideoFrame_v7_6;
-
-#endif /* __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkVideoInputFrame_v7_6 IDeckLinkVideoInputFrame_v7_6;
-
-#endif /* __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__
-#define __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkScreenPreviewCallback_v7_6 IDeckLinkScreenPreviewCallback_v7_6;
-
-#endif /* __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__
-#define __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkGLScreenPreviewHelper_v7_6 IDeckLinkGLScreenPreviewHelper_v7_6;
-
-#endif /* __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__
-#define __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkVideoConversion_v7_6 IDeckLinkVideoConversion_v7_6;
-
-#endif /* __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkConfiguration_v7_6_FWD_DEFINED__
-#define __IDeckLinkConfiguration_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkConfiguration_v7_6 IDeckLinkConfiguration_v7_6;
-
-#endif /* __IDeckLinkConfiguration_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__
-#define __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkVideoOutputCallback_v7_6 IDeckLinkVideoOutputCallback_v7_6;
-
-#endif /* __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_v7_6_FWD_DEFINED__
-#define __IDeckLinkInputCallback_v7_6_FWD_DEFINED__
-typedef interface IDeckLinkInputCallback_v7_6 IDeckLinkInputCallback_v7_6;
-
-#endif /* __IDeckLinkInputCallback_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__
-#define __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkGLScreenPreviewHelper_v7_6 CDeckLinkGLScreenPreviewHelper_v7_6;
-#else
-typedef struct CDeckLinkGLScreenPreviewHelper_v7_6 CDeckLinkGLScreenPreviewHelper_v7_6;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__
-#define __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CDeckLinkVideoConversion_v7_6 CDeckLinkVideoConversion_v7_6;
-#else
-typedef struct CDeckLinkVideoConversion_v7_6 CDeckLinkVideoConversion_v7_6;
-#endif /* __cplusplus */
-
-#endif /* __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_v7_3_FWD_DEFINED__
-#define __IDeckLinkInputCallback_v7_3_FWD_DEFINED__
-typedef interface IDeckLinkInputCallback_v7_3 IDeckLinkInputCallback_v7_3;
-
-#endif /* __IDeckLinkInputCallback_v7_3_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_3_FWD_DEFINED__
-#define __IDeckLinkOutput_v7_3_FWD_DEFINED__
-typedef interface IDeckLinkOutput_v7_3 IDeckLinkOutput_v7_3;
-
-#endif /* __IDeckLinkOutput_v7_3_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_3_FWD_DEFINED__
-#define __IDeckLinkInput_v7_3_FWD_DEFINED__
-typedef interface IDeckLinkInput_v7_3 IDeckLinkInput_v7_3;
-
-#endif /* __IDeckLinkInput_v7_3_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__
-typedef interface IDeckLinkVideoInputFrame_v7_3 IDeckLinkVideoInputFrame_v7_3;
-
-#endif /* __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__
-#define __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkDisplayModeIterator_v7_1 IDeckLinkDisplayModeIterator_v7_1;
-
-#endif /* __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__
-#define __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkDisplayMode_v7_1 IDeckLinkDisplayMode_v7_1;
-
-#endif /* __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__
-#define __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkVideoFrame_v7_1 IDeckLinkVideoFrame_v7_1;
-
-#endif /* __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkVideoInputFrame_v7_1 IDeckLinkVideoInputFrame_v7_1;
-
-#endif /* __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__
-#define __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkAudioInputPacket_v7_1 IDeckLinkAudioInputPacket_v7_1;
-
-#endif /* __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__
-#define __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkVideoOutputCallback_v7_1 IDeckLinkVideoOutputCallback_v7_1;
-
-#endif /* __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_v7_1_FWD_DEFINED__
-#define __IDeckLinkInputCallback_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkInputCallback_v7_1 IDeckLinkInputCallback_v7_1;
-
-#endif /* __IDeckLinkInputCallback_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_1_FWD_DEFINED__
-#define __IDeckLinkOutput_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkOutput_v7_1 IDeckLinkOutput_v7_1;
-
-#endif /* __IDeckLinkOutput_v7_1_FWD_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_1_FWD_DEFINED__
-#define __IDeckLinkInput_v7_1_FWD_DEFINED__
-typedef interface IDeckLinkInput_v7_1 IDeckLinkInput_v7_1;
-
-#endif /* __IDeckLinkInput_v7_1_FWD_DEFINED__ */
-
-
-/* header files for imported files */
-#include "unknwn.h"
-
-#ifdef __cplusplus
-extern "C"{
-#endif
-
-
-
-#ifndef __DeckLinkAPI_LIBRARY_DEFINED__
-#define __DeckLinkAPI_LIBRARY_DEFINED__
-
-/* library DeckLinkAPI */
-/* [helpstring][version][uuid] */
-
-typedef LONGLONG BMDTimeValue;
-
-typedef LONGLONG BMDTimeScale;
-
-typedef unsigned int BMDTimecodeBCD;
-
-typedef unsigned int BMDTimecodeUserBits;
-
-typedef unsigned int BMDTimecodeFlags;
-#if 0
-typedef enum _BMDTimecodeFlags BMDTimecodeFlags;
-
-#endif
-/* [v1_enum] */
-enum _BMDTimecodeFlags
- {
- bmdTimecodeFlagDefault = 0,
- bmdTimecodeIsDropFrame = ( 1 << 0 ) ,
- bmdTimecodeFieldMark = ( 1 << 1 )
- } ;
-typedef /* [v1_enum] */
-enum _BMDVideoConnection
- {
- bmdVideoConnectionSDI = ( 1 << 0 ) ,
- bmdVideoConnectionHDMI = ( 1 << 1 ) ,
- bmdVideoConnectionOpticalSDI = ( 1 << 2 ) ,
- bmdVideoConnectionComponent = ( 1 << 3 ) ,
- bmdVideoConnectionComposite = ( 1 << 4 ) ,
- bmdVideoConnectionSVideo = ( 1 << 5 )
- } BMDVideoConnection;
-
-typedef /* [v1_enum] */
-enum _BMDAudioConnection
- {
- bmdAudioConnectionEmbedded = ( 1 << 0 ) ,
- bmdAudioConnectionAESEBU = ( 1 << 1 ) ,
- bmdAudioConnectionAnalog = ( 1 << 2 ) ,
- bmdAudioConnectionAnalogXLR = ( 1 << 3 ) ,
- bmdAudioConnectionAnalogRCA = ( 1 << 4 )
- } BMDAudioConnection;
-
-
-typedef unsigned int BMDDisplayModeFlags;
-#if 0
-typedef enum _BMDDisplayModeFlags BMDDisplayModeFlags;
-
-#endif
-typedef /* [v1_enum] */
-enum _BMDDisplayMode
- {
- bmdModeNTSC = 0x6e747363,
- bmdModeNTSC2398 = 0x6e743233,
- bmdModePAL = 0x70616c20,
- bmdModeNTSCp = 0x6e747370,
- bmdModePALp = 0x70616c70,
- bmdModeHD1080p2398 = 0x32337073,
- bmdModeHD1080p24 = 0x32347073,
- bmdModeHD1080p25 = 0x48703235,
- bmdModeHD1080p2997 = 0x48703239,
- bmdModeHD1080p30 = 0x48703330,
- bmdModeHD1080i50 = 0x48693530,
- bmdModeHD1080i5994 = 0x48693539,
- bmdModeHD1080i6000 = 0x48693630,
- bmdModeHD1080p50 = 0x48703530,
- bmdModeHD1080p5994 = 0x48703539,
- bmdModeHD1080p6000 = 0x48703630,
- bmdModeHD720p50 = 0x68703530,
- bmdModeHD720p5994 = 0x68703539,
- bmdModeHD720p60 = 0x68703630,
- bmdMode2k2398 = 0x326b3233,
- bmdMode2k24 = 0x326b3234,
- bmdMode2k25 = 0x326b3235,
- bmdMode2kDCI2398 = 0x32643233,
- bmdMode2kDCI24 = 0x32643234,
- bmdMode2kDCI25 = 0x32643235,
- bmdMode4K2160p2398 = 0x346b3233,
- bmdMode4K2160p24 = 0x346b3234,
- bmdMode4K2160p25 = 0x346b3235,
- bmdMode4K2160p2997 = 0x346b3239,
- bmdMode4K2160p30 = 0x346b3330,
- bmdMode4K2160p50 = 0x346b3530,
- bmdMode4K2160p5994 = 0x346b3539,
- bmdMode4K2160p60 = 0x346b3630,
- bmdMode4kDCI2398 = 0x34643233,
- bmdMode4kDCI24 = 0x34643234,
- bmdMode4kDCI25 = 0x34643235,
- bmdModeUnknown = 0x69756e6b
- } BMDDisplayMode;
-
-typedef /* [v1_enum] */
-enum _BMDFieldDominance
- {
- bmdUnknownFieldDominance = 0,
- bmdLowerFieldFirst = 0x6c6f7772,
- bmdUpperFieldFirst = 0x75707072,
- bmdProgressiveFrame = 0x70726f67,
- bmdProgressiveSegmentedFrame = 0x70736620
- } BMDFieldDominance;
-
-typedef /* [v1_enum] */
-enum _BMDPixelFormat
- {
- bmdFormat8BitYUV = 0x32767579,
- bmdFormat10BitYUV = 0x76323130,
- bmdFormat8BitARGB = 32,
- bmdFormat8BitBGRA = 0x42475241,
- bmdFormat10BitRGB = 0x72323130,
- bmdFormat12BitRGB = 0x52313242,
- bmdFormat12BitRGBLE = 0x5231324c,
- bmdFormat10BitRGBXLE = 0x5231306c,
- bmdFormat10BitRGBX = 0x52313062
- } BMDPixelFormat;
-
-/* [v1_enum] */
-enum _BMDDisplayModeFlags
- {
- bmdDisplayModeSupports3D = ( 1 << 0 ) ,
- bmdDisplayModeColorspaceRec601 = ( 1 << 1 ) ,
- bmdDisplayModeColorspaceRec709 = ( 1 << 2 )
- } ;
-
-
-#if 0
-#endif
-
-#if 0
-#endif
-typedef /* [v1_enum] */
-enum _BMDDeckLinkConfigurationID
- {
- bmdDeckLinkConfigSwapSerialRxTx = 0x73737274,
- bmdDeckLinkConfigUse1080pNotPsF = 0x6670726f,
- bmdDeckLinkConfigHDMI3DPackingFormat = 0x33647066,
- bmdDeckLinkConfigBypass = 0x62797073,
- bmdDeckLinkConfigClockTimingAdjustment = 0x63746164,
- bmdDeckLinkConfigAnalogAudioConsumerLevels = 0x6161636c,
- bmdDeckLinkConfigFieldFlickerRemoval = 0x66646672,
- bmdDeckLinkConfigHD1080p24ToHD1080i5994Conversion = 0x746f3539,
- bmdDeckLinkConfig444SDIVideoOutput = 0x3434346f,
- bmdDeckLinkConfigSingleLinkVideoOutput = 0x73676c6f,
- bmdDeckLinkConfigBlackVideoOutputDuringCapture = 0x62766f63,
- bmdDeckLinkConfigLowLatencyVideoOutput = 0x6c6c766f,
- bmdDeckLinkConfigDownConversionOnAllAnalogOutput = 0x6361616f,
- bmdDeckLinkConfigSMPTELevelAOutput = 0x736d7461,
- bmdDeckLinkConfigVideoOutputConnection = 0x766f636e,
- bmdDeckLinkConfigVideoOutputConversionMode = 0x766f636d,
- bmdDeckLinkConfigAnalogVideoOutputFlags = 0x61766f66,
- bmdDeckLinkConfigReferenceInputTimingOffset = 0x676c6f74,
- bmdDeckLinkConfigVideoOutputIdleOperation = 0x766f696f,
- bmdDeckLinkConfigDefaultVideoOutputMode = 0x64766f6d,
- bmdDeckLinkConfigDefaultVideoOutputModeFlags = 0x64766f66,
- bmdDeckLinkConfigVideoOutputComponentLumaGain = 0x6f636c67,
- bmdDeckLinkConfigVideoOutputComponentChromaBlueGain = 0x6f636362,
- bmdDeckLinkConfigVideoOutputComponentChromaRedGain = 0x6f636372,
- bmdDeckLinkConfigVideoOutputCompositeLumaGain = 0x6f696c67,
- bmdDeckLinkConfigVideoOutputCompositeChromaGain = 0x6f696367,
- bmdDeckLinkConfigVideoOutputSVideoLumaGain = 0x6f736c67,
- bmdDeckLinkConfigVideoOutputSVideoChromaGain = 0x6f736367,
- bmdDeckLinkConfigVideoInputScanning = 0x76697363,
- bmdDeckLinkConfigUseDedicatedLTCInput = 0x646c7463,
- bmdDeckLinkConfigVideoInputConnection = 0x7669636e,
- bmdDeckLinkConfigAnalogVideoInputFlags = 0x61766966,
- bmdDeckLinkConfigVideoInputConversionMode = 0x7669636d,
- bmdDeckLinkConfig32PulldownSequenceInitialTimecodeFrame = 0x70646966,
- bmdDeckLinkConfigVANCSourceLine1Mapping = 0x76736c31,
- bmdDeckLinkConfigVANCSourceLine2Mapping = 0x76736c32,
- bmdDeckLinkConfigVANCSourceLine3Mapping = 0x76736c33,
- bmdDeckLinkConfigCapturePassThroughMode = 0x6370746d,
- bmdDeckLinkConfigVideoInputComponentLumaGain = 0x69636c67,
- bmdDeckLinkConfigVideoInputComponentChromaBlueGain = 0x69636362,
- bmdDeckLinkConfigVideoInputComponentChromaRedGain = 0x69636372,
- bmdDeckLinkConfigVideoInputCompositeLumaGain = 0x69696c67,
- bmdDeckLinkConfigVideoInputCompositeChromaGain = 0x69696367,
- bmdDeckLinkConfigVideoInputSVideoLumaGain = 0x69736c67,
- bmdDeckLinkConfigVideoInputSVideoChromaGain = 0x69736367,
- bmdDeckLinkConfigAudioInputConnection = 0x6169636e,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel1 = 0x61697331,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel2 = 0x61697332,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel3 = 0x61697333,
- bmdDeckLinkConfigAnalogAudioInputScaleChannel4 = 0x61697334,
- bmdDeckLinkConfigDigitalAudioInputScale = 0x64616973,
- bmdDeckLinkConfigAudioOutputAESAnalogSwitch = 0x616f6161,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel1 = 0x616f7331,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel2 = 0x616f7332,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel3 = 0x616f7333,
- bmdDeckLinkConfigAnalogAudioOutputScaleChannel4 = 0x616f7334,
- bmdDeckLinkConfigDigitalAudioOutputScale = 0x64616f73,
- bmdDeckLinkConfigDeviceInformationLabel = 0x64696c61,
- bmdDeckLinkConfigDeviceInformationSerialNumber = 0x6469736e,
- bmdDeckLinkConfigDeviceInformationCompany = 0x6469636f,
- bmdDeckLinkConfigDeviceInformationPhone = 0x64697068,
- bmdDeckLinkConfigDeviceInformationEmail = 0x6469656d,
- bmdDeckLinkConfigDeviceInformationDate = 0x64696461
- } BMDDeckLinkConfigurationID;
-
-
-typedef unsigned int BMDDeckControlStatusFlags;
-typedef unsigned int BMDDeckControlExportModeOpsFlags;
-#if 0
-typedef enum _BMDDeckControlStatusFlags BMDDeckControlStatusFlags;
-
-typedef enum _BMDDeckControlExportModeOpsFlags BMDDeckControlExportModeOpsFlags;
-
-#endif
-typedef /* [v1_enum] */
-enum _BMDDeckControlMode
- {
- bmdDeckControlNotOpened = 0x6e746f70,
- bmdDeckControlVTRControlMode = 0x76747263,
- bmdDeckControlExportMode = 0x6578706d,
- bmdDeckControlCaptureMode = 0x6361706d
- } BMDDeckControlMode;
-
-typedef /* [v1_enum] */
-enum _BMDDeckControlEvent
- {
- bmdDeckControlAbortedEvent = 0x61627465,
- bmdDeckControlPrepareForExportEvent = 0x70666565,
- bmdDeckControlExportCompleteEvent = 0x65786365,
- bmdDeckControlPrepareForCaptureEvent = 0x70666365,
- bmdDeckControlCaptureCompleteEvent = 0x63636576
- } BMDDeckControlEvent;
-
-typedef /* [v1_enum] */
-enum _BMDDeckControlVTRControlState
- {
- bmdDeckControlNotInVTRControlMode = 0x6e76636d,
- bmdDeckControlVTRControlPlaying = 0x76747270,
- bmdDeckControlVTRControlRecording = 0x76747272,
- bmdDeckControlVTRControlStill = 0x76747261,
- bmdDeckControlVTRControlShuttleForward = 0x76747366,
- bmdDeckControlVTRControlShuttleReverse = 0x76747372,
- bmdDeckControlVTRControlJogForward = 0x76746a66,
- bmdDeckControlVTRControlJogReverse = 0x76746a72,
- bmdDeckControlVTRControlStopped = 0x7674726f
- } BMDDeckControlVTRControlState;
-
-/* [v1_enum] */
-enum _BMDDeckControlStatusFlags
- {
- bmdDeckControlStatusDeckConnected = ( 1 << 0 ) ,
- bmdDeckControlStatusRemoteMode = ( 1 << 1 ) ,
- bmdDeckControlStatusRecordInhibited = ( 1 << 2 ) ,
- bmdDeckControlStatusCassetteOut = ( 1 << 3 )
- } ;
-/* [v1_enum] */
-enum _BMDDeckControlExportModeOpsFlags
- {
- bmdDeckControlExportModeInsertVideo = ( 1 << 0 ) ,
- bmdDeckControlExportModeInsertAudio1 = ( 1 << 1 ) ,
- bmdDeckControlExportModeInsertAudio2 = ( 1 << 2 ) ,
- bmdDeckControlExportModeInsertAudio3 = ( 1 << 3 ) ,
- bmdDeckControlExportModeInsertAudio4 = ( 1 << 4 ) ,
- bmdDeckControlExportModeInsertAudio5 = ( 1 << 5 ) ,
- bmdDeckControlExportModeInsertAudio6 = ( 1 << 6 ) ,
- bmdDeckControlExportModeInsertAudio7 = ( 1 << 7 ) ,
- bmdDeckControlExportModeInsertAudio8 = ( 1 << 8 ) ,
- bmdDeckControlExportModeInsertAudio9 = ( 1 << 9 ) ,
- bmdDeckControlExportModeInsertAudio10 = ( 1 << 10 ) ,
- bmdDeckControlExportModeInsertAudio11 = ( 1 << 11 ) ,
- bmdDeckControlExportModeInsertAudio12 = ( 1 << 12 ) ,
- bmdDeckControlExportModeInsertTimeCode = ( 1 << 13 ) ,
- bmdDeckControlExportModeInsertAssemble = ( 1 << 14 ) ,
- bmdDeckControlExportModeInsertPreview = ( 1 << 15 ) ,
- bmdDeckControlUseManualExport = ( 1 << 16 )
- } ;
-typedef /* [v1_enum] */
-enum _BMDDeckControlError
- {
- bmdDeckControlNoError = 0x6e6f6572,
- bmdDeckControlModeError = 0x6d6f6572,
- bmdDeckControlMissedInPointError = 0x6d696572,
- bmdDeckControlDeckTimeoutError = 0x64746572,
- bmdDeckControlCommandFailedError = 0x63666572,
- bmdDeckControlDeviceAlreadyOpenedError = 0x64616c6f,
- bmdDeckControlFailedToOpenDeviceError = 0x66646572,
- bmdDeckControlInLocalModeError = 0x6c6d6572,
- bmdDeckControlEndOfTapeError = 0x65746572,
- bmdDeckControlUserAbortError = 0x75616572,
- bmdDeckControlNoTapeInDeckError = 0x6e746572,
- bmdDeckControlNoVideoFromCardError = 0x6e766663,
- bmdDeckControlNoCommunicationError = 0x6e636f6d,
- bmdDeckControlBufferTooSmallError = 0x6274736d,
- bmdDeckControlBadChecksumError = 0x63686b73,
- bmdDeckControlUnknownError = 0x756e6572
- } BMDDeckControlError;
-
-
-
-#if 0
-#endif
-typedef /* [v1_enum] */
-enum _BMDStreamingDeviceMode
- {
- bmdStreamingDeviceIdle = 0x69646c65,
- bmdStreamingDeviceEncoding = 0x656e636f,
- bmdStreamingDeviceStopping = 0x73746f70,
- bmdStreamingDeviceUnknown = 0x6d756e6b
- } BMDStreamingDeviceMode;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingEncodingFrameRate
- {
- bmdStreamingEncodedFrameRate50i = 0x65353069,
- bmdStreamingEncodedFrameRate5994i = 0x65353969,
- bmdStreamingEncodedFrameRate60i = 0x65363069,
- bmdStreamingEncodedFrameRate2398p = 0x65323370,
- bmdStreamingEncodedFrameRate24p = 0x65323470,
- bmdStreamingEncodedFrameRate25p = 0x65323570,
- bmdStreamingEncodedFrameRate2997p = 0x65323970,
- bmdStreamingEncodedFrameRate30p = 0x65333070,
- bmdStreamingEncodedFrameRate50p = 0x65353070,
- bmdStreamingEncodedFrameRate5994p = 0x65353970,
- bmdStreamingEncodedFrameRate60p = 0x65363070
- } BMDStreamingEncodingFrameRate;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingEncodingSupport
- {
- bmdStreamingEncodingModeNotSupported = 0,
- bmdStreamingEncodingModeSupported = ( bmdStreamingEncodingModeNotSupported + 1 ) ,
- bmdStreamingEncodingModeSupportedWithChanges = ( bmdStreamingEncodingModeSupported + 1 )
- } BMDStreamingEncodingSupport;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingVideoCodec
- {
- bmdStreamingVideoCodecH264 = 0x48323634
- } BMDStreamingVideoCodec;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingH264Profile
- {
- bmdStreamingH264ProfileHigh = 0x68696768,
- bmdStreamingH264ProfileMain = 0x6d61696e,
- bmdStreamingH264ProfileBaseline = 0x62617365
- } BMDStreamingH264Profile;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingH264Level
- {
- bmdStreamingH264Level12 = 0x6c763132,
- bmdStreamingH264Level13 = 0x6c763133,
- bmdStreamingH264Level2 = 0x6c763220,
- bmdStreamingH264Level21 = 0x6c763231,
- bmdStreamingH264Level22 = 0x6c763232,
- bmdStreamingH264Level3 = 0x6c763320,
- bmdStreamingH264Level31 = 0x6c763331,
- bmdStreamingH264Level32 = 0x6c763332,
- bmdStreamingH264Level4 = 0x6c763420,
- bmdStreamingH264Level41 = 0x6c763431,
- bmdStreamingH264Level42 = 0x6c763432
- } BMDStreamingH264Level;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingH264EntropyCoding
- {
- bmdStreamingH264EntropyCodingCAVLC = 0x45564c43,
- bmdStreamingH264EntropyCodingCABAC = 0x45424143
- } BMDStreamingH264EntropyCoding;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingAudioCodec
- {
- bmdStreamingAudioCodecAAC = 0x41414320
- } BMDStreamingAudioCodec;
-
-typedef /* [v1_enum] */
-enum _BMDStreamingEncodingModePropertyID
- {
- bmdStreamingEncodingPropertyVideoFrameRate = 0x76667274,
- bmdStreamingEncodingPropertyVideoBitRateKbps = 0x76627274,
- bmdStreamingEncodingPropertyH264Profile = 0x68707266,
- bmdStreamingEncodingPropertyH264Level = 0x686c766c,
- bmdStreamingEncodingPropertyH264EntropyCoding = 0x68656e74,
- bmdStreamingEncodingPropertyH264HasBFrames = 0x68426672,
- bmdStreamingEncodingPropertyAudioCodec = 0x61636463,
- bmdStreamingEncodingPropertyAudioSampleRate = 0x61737274,
- bmdStreamingEncodingPropertyAudioChannelCount = 0x61636863,
- bmdStreamingEncodingPropertyAudioBitRateKbps = 0x61627274
- } BMDStreamingEncodingModePropertyID;
-
-
-
-
-
-
-
-
-
-
-
-
-typedef unsigned int BMDFrameFlags;
-typedef unsigned int BMDVideoInputFlags;
-typedef unsigned int BMDVideoInputFormatChangedEvents;
-typedef unsigned int BMDDetectedVideoInputFormatFlags;
-typedef unsigned int BMDDeckLinkCapturePassthroughMode;
-typedef unsigned int BMDAnalogVideoFlags;
-typedef unsigned int BMDDeviceBusyState;
-#if 0
-typedef enum _BMDFrameFlags BMDFrameFlags;
-
-typedef enum _BMDVideoInputFlags BMDVideoInputFlags;
-
-typedef enum _BMDVideoInputFormatChangedEvents BMDVideoInputFormatChangedEvents;
-
-typedef enum _BMDDetectedVideoInputFormatFlags BMDDetectedVideoInputFormatFlags;
-
-typedef enum _BMDDeckLinkCapturePassthroughMode BMDDeckLinkCapturePassthroughMode;
-
-typedef enum _BMDAnalogVideoFlags BMDAnalogVideoFlags;
-
-typedef enum _BMDDeviceBusyState BMDDeviceBusyState;
-
-#endif
-typedef /* [v1_enum] */
-enum _BMDVideoOutputFlags
- {
- bmdVideoOutputFlagDefault = 0,
- bmdVideoOutputVANC = ( 1 << 0 ) ,
- bmdVideoOutputVITC = ( 1 << 1 ) ,
- bmdVideoOutputRP188 = ( 1 << 2 ) ,
- bmdVideoOutputDualStream3D = ( 1 << 4 )
- } BMDVideoOutputFlags;
-
-/* [v1_enum] */
-enum _BMDFrameFlags
- {
- bmdFrameFlagDefault = 0,
- bmdFrameFlagFlipVertical = ( 1 << 0 ) ,
- bmdFrameHasNoInputSource = ( 1 << 31 )
- } ;
-/* [v1_enum] */
-enum _BMDVideoInputFlags
- {
- bmdVideoInputFlagDefault = 0,
- bmdVideoInputEnableFormatDetection = ( 1 << 0 ) ,
- bmdVideoInputDualStream3D = ( 1 << 1 )
- } ;
-/* [v1_enum] */
-enum _BMDVideoInputFormatChangedEvents
- {
- bmdVideoInputDisplayModeChanged = ( 1 << 0 ) ,
- bmdVideoInputFieldDominanceChanged = ( 1 << 1 ) ,
- bmdVideoInputColorspaceChanged = ( 1 << 2 )
- } ;
-/* [v1_enum] */
-enum _BMDDetectedVideoInputFormatFlags
- {
- bmdDetectedVideoInputYCbCr422 = ( 1 << 0 ) ,
- bmdDetectedVideoInputRGB444 = ( 1 << 1 ) ,
- bmdDetectedVideoInputDualStream3D = ( 1 << 2 )
- } ;
-/* [v1_enum] */
-enum _BMDDeckLinkCapturePassthroughMode
- {
- bmdDeckLinkCapturePassthroughModeDirect = 0x70646972,
- bmdDeckLinkCapturePassthroughModeCleanSwitch = 0x70636c6e
- } ;
-typedef /* [v1_enum] */
-enum _BMDOutputFrameCompletionResult
- {
- bmdOutputFrameCompleted = 0,
- bmdOutputFrameDisplayedLate = ( bmdOutputFrameCompleted + 1 ) ,
- bmdOutputFrameDropped = ( bmdOutputFrameDisplayedLate + 1 ) ,
- bmdOutputFrameFlushed = ( bmdOutputFrameDropped + 1 )
- } BMDOutputFrameCompletionResult;
-
-typedef /* [v1_enum] */
-enum _BMDReferenceStatus
- {
- bmdReferenceNotSupportedByHardware = ( 1 << 0 ) ,
- bmdReferenceLocked = ( 1 << 1 )
- } BMDReferenceStatus;
-
-typedef /* [v1_enum] */
-enum _BMDAudioSampleRate
- {
- bmdAudioSampleRate48kHz = 48000
- } BMDAudioSampleRate;
-
-typedef /* [v1_enum] */
-enum _BMDAudioSampleType
- {
- bmdAudioSampleType16bitInteger = 16,
- bmdAudioSampleType32bitInteger = 32
- } BMDAudioSampleType;
-
-typedef /* [v1_enum] */
-enum _BMDAudioOutputStreamType
- {
- bmdAudioOutputStreamContinuous = 0,
- bmdAudioOutputStreamContinuousDontResample = ( bmdAudioOutputStreamContinuous + 1 ) ,
- bmdAudioOutputStreamTimestamped = ( bmdAudioOutputStreamContinuousDontResample + 1 )
- } BMDAudioOutputStreamType;
-
-typedef /* [v1_enum] */
-enum _BMDDisplayModeSupport
- {
- bmdDisplayModeNotSupported = 0,
- bmdDisplayModeSupported = ( bmdDisplayModeNotSupported + 1 ) ,
- bmdDisplayModeSupportedWithConversion = ( bmdDisplayModeSupported + 1 )
- } BMDDisplayModeSupport;
-
-typedef /* [v1_enum] */
-enum _BMDTimecodeFormat
- {
- bmdTimecodeRP188VITC1 = 0x72707631,
- bmdTimecodeRP188VITC2 = 0x72703132,
- bmdTimecodeRP188LTC = 0x72706c74,
- bmdTimecodeRP188Any = 0x72703138,
- bmdTimecodeVITC = 0x76697463,
- bmdTimecodeVITCField2 = 0x76697432,
- bmdTimecodeSerial = 0x73657269
- } BMDTimecodeFormat;
-
-/* [v1_enum] */
-enum _BMDAnalogVideoFlags
- {
- bmdAnalogVideoFlagCompositeSetup75 = ( 1 << 0 ) ,
- bmdAnalogVideoFlagComponentBetacamLevels = ( 1 << 1 )
- } ;
-typedef /* [v1_enum] */
-enum _BMDAudioOutputAnalogAESSwitch
- {
- bmdAudioOutputSwitchAESEBU = 0x61657320,
- bmdAudioOutputSwitchAnalog = 0x616e6c67
- } BMDAudioOutputAnalogAESSwitch;
-
-typedef /* [v1_enum] */
-enum _BMDVideoOutputConversionMode
- {
- bmdNoVideoOutputConversion = 0x6e6f6e65,
- bmdVideoOutputLetterboxDownconversion = 0x6c746278,
- bmdVideoOutputAnamorphicDownconversion = 0x616d7068,
- bmdVideoOutputHD720toHD1080Conversion = 0x37323063,
- bmdVideoOutputHardwareLetterboxDownconversion = 0x48576c62,
- bmdVideoOutputHardwareAnamorphicDownconversion = 0x4857616d,
- bmdVideoOutputHardwareCenterCutDownconversion = 0x48576363,
- bmdVideoOutputHardware720p1080pCrossconversion = 0x78636170,
- bmdVideoOutputHardwareAnamorphic720pUpconversion = 0x75613770,
- bmdVideoOutputHardwareAnamorphic1080iUpconversion = 0x75613169,
- bmdVideoOutputHardwareAnamorphic149To720pUpconversion = 0x75343770,
- bmdVideoOutputHardwareAnamorphic149To1080iUpconversion = 0x75343169,
- bmdVideoOutputHardwarePillarbox720pUpconversion = 0x75703770,
- bmdVideoOutputHardwarePillarbox1080iUpconversion = 0x75703169
- } BMDVideoOutputConversionMode;
-
-typedef /* [v1_enum] */
-enum _BMDVideoInputConversionMode
- {
- bmdNoVideoInputConversion = 0x6e6f6e65,
- bmdVideoInputLetterboxDownconversionFromHD1080 = 0x31306c62,
- bmdVideoInputAnamorphicDownconversionFromHD1080 = 0x3130616d,
- bmdVideoInputLetterboxDownconversionFromHD720 = 0x37326c62,
- bmdVideoInputAnamorphicDownconversionFromHD720 = 0x3732616d,
- bmdVideoInputLetterboxUpconversion = 0x6c627570,
- bmdVideoInputAnamorphicUpconversion = 0x616d7570
- } BMDVideoInputConversionMode;
-
-typedef /* [v1_enum] */
-enum _BMDVideo3DPackingFormat
- {
- bmdVideo3DPackingSidebySideHalf = 0x73627368,
- bmdVideo3DPackingLinebyLine = 0x6c62796c,
- bmdVideo3DPackingTopAndBottom = 0x7461626f,
- bmdVideo3DPackingFramePacking = 0x6672706b,
- bmdVideo3DPackingLeftOnly = 0x6c656674,
- bmdVideo3DPackingRightOnly = 0x72696768
- } BMDVideo3DPackingFormat;
-
-typedef /* [v1_enum] */
-enum _BMDIdleVideoOutputOperation
- {
- bmdIdleVideoOutputBlack = 0x626c6163,
- bmdIdleVideoOutputLastFrame = 0x6c616661,
- bmdIdleVideoOutputDesktop = 0x6465736b
- } BMDIdleVideoOutputOperation;
-
-typedef /* [v1_enum] */
-enum _BMDDeckLinkAttributeID
- {
- BMDDeckLinkSupportsInternalKeying = 0x6b657969,
- BMDDeckLinkSupportsExternalKeying = 0x6b657965,
- BMDDeckLinkSupportsHDKeying = 0x6b657968,
- BMDDeckLinkSupportsInputFormatDetection = 0x696e6664,
- BMDDeckLinkHasReferenceInput = 0x6872696e,
- BMDDeckLinkHasSerialPort = 0x68737074,
- BMDDeckLinkHasAnalogVideoOutputGain = 0x61766f67,
- BMDDeckLinkCanOnlyAdjustOverallVideoOutputGain = 0x6f766f67,
- BMDDeckLinkHasVideoInputAntiAliasingFilter = 0x6161666c,
- BMDDeckLinkHasBypass = 0x62797073,
- BMDDeckLinkSupportsDesktopDisplay = 0x65787464,
- BMDDeckLinkSupportsClockTimingAdjustment = 0x63746164,
- BMDDeckLinkSupportsFullDuplex = 0x66647570,
- BMDDeckLinkSupportsFullFrameReferenceInputTimingOffset = 0x6672696e,
- BMDDeckLinkSupportsSMPTELevelAOutput = 0x6c766c61,
- BMDDeckLinkSupportsDualLinkSDI = 0x73646c73,
- BMDDeckLinkSupportsIdleOutput = 0x69646f75,
- BMDDeckLinkMaximumAudioChannels = 0x6d616368,
- BMDDeckLinkMaximumAnalogAudioChannels = 0x61616368,
- BMDDeckLinkNumberOfSubDevices = 0x6e736264,
- BMDDeckLinkSubDeviceIndex = 0x73756269,
- BMDDeckLinkPersistentID = 0x70656964,
- BMDDeckLinkTopologicalID = 0x746f6964,
- BMDDeckLinkVideoOutputConnections = 0x766f636e,
- BMDDeckLinkVideoInputConnections = 0x7669636e,
- BMDDeckLinkAudioOutputConnections = 0x616f636e,
- BMDDeckLinkAudioInputConnections = 0x6169636e,
- BMDDeckLinkDeviceBusyState = 0x64627374,
- BMDDeckLinkVideoIOSupport = 0x76696f73,
- BMDDeckLinkVideoInputGainMinimum = 0x7669676d,
- BMDDeckLinkVideoInputGainMaximum = 0x76696778,
- BMDDeckLinkVideoOutputGainMinimum = 0x766f676d,
- BMDDeckLinkVideoOutputGainMaximum = 0x766f6778,
- BMDDeckLinkSerialPortDeviceName = 0x736c706e
- } BMDDeckLinkAttributeID;
-
-typedef /* [v1_enum] */
-enum _BMDDeckLinkAPIInformationID
- {
- BMDDeckLinkAPIVersion = 0x76657273
- } BMDDeckLinkAPIInformationID;
-
-/* [v1_enum] */
-enum _BMDDeviceBusyState
- {
- bmdDeviceCaptureBusy = ( 1 << 0 ) ,
- bmdDevicePlaybackBusy = ( 1 << 1 ) ,
- bmdDeviceSerialPortBusy = ( 1 << 2 )
- } ;
-typedef /* [v1_enum] */
-enum _BMDVideoIOSupport
- {
- bmdDeviceSupportsCapture = ( 1 << 0 ) ,
- bmdDeviceSupportsPlayback = ( 1 << 1 )
- } BMDVideoIOSupport;
-
-typedef /* [v1_enum] */
-enum _BMD3DPreviewFormat
- {
- bmd3DPreviewFormatDefault = 0x64656661,
- bmd3DPreviewFormatLeftOnly = 0x6c656674,
- bmd3DPreviewFormatRightOnly = 0x72696768,
- bmd3DPreviewFormatSideBySide = 0x73696465,
- bmd3DPreviewFormatTopBottom = 0x746f7062
- } BMD3DPreviewFormat;
-
-typedef /* [v1_enum] */
-enum _BMDNotifications
- {
- bmdPreferencesChanged = 0x70726566
- } BMDNotifications;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-typedef /* [v1_enum] */
-enum _BMDDeckLinkConfigurationID_v10_2
- {
- bmdDeckLinkConfig3GBpsVideoOutput_v10_2 = 0x33676273
- } BMDDeckLinkConfigurationID_v10_2;
-
-typedef /* [v1_enum] */
-enum _BMDAudioConnection_v10_2
- {
- bmdAudioConnectionEmbedded_v10_2 = 0x656d6264,
- bmdAudioConnectionAESEBU_v10_2 = 0x61657320,
- bmdAudioConnectionAnalog_v10_2 = 0x616e6c67,
- bmdAudioConnectionAnalogXLR_v10_2 = 0x61786c72,
- bmdAudioConnectionAnalogRCA_v10_2 = 0x61726361
- } BMDAudioConnection_v10_2;
-
-
-typedef /* [v1_enum] */
-enum _BMDDeckControlVTRControlState_v8_1
- {
- bmdDeckControlNotInVTRControlMode_v8_1 = 0x6e76636d,
- bmdDeckControlVTRControlPlaying_v8_1 = 0x76747270,
- bmdDeckControlVTRControlRecording_v8_1 = 0x76747272,
- bmdDeckControlVTRControlStill_v8_1 = 0x76747261,
- bmdDeckControlVTRControlSeeking_v8_1 = 0x76747273,
- bmdDeckControlVTRControlStopped_v8_1 = 0x7674726f
- } BMDDeckControlVTRControlState_v8_1;
-
-
-
-typedef /* [v1_enum] */
-enum _BMDVideoConnection_v7_6
- {
- bmdVideoConnectionSDI_v7_6 = 0x73646920,
- bmdVideoConnectionHDMI_v7_6 = 0x68646d69,
- bmdVideoConnectionOpticalSDI_v7_6 = 0x6f707469,
- bmdVideoConnectionComponent_v7_6 = 0x63706e74,
- bmdVideoConnectionComposite_v7_6 = 0x636d7374,
- bmdVideoConnectionSVideo_v7_6 = 0x73766964
- } BMDVideoConnection_v7_6;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-EXTERN_C const IID LIBID_DeckLinkAPI;
-
-#ifndef __IDeckLinkTimecode_INTERFACE_DEFINED__
-#define __IDeckLinkTimecode_INTERFACE_DEFINED__
-
-/* interface IDeckLinkTimecode */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkTimecode;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("BC6CFBD3-8317-4325-AC1C-1216391E9340")
- IDeckLinkTimecode : public IUnknown
- {
- public:
- virtual BMDTimecodeBCD STDMETHODCALLTYPE GetBCD( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetComponents(
- /* [out] */ unsigned char *hours,
- /* [out] */ unsigned char *minutes,
- /* [out] */ unsigned char *seconds,
- /* [out] */ unsigned char *frames) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [out] */ BSTR *timecode) = 0;
-
- virtual BMDTimecodeFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeUserBits(
- /* [out] */ BMDTimecodeUserBits *userBits) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkTimecodeVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkTimecode * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkTimecode * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkTimecode * This);
-
- BMDTimecodeBCD ( STDMETHODCALLTYPE *GetBCD )(
- IDeckLinkTimecode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetComponents )(
- IDeckLinkTimecode * This,
- /* [out] */ unsigned char *hours,
- /* [out] */ unsigned char *minutes,
- /* [out] */ unsigned char *seconds,
- /* [out] */ unsigned char *frames);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkTimecode * This,
- /* [out] */ BSTR *timecode);
-
- BMDTimecodeFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkTimecode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeUserBits )(
- IDeckLinkTimecode * This,
- /* [out] */ BMDTimecodeUserBits *userBits);
-
- END_INTERFACE
- } IDeckLinkTimecodeVtbl;
-
- interface IDeckLinkTimecode
- {
- CONST_VTBL struct IDeckLinkTimecodeVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkTimecode_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkTimecode_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkTimecode_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkTimecode_GetBCD(This) \
- ( (This)->lpVtbl -> GetBCD(This) )
-
-#define IDeckLinkTimecode_GetComponents(This,hours,minutes,seconds,frames) \
- ( (This)->lpVtbl -> GetComponents(This,hours,minutes,seconds,frames) )
-
-#define IDeckLinkTimecode_GetString(This,timecode) \
- ( (This)->lpVtbl -> GetString(This,timecode) )
-
-#define IDeckLinkTimecode_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkTimecode_GetTimecodeUserBits(This,userBits) \
- ( (This)->lpVtbl -> GetTimecodeUserBits(This,userBits) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkTimecode_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayModeIterator */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayModeIterator;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("9C88499F-F601-4021-B80B-032E4EB41C35")
- IDeckLinkDisplayModeIterator : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IDeckLinkDisplayMode **deckLinkDisplayMode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayModeIteratorVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayModeIterator * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayModeIterator * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayModeIterator * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IDeckLinkDisplayModeIterator * This,
- /* [out] */ IDeckLinkDisplayMode **deckLinkDisplayMode);
-
- END_INTERFACE
- } IDeckLinkDisplayModeIteratorVtbl;
-
- interface IDeckLinkDisplayModeIterator
- {
- CONST_VTBL struct IDeckLinkDisplayModeIteratorVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayModeIterator_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayModeIterator_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayModeIterator_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayModeIterator_Next(This,deckLinkDisplayMode) \
- ( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayMode_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayMode */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayMode;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("3EB2C1AB-0A3D-4523-A3AD-F40D7FB14E78")
- IDeckLinkDisplayMode : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetName(
- /* [out] */ BSTR *name) = 0;
-
- virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFrameRate(
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale) = 0;
-
- virtual BMDFieldDominance STDMETHODCALLTYPE GetFieldDominance( void) = 0;
-
- virtual BMDDisplayModeFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayModeVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayMode * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayMode * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetName )(
- IDeckLinkDisplayMode * This,
- /* [out] */ BSTR *name);
-
- BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
- IDeckLinkDisplayMode * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkDisplayMode * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkDisplayMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameRate )(
- IDeckLinkDisplayMode * This,
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale);
-
- BMDFieldDominance ( STDMETHODCALLTYPE *GetFieldDominance )(
- IDeckLinkDisplayMode * This);
-
- BMDDisplayModeFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkDisplayMode * This);
-
- END_INTERFACE
- } IDeckLinkDisplayModeVtbl;
-
- interface IDeckLinkDisplayMode
- {
- CONST_VTBL struct IDeckLinkDisplayModeVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayMode_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayMode_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayMode_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayMode_GetName(This,name) \
- ( (This)->lpVtbl -> GetName(This,name) )
-
-#define IDeckLinkDisplayMode_GetDisplayMode(This) \
- ( (This)->lpVtbl -> GetDisplayMode(This) )
-
-#define IDeckLinkDisplayMode_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkDisplayMode_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkDisplayMode_GetFrameRate(This,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) )
-
-#define IDeckLinkDisplayMode_GetFieldDominance(This) \
- ( (This)->lpVtbl -> GetFieldDominance(This) )
-
-#define IDeckLinkDisplayMode_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayMode_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLink_INTERFACE_DEFINED__
-#define __IDeckLink_INTERFACE_DEFINED__
-
-/* interface IDeckLink */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLink;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("C418FBDD-0587-48ED-8FE5-640F0A14AF91")
- IDeckLink : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetModelName(
- /* [out] */ BSTR *modelName) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
- /* [out] */ BSTR *displayName) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLink * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLink * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLink * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetModelName )(
- IDeckLink * This,
- /* [out] */ BSTR *modelName);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
- IDeckLink * This,
- /* [out] */ BSTR *displayName);
-
- END_INTERFACE
- } IDeckLinkVtbl;
-
- interface IDeckLink
- {
- CONST_VTBL struct IDeckLinkVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLink_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLink_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLink_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLink_GetModelName(This,modelName) \
- ( (This)->lpVtbl -> GetModelName(This,modelName) )
-
-#define IDeckLink_GetDisplayName(This,displayName) \
- ( (This)->lpVtbl -> GetDisplayName(This,displayName) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLink_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkConfiguration_INTERFACE_DEFINED__
-#define __IDeckLinkConfiguration_INTERFACE_DEFINED__
-
-/* interface IDeckLinkConfiguration */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkConfiguration;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("1E69FCF6-4203-4936-8076-2A9F4CFD50CB")
- IDeckLinkConfiguration : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE SetFlag(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BOOL value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFlag(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BOOL *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetInt(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ LONGLONG value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetInt(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ LONGLONG *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFloat(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ double value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFloat(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ double *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetString(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BSTR value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BSTR *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteConfigurationToPreferences( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkConfigurationVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkConfiguration * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkConfiguration * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkConfiguration * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetFlag )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BOOL value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetInt )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ LONGLONG value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetFloat )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ double value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetString )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BSTR value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkConfiguration * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BSTR *value);
-
- HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
- IDeckLinkConfiguration * This);
-
- END_INTERFACE
- } IDeckLinkConfigurationVtbl;
-
- interface IDeckLinkConfiguration
- {
- CONST_VTBL struct IDeckLinkConfigurationVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkConfiguration_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkConfiguration_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkConfiguration_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkConfiguration_SetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_SetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> SetInt(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_SetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_SetString(This,cfgID,value) \
- ( (This)->lpVtbl -> SetString(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_WriteConfigurationToPreferences(This) \
- ( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkConfiguration_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__
-#define __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeckControlStatusCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeckControlStatusCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("53436FFB-B434-4906-BADC-AE3060FFE8EF")
- IDeckLinkDeckControlStatusCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE TimecodeUpdate(
- /* [in] */ BMDTimecodeBCD currentTimecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE VTRControlStateChanged(
- /* [in] */ BMDDeckControlVTRControlState newState,
- /* [in] */ BMDDeckControlError error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DeckControlEventReceived(
- /* [in] */ BMDDeckControlEvent event,
- /* [in] */ BMDDeckControlError error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DeckControlStatusChanged(
- /* [in] */ BMDDeckControlStatusFlags flags,
- /* [in] */ unsigned int mask) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeckControlStatusCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeckControlStatusCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeckControlStatusCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeckControlStatusCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *TimecodeUpdate )(
- IDeckLinkDeckControlStatusCallback * This,
- /* [in] */ BMDTimecodeBCD currentTimecode);
-
- HRESULT ( STDMETHODCALLTYPE *VTRControlStateChanged )(
- IDeckLinkDeckControlStatusCallback * This,
- /* [in] */ BMDDeckControlVTRControlState newState,
- /* [in] */ BMDDeckControlError error);
-
- HRESULT ( STDMETHODCALLTYPE *DeckControlEventReceived )(
- IDeckLinkDeckControlStatusCallback * This,
- /* [in] */ BMDDeckControlEvent event,
- /* [in] */ BMDDeckControlError error);
-
- HRESULT ( STDMETHODCALLTYPE *DeckControlStatusChanged )(
- IDeckLinkDeckControlStatusCallback * This,
- /* [in] */ BMDDeckControlStatusFlags flags,
- /* [in] */ unsigned int mask);
-
- END_INTERFACE
- } IDeckLinkDeckControlStatusCallbackVtbl;
-
- interface IDeckLinkDeckControlStatusCallback
- {
- CONST_VTBL struct IDeckLinkDeckControlStatusCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeckControlStatusCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeckControlStatusCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeckControlStatusCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeckControlStatusCallback_TimecodeUpdate(This,currentTimecode) \
- ( (This)->lpVtbl -> TimecodeUpdate(This,currentTimecode) )
-
-#define IDeckLinkDeckControlStatusCallback_VTRControlStateChanged(This,newState,error) \
- ( (This)->lpVtbl -> VTRControlStateChanged(This,newState,error) )
-
-#define IDeckLinkDeckControlStatusCallback_DeckControlEventReceived(This,event,error) \
- ( (This)->lpVtbl -> DeckControlEventReceived(This,event,error) )
-
-#define IDeckLinkDeckControlStatusCallback_DeckControlStatusChanged(This,flags,mask) \
- ( (This)->lpVtbl -> DeckControlStatusChanged(This,flags,mask) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControl_INTERFACE_DEFINED__
-#define __IDeckLinkDeckControl_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeckControl */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeckControl;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("8E1C3ACE-19C7-4E00-8B92-D80431D958BE")
- IDeckLinkDeckControl : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Open(
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Close(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentState(
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetStandby(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SendCommand(
- /* [in] */ unsigned char *inBuffer,
- /* [in] */ unsigned int inBufferSize,
- /* [out] */ unsigned char *outBuffer,
- /* [out] */ unsigned int *outDataSize,
- /* [in] */ unsigned int outBufferSize,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Play(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Stop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE TogglePlayStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Eject(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GoToTimecode(
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FastForward(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Rewind(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepForward(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepBack(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Jog(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Shuttle(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeString(
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecode(
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeBCD(
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetPreroll(
- /* [in] */ unsigned int prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPreroll(
- /* [out] */ unsigned int *prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetExportOffset(
- /* [in] */ int exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetExportOffset(
- /* [out] */ int *exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetManualExportOffset(
- /* [out] */ int *deckManualExportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCaptureOffset(
- /* [in] */ int captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCaptureOffset(
- /* [out] */ int *captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartExport(
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartCapture(
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDeviceID(
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Abort( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStart(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkDeckControlStatusCallback *callback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeckControlVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeckControl * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeckControl * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeckControl * This);
-
- HRESULT ( STDMETHODCALLTYPE *Open )(
- IDeckLinkDeckControl * This,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Close )(
- IDeckLinkDeckControl * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags);
-
- HRESULT ( STDMETHODCALLTYPE *SetStandby )(
- IDeckLinkDeckControl * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *SendCommand )(
- IDeckLinkDeckControl * This,
- /* [in] */ unsigned char *inBuffer,
- /* [in] */ unsigned int inBufferSize,
- /* [out] */ unsigned char *outBuffer,
- /* [out] */ unsigned int *outDataSize,
- /* [in] */ unsigned int outBufferSize,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Play )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Stop )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Eject )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
- IDeckLinkDeckControl * This,
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *FastForward )(
- IDeckLinkDeckControl * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Rewind )(
- IDeckLinkDeckControl * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepForward )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepBack )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Jog )(
- IDeckLinkDeckControl * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Shuttle )(
- IDeckLinkDeckControl * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
- IDeckLinkDeckControl * This,
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkDeckControl * This,
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
- IDeckLinkDeckControl * This,
- /* [in] */ unsigned int prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
- IDeckLinkDeckControl * This,
- /* [out] */ unsigned int *prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
- IDeckLinkDeckControl * This,
- /* [in] */ int exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
- IDeckLinkDeckControl * This,
- /* [out] */ int *exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
- IDeckLinkDeckControl * This,
- /* [out] */ int *deckManualExportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
- IDeckLinkDeckControl * This,
- /* [in] */ int captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
- IDeckLinkDeckControl * This,
- /* [out] */ int *captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *StartExport )(
- IDeckLinkDeckControl * This,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StartCapture )(
- IDeckLinkDeckControl * This,
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
- IDeckLinkDeckControl * This,
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Abort )(
- IDeckLinkDeckControl * This);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
- IDeckLinkDeckControl * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkDeckControl * This,
- /* [in] */ IDeckLinkDeckControlStatusCallback *callback);
-
- END_INTERFACE
- } IDeckLinkDeckControlVtbl;
-
- interface IDeckLinkDeckControl
- {
- CONST_VTBL struct IDeckLinkDeckControlVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeckControl_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeckControl_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeckControl_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeckControl_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
- ( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
-
-#define IDeckLinkDeckControl_Close(This,standbyOn) \
- ( (This)->lpVtbl -> Close(This,standbyOn) )
-
-#define IDeckLinkDeckControl_GetCurrentState(This,mode,vtrControlState,flags) \
- ( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
-
-#define IDeckLinkDeckControl_SetStandby(This,standbyOn) \
- ( (This)->lpVtbl -> SetStandby(This,standbyOn) )
-
-#define IDeckLinkDeckControl_SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) \
- ( (This)->lpVtbl -> SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) )
-
-#define IDeckLinkDeckControl_Play(This,error) \
- ( (This)->lpVtbl -> Play(This,error) )
-
-#define IDeckLinkDeckControl_Stop(This,error) \
- ( (This)->lpVtbl -> Stop(This,error) )
-
-#define IDeckLinkDeckControl_TogglePlayStop(This,error) \
- ( (This)->lpVtbl -> TogglePlayStop(This,error) )
-
-#define IDeckLinkDeckControl_Eject(This,error) \
- ( (This)->lpVtbl -> Eject(This,error) )
-
-#define IDeckLinkDeckControl_GoToTimecode(This,timecode,error) \
- ( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
-
-#define IDeckLinkDeckControl_FastForward(This,viewTape,error) \
- ( (This)->lpVtbl -> FastForward(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_Rewind(This,viewTape,error) \
- ( (This)->lpVtbl -> Rewind(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_StepForward(This,error) \
- ( (This)->lpVtbl -> StepForward(This,error) )
-
-#define IDeckLinkDeckControl_StepBack(This,error) \
- ( (This)->lpVtbl -> StepBack(This,error) )
-
-#define IDeckLinkDeckControl_Jog(This,rate,error) \
- ( (This)->lpVtbl -> Jog(This,rate,error) )
-
-#define IDeckLinkDeckControl_Shuttle(This,rate,error) \
- ( (This)->lpVtbl -> Shuttle(This,rate,error) )
-
-#define IDeckLinkDeckControl_GetTimecodeString(This,currentTimeCode,error) \
- ( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
-
-#define IDeckLinkDeckControl_GetTimecode(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_GetTimecodeBCD(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_SetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_GetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_SetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_GetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_GetManualExportOffset(This,deckManualExportOffsetFields) \
- ( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
-
-#define IDeckLinkDeckControl_SetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_GetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
- ( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
-
-#define IDeckLinkDeckControl_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
- ( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
-
-#define IDeckLinkDeckControl_GetDeviceID(This,deviceId,error) \
- ( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
-
-#define IDeckLinkDeckControl_Abort(This) \
- ( (This)->lpVtbl -> Abort(This) )
-
-#define IDeckLinkDeckControl_CrashRecordStart(This,error) \
- ( (This)->lpVtbl -> CrashRecordStart(This,error) )
-
-#define IDeckLinkDeckControl_CrashRecordStop(This,error) \
- ( (This)->lpVtbl -> CrashRecordStop(This,error) )
-
-#define IDeckLinkDeckControl_SetCallback(This,callback) \
- ( (This)->lpVtbl -> SetCallback(This,callback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeckControl_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__
-#define __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingDeviceNotificationCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingDeviceNotificationCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("F9531D64-3305-4B29-A387-7F74BB0D0E84")
- IBMDStreamingDeviceNotificationCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE StreamingDeviceArrived(
- /* [in] */ IDeckLink *device) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StreamingDeviceRemoved(
- /* [in] */ IDeckLink *device) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StreamingDeviceModeChanged(
- /* [in] */ IDeckLink *device,
- /* [in] */ BMDStreamingDeviceMode mode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingDeviceNotificationCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingDeviceNotificationCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingDeviceNotificationCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingDeviceNotificationCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *StreamingDeviceArrived )(
- IBMDStreamingDeviceNotificationCallback * This,
- /* [in] */ IDeckLink *device);
-
- HRESULT ( STDMETHODCALLTYPE *StreamingDeviceRemoved )(
- IBMDStreamingDeviceNotificationCallback * This,
- /* [in] */ IDeckLink *device);
-
- HRESULT ( STDMETHODCALLTYPE *StreamingDeviceModeChanged )(
- IBMDStreamingDeviceNotificationCallback * This,
- /* [in] */ IDeckLink *device,
- /* [in] */ BMDStreamingDeviceMode mode);
-
- END_INTERFACE
- } IBMDStreamingDeviceNotificationCallbackVtbl;
-
- interface IBMDStreamingDeviceNotificationCallback
- {
- CONST_VTBL struct IBMDStreamingDeviceNotificationCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingDeviceNotificationCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingDeviceNotificationCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingDeviceNotificationCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceArrived(This,device) \
- ( (This)->lpVtbl -> StreamingDeviceArrived(This,device) )
-
-#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceRemoved(This,device) \
- ( (This)->lpVtbl -> StreamingDeviceRemoved(This,device) )
-
-#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceModeChanged(This,device,mode) \
- ( (This)->lpVtbl -> StreamingDeviceModeChanged(This,device,mode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__
-#define __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingH264InputCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingH264InputCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("823C475F-55AE-46F9-890C-537CC5CEDCCA")
- IBMDStreamingH264InputCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE H264NALPacketArrived(
- /* [in] */ IBMDStreamingH264NALPacket *nalPacket) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE H264AudioPacketArrived(
- /* [in] */ IBMDStreamingAudioPacket *audioPacket) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE MPEG2TSPacketArrived(
- /* [in] */ IBMDStreamingMPEG2TSPacket *tsPacket) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE H264VideoInputConnectorScanningChanged( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE H264VideoInputConnectorChanged( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE H264VideoInputModeChanged( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingH264InputCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingH264InputCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingH264InputCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingH264InputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *H264NALPacketArrived )(
- IBMDStreamingH264InputCallback * This,
- /* [in] */ IBMDStreamingH264NALPacket *nalPacket);
-
- HRESULT ( STDMETHODCALLTYPE *H264AudioPacketArrived )(
- IBMDStreamingH264InputCallback * This,
- /* [in] */ IBMDStreamingAudioPacket *audioPacket);
-
- HRESULT ( STDMETHODCALLTYPE *MPEG2TSPacketArrived )(
- IBMDStreamingH264InputCallback * This,
- /* [in] */ IBMDStreamingMPEG2TSPacket *tsPacket);
-
- HRESULT ( STDMETHODCALLTYPE *H264VideoInputConnectorScanningChanged )(
- IBMDStreamingH264InputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *H264VideoInputConnectorChanged )(
- IBMDStreamingH264InputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *H264VideoInputModeChanged )(
- IBMDStreamingH264InputCallback * This);
-
- END_INTERFACE
- } IBMDStreamingH264InputCallbackVtbl;
-
- interface IBMDStreamingH264InputCallback
- {
- CONST_VTBL struct IBMDStreamingH264InputCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingH264InputCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingH264InputCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingH264InputCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingH264InputCallback_H264NALPacketArrived(This,nalPacket) \
- ( (This)->lpVtbl -> H264NALPacketArrived(This,nalPacket) )
-
-#define IBMDStreamingH264InputCallback_H264AudioPacketArrived(This,audioPacket) \
- ( (This)->lpVtbl -> H264AudioPacketArrived(This,audioPacket) )
-
-#define IBMDStreamingH264InputCallback_MPEG2TSPacketArrived(This,tsPacket) \
- ( (This)->lpVtbl -> MPEG2TSPacketArrived(This,tsPacket) )
-
-#define IBMDStreamingH264InputCallback_H264VideoInputConnectorScanningChanged(This) \
- ( (This)->lpVtbl -> H264VideoInputConnectorScanningChanged(This) )
-
-#define IBMDStreamingH264InputCallback_H264VideoInputConnectorChanged(This) \
- ( (This)->lpVtbl -> H264VideoInputConnectorChanged(This) )
-
-#define IBMDStreamingH264InputCallback_H264VideoInputModeChanged(This) \
- ( (This)->lpVtbl -> H264VideoInputModeChanged(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDiscovery_INTERFACE_DEFINED__
-#define __IBMDStreamingDiscovery_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingDiscovery */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingDiscovery;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("2C837444-F989-4D87-901A-47C8A36D096D")
- IBMDStreamingDiscovery : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE InstallDeviceNotifications(
- /* [in] */ IBMDStreamingDeviceNotificationCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE UninstallDeviceNotifications( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingDiscoveryVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingDiscovery * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingDiscovery * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingDiscovery * This);
-
- HRESULT ( STDMETHODCALLTYPE *InstallDeviceNotifications )(
- IBMDStreamingDiscovery * This,
- /* [in] */ IBMDStreamingDeviceNotificationCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *UninstallDeviceNotifications )(
- IBMDStreamingDiscovery * This);
-
- END_INTERFACE
- } IBMDStreamingDiscoveryVtbl;
-
- interface IBMDStreamingDiscovery
- {
- CONST_VTBL struct IBMDStreamingDiscoveryVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingDiscovery_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingDiscovery_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingDiscovery_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingDiscovery_InstallDeviceNotifications(This,theCallback) \
- ( (This)->lpVtbl -> InstallDeviceNotifications(This,theCallback) )
-
-#define IBMDStreamingDiscovery_UninstallDeviceNotifications(This) \
- ( (This)->lpVtbl -> UninstallDeviceNotifications(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingDiscovery_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__
-#define __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingVideoEncodingMode */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingVideoEncodingMode;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("1AB8035B-CD13-458D-B6DF-5E8F7C2141D9")
- IBMDStreamingVideoEncodingMode : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetName(
- /* [out] */ BSTR *name) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetPresetID( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetSourcePositionX( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetSourcePositionY( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetSourceWidth( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetSourceHeight( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetDestWidth( void) = 0;
-
- virtual unsigned int STDMETHODCALLTYPE GetDestHeight( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFlag(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BOOL *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetInt(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ LONGLONG *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFloat(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ double *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BSTR *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateMutableVideoEncodingMode(
- /* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingVideoEncodingModeVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingVideoEncodingMode * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingVideoEncodingMode * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingVideoEncodingMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetName )(
- IBMDStreamingVideoEncodingMode * This,
- /* [out] */ BSTR *name);
-
- unsigned int ( STDMETHODCALLTYPE *GetPresetID )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourcePositionX )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourcePositionY )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourceWidth )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourceHeight )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetDestWidth )(
- IBMDStreamingVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetDestHeight )(
- IBMDStreamingVideoEncodingMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IBMDStreamingVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IBMDStreamingVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IBMDStreamingVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IBMDStreamingVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BSTR *value);
-
- HRESULT ( STDMETHODCALLTYPE *CreateMutableVideoEncodingMode )(
- IBMDStreamingVideoEncodingMode * This,
- /* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode);
-
- END_INTERFACE
- } IBMDStreamingVideoEncodingModeVtbl;
-
- interface IBMDStreamingVideoEncodingMode
- {
- CONST_VTBL struct IBMDStreamingVideoEncodingModeVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingVideoEncodingMode_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingVideoEncodingMode_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingVideoEncodingMode_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingVideoEncodingMode_GetName(This,name) \
- ( (This)->lpVtbl -> GetName(This,name) )
-
-#define IBMDStreamingVideoEncodingMode_GetPresetID(This) \
- ( (This)->lpVtbl -> GetPresetID(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetSourcePositionX(This) \
- ( (This)->lpVtbl -> GetSourcePositionX(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetSourcePositionY(This) \
- ( (This)->lpVtbl -> GetSourcePositionY(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetSourceWidth(This) \
- ( (This)->lpVtbl -> GetSourceWidth(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetSourceHeight(This) \
- ( (This)->lpVtbl -> GetSourceHeight(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetDestWidth(This) \
- ( (This)->lpVtbl -> GetDestWidth(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetDestHeight(This) \
- ( (This)->lpVtbl -> GetDestHeight(This) )
-
-#define IBMDStreamingVideoEncodingMode_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IBMDStreamingVideoEncodingMode_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IBMDStreamingVideoEncodingMode_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IBMDStreamingVideoEncodingMode_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#define IBMDStreamingVideoEncodingMode_CreateMutableVideoEncodingMode(This,newEncodingMode) \
- ( (This)->lpVtbl -> CreateMutableVideoEncodingMode(This,newEncodingMode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__
-#define __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingMutableVideoEncodingMode */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingMutableVideoEncodingMode;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("19BF7D90-1E0A-400D-B2C6-FFC4E78AD49D")
- IBMDStreamingMutableVideoEncodingMode : public IBMDStreamingVideoEncodingMode
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE SetSourceRect(
- /* [in] */ unsigned int posX,
- /* [in] */ unsigned int posY,
- /* [in] */ unsigned int width,
- /* [in] */ unsigned int height) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetDestSize(
- /* [in] */ unsigned int width,
- /* [in] */ unsigned int height) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFlag(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ BOOL value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetInt(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ LONGLONG value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFloat(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ double value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetString(
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ BSTR value) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingMutableVideoEncodingModeVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetName )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [out] */ BSTR *name);
-
- unsigned int ( STDMETHODCALLTYPE *GetPresetID )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourcePositionX )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourcePositionY )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourceWidth )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetSourceHeight )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetDestWidth )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- unsigned int ( STDMETHODCALLTYPE *GetDestHeight )(
- IBMDStreamingMutableVideoEncodingMode * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [out] */ BSTR *value);
-
- HRESULT ( STDMETHODCALLTYPE *CreateMutableVideoEncodingMode )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode);
-
- HRESULT ( STDMETHODCALLTYPE *SetSourceRect )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ unsigned int posX,
- /* [in] */ unsigned int posY,
- /* [in] */ unsigned int width,
- /* [in] */ unsigned int height);
-
- HRESULT ( STDMETHODCALLTYPE *SetDestSize )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ unsigned int width,
- /* [in] */ unsigned int height);
-
- HRESULT ( STDMETHODCALLTYPE *SetFlag )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ BOOL value);
-
- HRESULT ( STDMETHODCALLTYPE *SetInt )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ LONGLONG value);
-
- HRESULT ( STDMETHODCALLTYPE *SetFloat )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ double value);
-
- HRESULT ( STDMETHODCALLTYPE *SetString )(
- IBMDStreamingMutableVideoEncodingMode * This,
- /* [in] */ BMDStreamingEncodingModePropertyID cfgID,
- /* [in] */ BSTR value);
-
- END_INTERFACE
- } IBMDStreamingMutableVideoEncodingModeVtbl;
-
- interface IBMDStreamingMutableVideoEncodingMode
- {
- CONST_VTBL struct IBMDStreamingMutableVideoEncodingModeVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingMutableVideoEncodingMode_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingMutableVideoEncodingMode_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingMutableVideoEncodingMode_GetName(This,name) \
- ( (This)->lpVtbl -> GetName(This,name) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetPresetID(This) \
- ( (This)->lpVtbl -> GetPresetID(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetSourcePositionX(This) \
- ( (This)->lpVtbl -> GetSourcePositionX(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetSourcePositionY(This) \
- ( (This)->lpVtbl -> GetSourcePositionY(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetSourceWidth(This) \
- ( (This)->lpVtbl -> GetSourceWidth(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetSourceHeight(This) \
- ( (This)->lpVtbl -> GetSourceHeight(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetDestWidth(This) \
- ( (This)->lpVtbl -> GetDestWidth(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetDestHeight(This) \
- ( (This)->lpVtbl -> GetDestHeight(This) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_CreateMutableVideoEncodingMode(This,newEncodingMode) \
- ( (This)->lpVtbl -> CreateMutableVideoEncodingMode(This,newEncodingMode) )
-
-
-#define IBMDStreamingMutableVideoEncodingMode_SetSourceRect(This,posX,posY,width,height) \
- ( (This)->lpVtbl -> SetSourceRect(This,posX,posY,width,height) )
-
-#define IBMDStreamingMutableVideoEncodingMode_SetDestSize(This,width,height) \
- ( (This)->lpVtbl -> SetDestSize(This,width,height) )
-
-#define IBMDStreamingMutableVideoEncodingMode_SetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_SetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> SetInt(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_SetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
-
-#define IBMDStreamingMutableVideoEncodingMode_SetString(This,cfgID,value) \
- ( (This)->lpVtbl -> SetString(This,cfgID,value) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__
-#define __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingVideoEncodingModePresetIterator */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingVideoEncodingModePresetIterator;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("7AC731A3-C950-4AD0-804A-8377AA51C6C4")
- IBMDStreamingVideoEncodingModePresetIterator : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IBMDStreamingVideoEncodingMode **videoEncodingMode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingVideoEncodingModePresetIteratorVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingVideoEncodingModePresetIterator * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingVideoEncodingModePresetIterator * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingVideoEncodingModePresetIterator * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IBMDStreamingVideoEncodingModePresetIterator * This,
- /* [out] */ IBMDStreamingVideoEncodingMode **videoEncodingMode);
-
- END_INTERFACE
- } IBMDStreamingVideoEncodingModePresetIteratorVtbl;
-
- interface IBMDStreamingVideoEncodingModePresetIterator
- {
- CONST_VTBL struct IBMDStreamingVideoEncodingModePresetIteratorVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingVideoEncodingModePresetIterator_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingVideoEncodingModePresetIterator_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingVideoEncodingModePresetIterator_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingVideoEncodingModePresetIterator_Next(This,videoEncodingMode) \
- ( (This)->lpVtbl -> Next(This,videoEncodingMode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingDeviceInput_INTERFACE_DEFINED__
-#define __IBMDStreamingDeviceInput_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingDeviceInput */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingDeviceInput;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("24B6B6EC-1727-44BB-9818-34FF086ACF98")
- IBMDStreamingDeviceInput : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoInputMode(
- /* [in] */ BMDDisplayMode inputMode,
- /* [out] */ BOOL *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoInputModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoInputMode(
- /* [in] */ BMDDisplayMode inputMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentDetectedVideoInputMode(
- /* [out] */ BMDDisplayMode *detectedMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoEncodingMode(
- /* [out] */ IBMDStreamingVideoEncodingMode **encodingMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoEncodingModePresetIterator(
- /* [in] */ BMDDisplayMode inputMode,
- /* [out] */ IBMDStreamingVideoEncodingModePresetIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoEncodingMode(
- /* [in] */ BMDDisplayMode inputMode,
- /* [in] */ IBMDStreamingVideoEncodingMode *encodingMode,
- /* [out] */ BMDStreamingEncodingSupport *result,
- /* [out] */ IBMDStreamingVideoEncodingMode **changedEncodingMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoEncodingMode(
- /* [in] */ IBMDStreamingVideoEncodingMode *encodingMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartCapture( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopCapture( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IUnknown *theCallback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingDeviceInputVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingDeviceInput * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingDeviceInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoInputMode )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ BMDDisplayMode inputMode,
- /* [out] */ BOOL *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoInputModeIterator )(
- IBMDStreamingDeviceInput * This,
- /* [out] */ IDeckLinkDisplayModeIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoInputMode )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ BMDDisplayMode inputMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentDetectedVideoInputMode )(
- IBMDStreamingDeviceInput * This,
- /* [out] */ BMDDisplayMode *detectedMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoEncodingMode )(
- IBMDStreamingDeviceInput * This,
- /* [out] */ IBMDStreamingVideoEncodingMode **encodingMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoEncodingModePresetIterator )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ BMDDisplayMode inputMode,
- /* [out] */ IBMDStreamingVideoEncodingModePresetIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoEncodingMode )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ BMDDisplayMode inputMode,
- /* [in] */ IBMDStreamingVideoEncodingMode *encodingMode,
- /* [out] */ BMDStreamingEncodingSupport *result,
- /* [out] */ IBMDStreamingVideoEncodingMode **changedEncodingMode);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoEncodingMode )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ IBMDStreamingVideoEncodingMode *encodingMode);
-
- HRESULT ( STDMETHODCALLTYPE *StartCapture )(
- IBMDStreamingDeviceInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopCapture )(
- IBMDStreamingDeviceInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IBMDStreamingDeviceInput * This,
- /* [in] */ IUnknown *theCallback);
-
- END_INTERFACE
- } IBMDStreamingDeviceInputVtbl;
-
- interface IBMDStreamingDeviceInput
- {
- CONST_VTBL struct IBMDStreamingDeviceInputVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingDeviceInput_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingDeviceInput_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingDeviceInput_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingDeviceInput_DoesSupportVideoInputMode(This,inputMode,result) \
- ( (This)->lpVtbl -> DoesSupportVideoInputMode(This,inputMode,result) )
-
-#define IBMDStreamingDeviceInput_GetVideoInputModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetVideoInputModeIterator(This,iterator) )
-
-#define IBMDStreamingDeviceInput_SetVideoInputMode(This,inputMode) \
- ( (This)->lpVtbl -> SetVideoInputMode(This,inputMode) )
-
-#define IBMDStreamingDeviceInput_GetCurrentDetectedVideoInputMode(This,detectedMode) \
- ( (This)->lpVtbl -> GetCurrentDetectedVideoInputMode(This,detectedMode) )
-
-#define IBMDStreamingDeviceInput_GetVideoEncodingMode(This,encodingMode) \
- ( (This)->lpVtbl -> GetVideoEncodingMode(This,encodingMode) )
-
-#define IBMDStreamingDeviceInput_GetVideoEncodingModePresetIterator(This,inputMode,iterator) \
- ( (This)->lpVtbl -> GetVideoEncodingModePresetIterator(This,inputMode,iterator) )
-
-#define IBMDStreamingDeviceInput_DoesSupportVideoEncodingMode(This,inputMode,encodingMode,result,changedEncodingMode) \
- ( (This)->lpVtbl -> DoesSupportVideoEncodingMode(This,inputMode,encodingMode,result,changedEncodingMode) )
-
-#define IBMDStreamingDeviceInput_SetVideoEncodingMode(This,encodingMode) \
- ( (This)->lpVtbl -> SetVideoEncodingMode(This,encodingMode) )
-
-#define IBMDStreamingDeviceInput_StartCapture(This) \
- ( (This)->lpVtbl -> StartCapture(This) )
-
-#define IBMDStreamingDeviceInput_StopCapture(This) \
- ( (This)->lpVtbl -> StopCapture(This) )
-
-#define IBMDStreamingDeviceInput_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingDeviceInput_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__
-#define __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingH264NALPacket */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingH264NALPacket;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("E260E955-14BE-4395-9775-9F02CC0A9D89")
- IBMDStreamingH264NALPacket : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytesWithSizePrefix(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayTime(
- /* [in] */ ULONGLONG requestedTimeScale,
- /* [out] */ ULONGLONG *displayTime) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPacketIndex(
- /* [out] */ unsigned int *packetIndex) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingH264NALPacketVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingH264NALPacket * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingH264NALPacket * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingH264NALPacket * This);
-
- long ( STDMETHODCALLTYPE *GetPayloadSize )(
- IBMDStreamingH264NALPacket * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IBMDStreamingH264NALPacket * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytesWithSizePrefix )(
- IBMDStreamingH264NALPacket * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayTime )(
- IBMDStreamingH264NALPacket * This,
- /* [in] */ ULONGLONG requestedTimeScale,
- /* [out] */ ULONGLONG *displayTime);
-
- HRESULT ( STDMETHODCALLTYPE *GetPacketIndex )(
- IBMDStreamingH264NALPacket * This,
- /* [out] */ unsigned int *packetIndex);
-
- END_INTERFACE
- } IBMDStreamingH264NALPacketVtbl;
-
- interface IBMDStreamingH264NALPacket
- {
- CONST_VTBL struct IBMDStreamingH264NALPacketVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingH264NALPacket_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingH264NALPacket_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingH264NALPacket_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingH264NALPacket_GetPayloadSize(This) \
- ( (This)->lpVtbl -> GetPayloadSize(This) )
-
-#define IBMDStreamingH264NALPacket_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IBMDStreamingH264NALPacket_GetBytesWithSizePrefix(This,buffer) \
- ( (This)->lpVtbl -> GetBytesWithSizePrefix(This,buffer) )
-
-#define IBMDStreamingH264NALPacket_GetDisplayTime(This,requestedTimeScale,displayTime) \
- ( (This)->lpVtbl -> GetDisplayTime(This,requestedTimeScale,displayTime) )
-
-#define IBMDStreamingH264NALPacket_GetPacketIndex(This,packetIndex) \
- ( (This)->lpVtbl -> GetPacketIndex(This,packetIndex) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingAudioPacket_INTERFACE_DEFINED__
-#define __IBMDStreamingAudioPacket_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingAudioPacket */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingAudioPacket;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("D9EB5902-1AD2-43F4-9E2C-3CFA50B5EE19")
- IBMDStreamingAudioPacket : public IUnknown
- {
- public:
- virtual BMDStreamingAudioCodec STDMETHODCALLTYPE GetCodec( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPlayTime(
- /* [in] */ ULONGLONG requestedTimeScale,
- /* [out] */ ULONGLONG *playTime) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPacketIndex(
- /* [out] */ unsigned int *packetIndex) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingAudioPacketVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingAudioPacket * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingAudioPacket * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingAudioPacket * This);
-
- BMDStreamingAudioCodec ( STDMETHODCALLTYPE *GetCodec )(
- IBMDStreamingAudioPacket * This);
-
- long ( STDMETHODCALLTYPE *GetPayloadSize )(
- IBMDStreamingAudioPacket * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IBMDStreamingAudioPacket * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetPlayTime )(
- IBMDStreamingAudioPacket * This,
- /* [in] */ ULONGLONG requestedTimeScale,
- /* [out] */ ULONGLONG *playTime);
-
- HRESULT ( STDMETHODCALLTYPE *GetPacketIndex )(
- IBMDStreamingAudioPacket * This,
- /* [out] */ unsigned int *packetIndex);
-
- END_INTERFACE
- } IBMDStreamingAudioPacketVtbl;
-
- interface IBMDStreamingAudioPacket
- {
- CONST_VTBL struct IBMDStreamingAudioPacketVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingAudioPacket_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingAudioPacket_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingAudioPacket_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingAudioPacket_GetCodec(This) \
- ( (This)->lpVtbl -> GetCodec(This) )
-
-#define IBMDStreamingAudioPacket_GetPayloadSize(This) \
- ( (This)->lpVtbl -> GetPayloadSize(This) )
-
-#define IBMDStreamingAudioPacket_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IBMDStreamingAudioPacket_GetPlayTime(This,requestedTimeScale,playTime) \
- ( (This)->lpVtbl -> GetPlayTime(This,requestedTimeScale,playTime) )
-
-#define IBMDStreamingAudioPacket_GetPacketIndex(This,packetIndex) \
- ( (This)->lpVtbl -> GetPacketIndex(This,packetIndex) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingAudioPacket_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__
-#define __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingMPEG2TSPacket */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingMPEG2TSPacket;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("91810D1C-4FB3-4AAA-AE56-FA301D3DFA4C")
- IBMDStreamingMPEG2TSPacket : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingMPEG2TSPacketVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingMPEG2TSPacket * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingMPEG2TSPacket * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingMPEG2TSPacket * This);
-
- long ( STDMETHODCALLTYPE *GetPayloadSize )(
- IBMDStreamingMPEG2TSPacket * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IBMDStreamingMPEG2TSPacket * This,
- /* [out] */ void **buffer);
-
- END_INTERFACE
- } IBMDStreamingMPEG2TSPacketVtbl;
-
- interface IBMDStreamingMPEG2TSPacket
- {
- CONST_VTBL struct IBMDStreamingMPEG2TSPacketVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingMPEG2TSPacket_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingMPEG2TSPacket_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingMPEG2TSPacket_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingMPEG2TSPacket_GetPayloadSize(This) \
- ( (This)->lpVtbl -> GetPayloadSize(This) )
-
-#define IBMDStreamingMPEG2TSPacket_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__ */
-
-
-#ifndef __IBMDStreamingH264NALParser_INTERFACE_DEFINED__
-#define __IBMDStreamingH264NALParser_INTERFACE_DEFINED__
-
-/* interface IBMDStreamingH264NALParser */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IBMDStreamingH264NALParser;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("5867F18C-5BFA-4CCC-B2A7-9DFD140417D2")
- IBMDStreamingH264NALParser : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE IsNALSequenceParameterSet(
- /* [in] */ IBMDStreamingH264NALPacket *nal) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsNALPictureParameterSet(
- /* [in] */ IBMDStreamingH264NALPacket *nal) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetProfileAndLevelFromSPS(
- /* [in] */ IBMDStreamingH264NALPacket *nal,
- /* [out] */ unsigned int *profileIdc,
- /* [out] */ unsigned int *profileCompatability,
- /* [out] */ unsigned int *levelIdc) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IBMDStreamingH264NALParserVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IBMDStreamingH264NALParser * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IBMDStreamingH264NALParser * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IBMDStreamingH264NALParser * This);
-
- HRESULT ( STDMETHODCALLTYPE *IsNALSequenceParameterSet )(
- IBMDStreamingH264NALParser * This,
- /* [in] */ IBMDStreamingH264NALPacket *nal);
-
- HRESULT ( STDMETHODCALLTYPE *IsNALPictureParameterSet )(
- IBMDStreamingH264NALParser * This,
- /* [in] */ IBMDStreamingH264NALPacket *nal);
-
- HRESULT ( STDMETHODCALLTYPE *GetProfileAndLevelFromSPS )(
- IBMDStreamingH264NALParser * This,
- /* [in] */ IBMDStreamingH264NALPacket *nal,
- /* [out] */ unsigned int *profileIdc,
- /* [out] */ unsigned int *profileCompatability,
- /* [out] */ unsigned int *levelIdc);
-
- END_INTERFACE
- } IBMDStreamingH264NALParserVtbl;
-
- interface IBMDStreamingH264NALParser
- {
- CONST_VTBL struct IBMDStreamingH264NALParserVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IBMDStreamingH264NALParser_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IBMDStreamingH264NALParser_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IBMDStreamingH264NALParser_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IBMDStreamingH264NALParser_IsNALSequenceParameterSet(This,nal) \
- ( (This)->lpVtbl -> IsNALSequenceParameterSet(This,nal) )
-
-#define IBMDStreamingH264NALParser_IsNALPictureParameterSet(This,nal) \
- ( (This)->lpVtbl -> IsNALPictureParameterSet(This,nal) )
-
-#define IBMDStreamingH264NALParser_GetProfileAndLevelFromSPS(This,nal,profileIdc,profileCompatability,levelIdc) \
- ( (This)->lpVtbl -> GetProfileAndLevelFromSPS(This,nal,profileIdc,profileCompatability,levelIdc) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IBMDStreamingH264NALParser_INTERFACE_DEFINED__ */
-
-
-EXTERN_C const CLSID CLSID_CBMDStreamingDiscovery;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("0CAA31F6-8A26-40B0-86A4-BF58DCCA710C")
-CBMDStreamingDiscovery;
-#endif
-
-EXTERN_C const CLSID CLSID_CBMDStreamingH264NALParser;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("7753EFBD-951C-407C-97A5-23C737B73B52")
-CBMDStreamingH264NALParser;
-#endif
-
-#ifndef __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__
-#define __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoOutputCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoOutputCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("20AA5225-1958-47CB-820B-80A8D521A6EE")
- IDeckLinkVideoOutputCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
- /* [in] */ IDeckLinkVideoFrame *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoOutputCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoOutputCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoOutputCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoOutputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
- IDeckLinkVideoOutputCallback * This,
- /* [in] */ IDeckLinkVideoFrame *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduledPlaybackHasStopped )(
- IDeckLinkVideoOutputCallback * This);
-
- END_INTERFACE
- } IDeckLinkVideoOutputCallbackVtbl;
-
- interface IDeckLinkVideoOutputCallback
- {
- CONST_VTBL struct IDeckLinkVideoOutputCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoOutputCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoOutputCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoOutputCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoOutputCallback_ScheduledFrameCompleted(This,completedFrame,result) \
- ( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
-
-#define IDeckLinkVideoOutputCallback_ScheduledPlaybackHasStopped(This) \
- ( (This)->lpVtbl -> ScheduledPlaybackHasStopped(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_INTERFACE_DEFINED__
-#define __IDeckLinkInputCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInputCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInputCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("DD04E5EC-7415-42AB-AE4A-E80C4DFC044A")
- IDeckLinkInputCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
- /* [in] */ IDeckLinkVideoInputFrame *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInputCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInputCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInputCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
- IDeckLinkInputCallback * This,
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
- IDeckLinkInputCallback * This,
- /* [in] */ IDeckLinkVideoInputFrame *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket);
-
- END_INTERFACE
- } IDeckLinkInputCallbackVtbl;
-
- interface IDeckLinkInputCallback
- {
- CONST_VTBL struct IDeckLinkInputCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInputCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInputCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInputCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInputCallback_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
- ( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
-
-#define IDeckLinkInputCallback_VideoInputFrameArrived(This,videoFrame,audioPacket) \
- ( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInputCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__
-#define __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__
-
-/* interface IDeckLinkMemoryAllocator */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkMemoryAllocator;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("B36EB6E7-9D29-4AA8-92EF-843B87A289E8")
- IDeckLinkMemoryAllocator : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE AllocateBuffer(
- /* [in] */ unsigned int bufferSize,
- /* [out] */ void **allocatedBuffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer(
- /* [in] */ void *buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Decommit( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkMemoryAllocatorVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkMemoryAllocator * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkMemoryAllocator * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkMemoryAllocator * This);
-
- HRESULT ( STDMETHODCALLTYPE *AllocateBuffer )(
- IDeckLinkMemoryAllocator * This,
- /* [in] */ unsigned int bufferSize,
- /* [out] */ void **allocatedBuffer);
-
- HRESULT ( STDMETHODCALLTYPE *ReleaseBuffer )(
- IDeckLinkMemoryAllocator * This,
- /* [in] */ void *buffer);
-
- HRESULT ( STDMETHODCALLTYPE *Commit )(
- IDeckLinkMemoryAllocator * This);
-
- HRESULT ( STDMETHODCALLTYPE *Decommit )(
- IDeckLinkMemoryAllocator * This);
-
- END_INTERFACE
- } IDeckLinkMemoryAllocatorVtbl;
-
- interface IDeckLinkMemoryAllocator
- {
- CONST_VTBL struct IDeckLinkMemoryAllocatorVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkMemoryAllocator_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkMemoryAllocator_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkMemoryAllocator_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkMemoryAllocator_AllocateBuffer(This,bufferSize,allocatedBuffer) \
- ( (This)->lpVtbl -> AllocateBuffer(This,bufferSize,allocatedBuffer) )
-
-#define IDeckLinkMemoryAllocator_ReleaseBuffer(This,buffer) \
- ( (This)->lpVtbl -> ReleaseBuffer(This,buffer) )
-
-#define IDeckLinkMemoryAllocator_Commit(This) \
- ( (This)->lpVtbl -> Commit(This) )
-
-#define IDeckLinkMemoryAllocator_Decommit(This) \
- ( (This)->lpVtbl -> Decommit(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__
-#define __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkAudioOutputCallback */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkAudioOutputCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("403C681B-7F46-4A12-B993-2BB127084EE6")
- IDeckLinkAudioOutputCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE RenderAudioSamples(
- /* [in] */ BOOL preroll) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkAudioOutputCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkAudioOutputCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkAudioOutputCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkAudioOutputCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *RenderAudioSamples )(
- IDeckLinkAudioOutputCallback * This,
- /* [in] */ BOOL preroll);
-
- END_INTERFACE
- } IDeckLinkAudioOutputCallbackVtbl;
-
- interface IDeckLinkAudioOutputCallback
- {
- CONST_VTBL struct IDeckLinkAudioOutputCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkAudioOutputCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkAudioOutputCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkAudioOutputCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkAudioOutputCallback_RenderAudioSamples(This,preroll) \
- ( (This)->lpVtbl -> RenderAudioSamples(This,preroll) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkIterator_INTERFACE_DEFINED__
-#define __IDeckLinkIterator_INTERFACE_DEFINED__
-
-/* interface IDeckLinkIterator */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkIterator;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("50FB36CD-3063-4B73-BDBB-958087F2D8BA")
- IDeckLinkIterator : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IDeckLink **deckLinkInstance) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkIteratorVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkIterator * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkIterator * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkIterator * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IDeckLinkIterator * This,
- /* [out] */ IDeckLink **deckLinkInstance);
-
- END_INTERFACE
- } IDeckLinkIteratorVtbl;
-
- interface IDeckLinkIterator
- {
- CONST_VTBL struct IDeckLinkIteratorVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkIterator_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkIterator_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkIterator_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkIterator_Next(This,deckLinkInstance) \
- ( (This)->lpVtbl -> Next(This,deckLinkInstance) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkIterator_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkAPIInformation_INTERFACE_DEFINED__
-#define __IDeckLinkAPIInformation_INTERFACE_DEFINED__
-
-/* interface IDeckLinkAPIInformation */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkAPIInformation;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("7BEA3C68-730D-4322-AF34-8A7152B532A4")
- IDeckLinkAPIInformation : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetFlag(
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ BOOL *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetInt(
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ LONGLONG *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFloat(
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ double *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ BSTR *value) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkAPIInformationVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkAPIInformation * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkAPIInformation * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkAPIInformation * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IDeckLinkAPIInformation * This,
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IDeckLinkAPIInformation * This,
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IDeckLinkAPIInformation * This,
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkAPIInformation * This,
- /* [in] */ BMDDeckLinkAPIInformationID cfgID,
- /* [out] */ BSTR *value);
-
- END_INTERFACE
- } IDeckLinkAPIInformationVtbl;
-
- interface IDeckLinkAPIInformation
- {
- CONST_VTBL struct IDeckLinkAPIInformationVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkAPIInformation_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkAPIInformation_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkAPIInformation_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkAPIInformation_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IDeckLinkAPIInformation_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IDeckLinkAPIInformation_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IDeckLinkAPIInformation_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkAPIInformation_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_INTERFACE_DEFINED__
-#define __IDeckLinkOutput_INTERFACE_DEFINED__
-
-/* interface IDeckLinkOutput */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkOutput;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("CC5C8A6E-3F2F-4B3A-87EA-FD78AF300564")
- IDeckLinkOutput : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoOutputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDVideoOutputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
- /* [in] */ int width,
- /* [in] */ int height,
- /* [in] */ int rowBytes,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
- /* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeValue displayTime,
- /* [in] */ BMDTimeValue displayDuration,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
- /* [out] */ unsigned int *bufferedFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount,
- /* [in] */ BMDAudioOutputStreamType streamType) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [in] */ BMDTimeValue streamTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
- /* [in] */ BMDTimeValue playbackStartTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ double playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
- /* [in] */ BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
- /* [out] */ BOOL *active) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetReferenceStatus(
- /* [out] */ BMDReferenceStatus *referenceStatus) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFrameCompletionReferenceTimestamp(
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *frameCompletionTimestamp) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkOutputVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkOutput * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkOutput * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkOutput * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoOutputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkOutput * This,
- /* [out] */ IDeckLinkDisplayModeIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
- IDeckLinkOutput * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDVideoOutputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
- IDeckLinkOutput * This,
- /* [in] */ int width,
- /* [in] */ int height,
- /* [in] */ int rowBytes,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
- IDeckLinkOutput * This,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
-
- HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeValue displayTime,
- /* [in] */ BMDTimeValue displayDuration,
- /* [in] */ BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
- IDeckLinkOutput * This,
- /* [out] */ unsigned int *bufferedFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
- IDeckLinkOutput * This,
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount,
- /* [in] */ BMDAudioOutputStreamType streamType);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
- IDeckLinkOutput * This,
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
- IDeckLinkOutput * This,
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [in] */ BMDTimeValue streamTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkOutput * This,
- /* [out] */ unsigned int *bufferedSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
- IDeckLinkOutput * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
- IDeckLinkOutput * This,
- /* [in] */ BMDTimeValue playbackStartTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ double playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
- IDeckLinkOutput * This,
- /* [in] */ BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- /* [in] */ BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
- IDeckLinkOutput * This,
- /* [out] */ BOOL *active);
-
- HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
- IDeckLinkOutput * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *GetReferenceStatus )(
- IDeckLinkOutput * This,
- /* [out] */ BMDReferenceStatus *referenceStatus);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkOutput * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameCompletionReferenceTimestamp )(
- IDeckLinkOutput * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *frameCompletionTimestamp);
-
- END_INTERFACE
- } IDeckLinkOutputVtbl;
-
- interface IDeckLinkOutput
- {
- CONST_VTBL struct IDeckLinkOutputVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkOutput_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkOutput_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkOutput_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkOutput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
-
-#define IDeckLinkOutput_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkOutput_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkOutput_EnableVideoOutput(This,displayMode,flags) \
- ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
-
-#define IDeckLinkOutput_DisableVideoOutput(This) \
- ( (This)->lpVtbl -> DisableVideoOutput(This) )
-
-#define IDeckLinkOutput_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkOutput_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_CreateAncillaryData(This,pixelFormat,outBuffer) \
- ( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
-
-#define IDeckLinkOutput_DisplayVideoFrameSync(This,theFrame) \
- ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
-
-#define IDeckLinkOutput_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
- ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
-
-#define IDeckLinkOutput_SetScheduledFrameCompletionCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
-
-#define IDeckLinkOutput_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
- ( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
-
-#define IDeckLinkOutput_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
- ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
-
-#define IDeckLinkOutput_DisableAudioOutput(This) \
- ( (This)->lpVtbl -> DisableAudioOutput(This) )
-
-#define IDeckLinkOutput_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
- ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
-
-#define IDeckLinkOutput_BeginAudioPreroll(This) \
- ( (This)->lpVtbl -> BeginAudioPreroll(This) )
-
-#define IDeckLinkOutput_EndAudioPreroll(This) \
- ( (This)->lpVtbl -> EndAudioPreroll(This) )
-
-#define IDeckLinkOutput_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
- ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
-
-#define IDeckLinkOutput_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
-
-#define IDeckLinkOutput_FlushBufferedAudioSamples(This) \
- ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
-
-#define IDeckLinkOutput_SetAudioCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
-
-#define IDeckLinkOutput_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
- ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
-
-#define IDeckLinkOutput_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
- ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
-
-#define IDeckLinkOutput_IsScheduledPlaybackRunning(This,active) \
- ( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
-
-#define IDeckLinkOutput_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
- ( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
-
-#define IDeckLinkOutput_GetReferenceStatus(This,referenceStatus) \
- ( (This)->lpVtbl -> GetReferenceStatus(This,referenceStatus) )
-
-#define IDeckLinkOutput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#define IDeckLinkOutput_GetFrameCompletionReferenceTimestamp(This,theFrame,desiredTimeScale,frameCompletionTimestamp) \
- ( (This)->lpVtbl -> GetFrameCompletionReferenceTimestamp(This,theFrame,desiredTimeScale,frameCompletionTimestamp) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkOutput_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_INTERFACE_DEFINED__
-#define __IDeckLinkInput_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInput */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInput;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("AF22762B-DFAC-4846-AA79-FA8883560995")
- IDeckLinkInput : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
- /* [out] */ unsigned int *availableFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoInputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
- /* [out] */ unsigned int *availableSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkInputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInputVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInput * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInput * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkInput * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkInput * This,
- /* [out] */ IDeckLinkDisplayModeIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkInput * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
- IDeckLinkInput * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
- IDeckLinkInput * This,
- /* [out] */ unsigned int *availableFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoInputFrameMemoryAllocator )(
- IDeckLinkInput * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
- IDeckLinkInput * This,
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
- IDeckLinkInput * This,
- /* [out] */ unsigned int *availableSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *StartStreams )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopStreams )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
- IDeckLinkInput * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkInput * This,
- /* [in] */ IDeckLinkInputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkInput * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- END_INTERFACE
- } IDeckLinkInputVtbl;
-
- interface IDeckLinkInput
- {
- CONST_VTBL struct IDeckLinkInputVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInput_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInput_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInput_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
-
-#define IDeckLinkInput_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkInput_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkInput_EnableVideoInput(This,displayMode,pixelFormat,flags) \
- ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
-
-#define IDeckLinkInput_DisableVideoInput(This) \
- ( (This)->lpVtbl -> DisableVideoInput(This) )
-
-#define IDeckLinkInput_GetAvailableVideoFrameCount(This,availableFrameCount) \
- ( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
-
-#define IDeckLinkInput_SetVideoInputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoInputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkInput_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkInput_DisableAudioInput(This) \
- ( (This)->lpVtbl -> DisableAudioInput(This) )
-
-#define IDeckLinkInput_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
- ( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
-
-#define IDeckLinkInput_StartStreams(This) \
- ( (This)->lpVtbl -> StartStreams(This) )
-
-#define IDeckLinkInput_StopStreams(This) \
- ( (This)->lpVtbl -> StopStreams(This) )
-
-#define IDeckLinkInput_PauseStreams(This) \
- ( (This)->lpVtbl -> PauseStreams(This) )
-
-#define IDeckLinkInput_FlushStreams(This) \
- ( (This)->lpVtbl -> FlushStreams(This) )
-
-#define IDeckLinkInput_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#define IDeckLinkInput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInput_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_INTERFACE_DEFINED__
-#define __IDeckLinkVideoFrame_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoFrame */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoFrame;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("3F716FE0-F023-4111-BE5D-EF4414C05B17")
- IDeckLinkVideoFrame : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
-
- virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
-
- virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecode(
- /* [in] */ BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode **timecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAncillaryData(
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoFrameVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoFrame * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoFrame * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoFrame * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoFrame * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoFrame * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoFrame * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkVideoFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkVideoFrame * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- END_INTERFACE
- } IDeckLinkVideoFrameVtbl;
-
- interface IDeckLinkVideoFrame
- {
- CONST_VTBL struct IDeckLinkVideoFrameVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoFrame_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoFrame_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoFrame_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoFrame_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoFrame_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoFrame_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoFrame_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoFrame_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoFrame_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkVideoFrame_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkVideoFrame_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoFrame_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__
-#define __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__
-
-/* interface IDeckLinkMutableVideoFrame */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkMutableVideoFrame;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("69E2639F-40DA-4E19-B6F2-20ACE815C390")
- IDeckLinkMutableVideoFrame : public IDeckLinkVideoFrame
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE SetFlags(
- /* [in] */ BMDFrameFlags newFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetTimecode(
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ IDeckLinkTimecode *timecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetTimecodeFromComponents(
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ unsigned char hours,
- /* [in] */ unsigned char minutes,
- /* [in] */ unsigned char seconds,
- /* [in] */ unsigned char frames,
- /* [in] */ BMDTimecodeFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAncillaryData(
- /* [in] */ IDeckLinkVideoFrameAncillary *ancillary) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetTimecodeUserBits(
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ BMDTimecodeUserBits userBits) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkMutableVideoFrameVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkMutableVideoFrame * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkMutableVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkMutableVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkMutableVideoFrame * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkMutableVideoFrame * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkMutableVideoFrame * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkMutableVideoFrame * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkMutableVideoFrame * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkMutableVideoFrame * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *SetFlags )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ BMDFrameFlags newFlags);
-
- HRESULT ( STDMETHODCALLTYPE *SetTimecode )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ IDeckLinkTimecode *timecode);
-
- HRESULT ( STDMETHODCALLTYPE *SetTimecodeFromComponents )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ unsigned char hours,
- /* [in] */ unsigned char minutes,
- /* [in] */ unsigned char seconds,
- /* [in] */ unsigned char frames,
- /* [in] */ BMDTimecodeFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *SetAncillaryData )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ IDeckLinkVideoFrameAncillary *ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *SetTimecodeUserBits )(
- IDeckLinkMutableVideoFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [in] */ BMDTimecodeUserBits userBits);
-
- END_INTERFACE
- } IDeckLinkMutableVideoFrameVtbl;
-
- interface IDeckLinkMutableVideoFrame
- {
- CONST_VTBL struct IDeckLinkMutableVideoFrameVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkMutableVideoFrame_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkMutableVideoFrame_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkMutableVideoFrame_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkMutableVideoFrame_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkMutableVideoFrame_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkMutableVideoFrame_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkMutableVideoFrame_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkMutableVideoFrame_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkMutableVideoFrame_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkMutableVideoFrame_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkMutableVideoFrame_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-
-#define IDeckLinkMutableVideoFrame_SetFlags(This,newFlags) \
- ( (This)->lpVtbl -> SetFlags(This,newFlags) )
-
-#define IDeckLinkMutableVideoFrame_SetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> SetTimecode(This,format,timecode) )
-
-#define IDeckLinkMutableVideoFrame_SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) \
- ( (This)->lpVtbl -> SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) )
-
-#define IDeckLinkMutableVideoFrame_SetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> SetAncillaryData(This,ancillary) )
-
-#define IDeckLinkMutableVideoFrame_SetTimecodeUserBits(This,format,userBits) \
- ( (This)->lpVtbl -> SetTimecodeUserBits(This,format,userBits) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__
-#define __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoFrame3DExtensions */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoFrame3DExtensions;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("DA0F7E4A-EDC7-48A8-9CDD-2DB51C729CD7")
- IDeckLinkVideoFrame3DExtensions : public IUnknown
- {
- public:
- virtual BMDVideo3DPackingFormat STDMETHODCALLTYPE Get3DPackingFormat( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFrameForRightEye(
- /* [out] */ IDeckLinkVideoFrame **rightEyeFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoFrame3DExtensionsVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoFrame3DExtensions * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoFrame3DExtensions * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoFrame3DExtensions * This);
-
- BMDVideo3DPackingFormat ( STDMETHODCALLTYPE *Get3DPackingFormat )(
- IDeckLinkVideoFrame3DExtensions * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameForRightEye )(
- IDeckLinkVideoFrame3DExtensions * This,
- /* [out] */ IDeckLinkVideoFrame **rightEyeFrame);
-
- END_INTERFACE
- } IDeckLinkVideoFrame3DExtensionsVtbl;
-
- interface IDeckLinkVideoFrame3DExtensions
- {
- CONST_VTBL struct IDeckLinkVideoFrame3DExtensionsVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoFrame3DExtensions_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoFrame3DExtensions_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoFrame3DExtensions_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoFrame3DExtensions_Get3DPackingFormat(This) \
- ( (This)->lpVtbl -> Get3DPackingFormat(This) )
-
-#define IDeckLinkVideoFrame3DExtensions_GetFrameForRightEye(This,rightEyeFrame) \
- ( (This)->lpVtbl -> GetFrameForRightEye(This,rightEyeFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__
-#define __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoInputFrame */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoInputFrame;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("05CFE374-537C-4094-9A57-680525118F44")
- IDeckLinkVideoInputFrame : public IDeckLinkVideoFrame
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp(
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoInputFrameVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoInputFrame * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoInputFrame * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoInputFrame * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoInputFrame * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoInputFrame * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoInputFrame * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoInputFrame * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoInputFrame * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoInputFrame * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkVideoInputFrame * This,
- /* [in] */ BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkVideoInputFrame * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
- IDeckLinkVideoInputFrame * This,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- /* [in] */ BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
- IDeckLinkVideoInputFrame * This,
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration);
-
- END_INTERFACE
- } IDeckLinkVideoInputFrameVtbl;
-
- interface IDeckLinkVideoInputFrame
- {
- CONST_VTBL struct IDeckLinkVideoInputFrameVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoInputFrame_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoInputFrame_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoInputFrame_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoInputFrame_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoInputFrame_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoInputFrame_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoInputFrame_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoInputFrame_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoInputFrame_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkVideoInputFrame_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkVideoInputFrame_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-
-#define IDeckLinkVideoInputFrame_GetStreamTime(This,frameTime,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
-
-#define IDeckLinkVideoInputFrame_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
- ( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__
-#define __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoFrameAncillary */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoFrameAncillary;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("732E723C-D1A4-4E29-9E8E-4A88797A0004")
- IDeckLinkVideoFrameAncillary : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetBufferForVerticalBlankingLine(
- /* [in] */ unsigned int lineNumber,
- /* [out] */ void **buffer) = 0;
-
- virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
-
- virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoFrameAncillaryVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoFrameAncillary * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoFrameAncillary * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoFrameAncillary * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferForVerticalBlankingLine )(
- IDeckLinkVideoFrameAncillary * This,
- /* [in] */ unsigned int lineNumber,
- /* [out] */ void **buffer);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoFrameAncillary * This);
-
- BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
- IDeckLinkVideoFrameAncillary * This);
-
- END_INTERFACE
- } IDeckLinkVideoFrameAncillaryVtbl;
-
- interface IDeckLinkVideoFrameAncillary
- {
- CONST_VTBL struct IDeckLinkVideoFrameAncillaryVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoFrameAncillary_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoFrameAncillary_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoFrameAncillary_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoFrameAncillary_GetBufferForVerticalBlankingLine(This,lineNumber,buffer) \
- ( (This)->lpVtbl -> GetBufferForVerticalBlankingLine(This,lineNumber,buffer) )
-
-#define IDeckLinkVideoFrameAncillary_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoFrameAncillary_GetDisplayMode(This) \
- ( (This)->lpVtbl -> GetDisplayMode(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__
-#define __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__
-
-/* interface IDeckLinkAudioInputPacket */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkAudioInputPacket;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("E43D5870-2894-11DE-8C30-0800200C9A66")
- IDeckLinkAudioInputPacket : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetSampleFrameCount( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPacketTime(
- /* [out] */ BMDTimeValue *packetTime,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkAudioInputPacketVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkAudioInputPacket * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkAudioInputPacket * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkAudioInputPacket * This);
-
- long ( STDMETHODCALLTYPE *GetSampleFrameCount )(
- IDeckLinkAudioInputPacket * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkAudioInputPacket * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetPacketTime )(
- IDeckLinkAudioInputPacket * This,
- /* [out] */ BMDTimeValue *packetTime,
- /* [in] */ BMDTimeScale timeScale);
-
- END_INTERFACE
- } IDeckLinkAudioInputPacketVtbl;
-
- interface IDeckLinkAudioInputPacket
- {
- CONST_VTBL struct IDeckLinkAudioInputPacketVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkAudioInputPacket_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkAudioInputPacket_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkAudioInputPacket_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkAudioInputPacket_GetSampleFrameCount(This) \
- ( (This)->lpVtbl -> GetSampleFrameCount(This) )
-
-#define IDeckLinkAudioInputPacket_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkAudioInputPacket_GetPacketTime(This,packetTime,timeScale) \
- ( (This)->lpVtbl -> GetPacketTime(This,packetTime,timeScale) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__
-#define __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkScreenPreviewCallback */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkScreenPreviewCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("B1D3F49A-85FE-4C5D-95C8-0B5D5DCCD438")
- IDeckLinkScreenPreviewCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DrawFrame(
- /* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkScreenPreviewCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkScreenPreviewCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkScreenPreviewCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkScreenPreviewCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *DrawFrame )(
- IDeckLinkScreenPreviewCallback * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame);
-
- END_INTERFACE
- } IDeckLinkScreenPreviewCallbackVtbl;
-
- interface IDeckLinkScreenPreviewCallback
- {
- CONST_VTBL struct IDeckLinkScreenPreviewCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkScreenPreviewCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkScreenPreviewCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkScreenPreviewCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkScreenPreviewCallback_DrawFrame(This,theFrame) \
- ( (This)->lpVtbl -> DrawFrame(This,theFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__
-#define __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__
-
-/* interface IDeckLinkGLScreenPreviewHelper */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkGLScreenPreviewHelper;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("504E2209-CAC7-4C1A-9FB4-C5BB6274D22F")
- IDeckLinkGLScreenPreviewHelper : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE InitializeGL( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PaintGL( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFrame(
- /* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Set3DPreviewFormat(
- /* [in] */ BMD3DPreviewFormat previewFormat) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkGLScreenPreviewHelperVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkGLScreenPreviewHelper * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkGLScreenPreviewHelper * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkGLScreenPreviewHelper * This);
-
- HRESULT ( STDMETHODCALLTYPE *InitializeGL )(
- IDeckLinkGLScreenPreviewHelper * This);
-
- HRESULT ( STDMETHODCALLTYPE *PaintGL )(
- IDeckLinkGLScreenPreviewHelper * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetFrame )(
- IDeckLinkGLScreenPreviewHelper * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *Set3DPreviewFormat )(
- IDeckLinkGLScreenPreviewHelper * This,
- /* [in] */ BMD3DPreviewFormat previewFormat);
-
- END_INTERFACE
- } IDeckLinkGLScreenPreviewHelperVtbl;
-
- interface IDeckLinkGLScreenPreviewHelper
- {
- CONST_VTBL struct IDeckLinkGLScreenPreviewHelperVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkGLScreenPreviewHelper_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkGLScreenPreviewHelper_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkGLScreenPreviewHelper_InitializeGL(This) \
- ( (This)->lpVtbl -> InitializeGL(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_PaintGL(This) \
- ( (This)->lpVtbl -> PaintGL(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_SetFrame(This,theFrame) \
- ( (This)->lpVtbl -> SetFrame(This,theFrame) )
-
-#define IDeckLinkGLScreenPreviewHelper_Set3DPreviewFormat(This,previewFormat) \
- ( (This)->lpVtbl -> Set3DPreviewFormat(This,previewFormat) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__
-#define __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDX9ScreenPreviewHelper */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDX9ScreenPreviewHelper;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("2094B522-D1A1-40C0-9AC7-1C012218EF02")
- IDeckLinkDX9ScreenPreviewHelper : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Initialize(
- /* [in] */ void *device) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Render(
- /* [in] */ RECT *rc) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFrame(
- /* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Set3DPreviewFormat(
- /* [in] */ BMD3DPreviewFormat previewFormat) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDX9ScreenPreviewHelperVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDX9ScreenPreviewHelper * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDX9ScreenPreviewHelper * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDX9ScreenPreviewHelper * This);
-
- HRESULT ( STDMETHODCALLTYPE *Initialize )(
- IDeckLinkDX9ScreenPreviewHelper * This,
- /* [in] */ void *device);
-
- HRESULT ( STDMETHODCALLTYPE *Render )(
- IDeckLinkDX9ScreenPreviewHelper * This,
- /* [in] */ RECT *rc);
-
- HRESULT ( STDMETHODCALLTYPE *SetFrame )(
- IDeckLinkDX9ScreenPreviewHelper * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *Set3DPreviewFormat )(
- IDeckLinkDX9ScreenPreviewHelper * This,
- /* [in] */ BMD3DPreviewFormat previewFormat);
-
- END_INTERFACE
- } IDeckLinkDX9ScreenPreviewHelperVtbl;
-
- interface IDeckLinkDX9ScreenPreviewHelper
- {
- CONST_VTBL struct IDeckLinkDX9ScreenPreviewHelperVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDX9ScreenPreviewHelper_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDX9ScreenPreviewHelper_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDX9ScreenPreviewHelper_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDX9ScreenPreviewHelper_Initialize(This,device) \
- ( (This)->lpVtbl -> Initialize(This,device) )
-
-#define IDeckLinkDX9ScreenPreviewHelper_Render(This,rc) \
- ( (This)->lpVtbl -> Render(This,rc) )
-
-#define IDeckLinkDX9ScreenPreviewHelper_SetFrame(This,theFrame) \
- ( (This)->lpVtbl -> SetFrame(This,theFrame) )
-
-#define IDeckLinkDX9ScreenPreviewHelper_Set3DPreviewFormat(This,previewFormat) \
- ( (This)->lpVtbl -> Set3DPreviewFormat(This,previewFormat) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkNotificationCallback_INTERFACE_DEFINED__
-#define __IDeckLinkNotificationCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkNotificationCallback */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkNotificationCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("b002a1ec-070d-4288-8289-bd5d36e5ff0d")
- IDeckLinkNotificationCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Notify(
- /* [in] */ BMDNotifications topic,
- /* [in] */ ULONGLONG param1,
- /* [in] */ ULONGLONG param2) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkNotificationCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkNotificationCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkNotificationCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkNotificationCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *Notify )(
- IDeckLinkNotificationCallback * This,
- /* [in] */ BMDNotifications topic,
- /* [in] */ ULONGLONG param1,
- /* [in] */ ULONGLONG param2);
-
- END_INTERFACE
- } IDeckLinkNotificationCallbackVtbl;
-
- interface IDeckLinkNotificationCallback
- {
- CONST_VTBL struct IDeckLinkNotificationCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkNotificationCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkNotificationCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkNotificationCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkNotificationCallback_Notify(This,topic,param1,param2) \
- ( (This)->lpVtbl -> Notify(This,topic,param1,param2) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkNotificationCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkNotification_INTERFACE_DEFINED__
-#define __IDeckLinkNotification_INTERFACE_DEFINED__
-
-/* interface IDeckLinkNotification */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkNotification;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("0a1fb207-e215-441b-9b19-6fa1575946c5")
- IDeckLinkNotification : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Subscribe(
- /* [in] */ BMDNotifications topic,
- /* [in] */ IDeckLinkNotificationCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Unsubscribe(
- /* [in] */ BMDNotifications topic,
- /* [in] */ IDeckLinkNotificationCallback *theCallback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkNotificationVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkNotification * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkNotification * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkNotification * This);
-
- HRESULT ( STDMETHODCALLTYPE *Subscribe )(
- IDeckLinkNotification * This,
- /* [in] */ BMDNotifications topic,
- /* [in] */ IDeckLinkNotificationCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *Unsubscribe )(
- IDeckLinkNotification * This,
- /* [in] */ BMDNotifications topic,
- /* [in] */ IDeckLinkNotificationCallback *theCallback);
-
- END_INTERFACE
- } IDeckLinkNotificationVtbl;
-
- interface IDeckLinkNotification
- {
- CONST_VTBL struct IDeckLinkNotificationVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkNotification_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkNotification_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkNotification_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkNotification_Subscribe(This,topic,theCallback) \
- ( (This)->lpVtbl -> Subscribe(This,topic,theCallback) )
-
-#define IDeckLinkNotification_Unsubscribe(This,topic,theCallback) \
- ( (This)->lpVtbl -> Unsubscribe(This,topic,theCallback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkNotification_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkAttributes_INTERFACE_DEFINED__
-#define __IDeckLinkAttributes_INTERFACE_DEFINED__
-
-/* interface IDeckLinkAttributes */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkAttributes;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("ABC11843-D966-44CB-96E2-A1CB5D3135C4")
- IDeckLinkAttributes : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetFlag(
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ BOOL *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetInt(
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ LONGLONG *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFloat(
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ double *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ BSTR *value) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkAttributesVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkAttributes * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkAttributes * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkAttributes * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IDeckLinkAttributes * This,
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IDeckLinkAttributes * This,
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IDeckLinkAttributes * This,
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkAttributes * This,
- /* [in] */ BMDDeckLinkAttributeID cfgID,
- /* [out] */ BSTR *value);
-
- END_INTERFACE
- } IDeckLinkAttributesVtbl;
-
- interface IDeckLinkAttributes
- {
- CONST_VTBL struct IDeckLinkAttributesVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkAttributes_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkAttributes_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkAttributes_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkAttributes_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IDeckLinkAttributes_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IDeckLinkAttributes_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IDeckLinkAttributes_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkAttributes_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkKeyer_INTERFACE_DEFINED__
-#define __IDeckLinkKeyer_INTERFACE_DEFINED__
-
-/* interface IDeckLinkKeyer */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkKeyer;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("89AFCAF5-65F8-421E-98F7-96FE5F5BFBA3")
- IDeckLinkKeyer : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Enable(
- /* [in] */ BOOL isExternal) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetLevel(
- /* [in] */ unsigned char level) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE RampUp(
- /* [in] */ unsigned int numberOfFrames) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE RampDown(
- /* [in] */ unsigned int numberOfFrames) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Disable( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkKeyerVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkKeyer * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkKeyer * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkKeyer * This);
-
- HRESULT ( STDMETHODCALLTYPE *Enable )(
- IDeckLinkKeyer * This,
- /* [in] */ BOOL isExternal);
-
- HRESULT ( STDMETHODCALLTYPE *SetLevel )(
- IDeckLinkKeyer * This,
- /* [in] */ unsigned char level);
-
- HRESULT ( STDMETHODCALLTYPE *RampUp )(
- IDeckLinkKeyer * This,
- /* [in] */ unsigned int numberOfFrames);
-
- HRESULT ( STDMETHODCALLTYPE *RampDown )(
- IDeckLinkKeyer * This,
- /* [in] */ unsigned int numberOfFrames);
-
- HRESULT ( STDMETHODCALLTYPE *Disable )(
- IDeckLinkKeyer * This);
-
- END_INTERFACE
- } IDeckLinkKeyerVtbl;
-
- interface IDeckLinkKeyer
- {
- CONST_VTBL struct IDeckLinkKeyerVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkKeyer_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkKeyer_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkKeyer_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkKeyer_Enable(This,isExternal) \
- ( (This)->lpVtbl -> Enable(This,isExternal) )
-
-#define IDeckLinkKeyer_SetLevel(This,level) \
- ( (This)->lpVtbl -> SetLevel(This,level) )
-
-#define IDeckLinkKeyer_RampUp(This,numberOfFrames) \
- ( (This)->lpVtbl -> RampUp(This,numberOfFrames) )
-
-#define IDeckLinkKeyer_RampDown(This,numberOfFrames) \
- ( (This)->lpVtbl -> RampDown(This,numberOfFrames) )
-
-#define IDeckLinkKeyer_Disable(This) \
- ( (This)->lpVtbl -> Disable(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkKeyer_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoConversion_INTERFACE_DEFINED__
-#define __IDeckLinkVideoConversion_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoConversion */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoConversion;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("3BBCB8A2-DA2C-42D9-B5D8-88083644E99A")
- IDeckLinkVideoConversion : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ConvertFrame(
- /* [in] */ IDeckLinkVideoFrame *srcFrame,
- /* [in] */ IDeckLinkVideoFrame *dstFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoConversionVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoConversion * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoConversion * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoConversion * This);
-
- HRESULT ( STDMETHODCALLTYPE *ConvertFrame )(
- IDeckLinkVideoConversion * This,
- /* [in] */ IDeckLinkVideoFrame *srcFrame,
- /* [in] */ IDeckLinkVideoFrame *dstFrame);
-
- END_INTERFACE
- } IDeckLinkVideoConversionVtbl;
-
- interface IDeckLinkVideoConversion
- {
- CONST_VTBL struct IDeckLinkVideoConversionVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoConversion_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoConversion_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoConversion_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoConversion_ConvertFrame(This,srcFrame,dstFrame) \
- ( (This)->lpVtbl -> ConvertFrame(This,srcFrame,dstFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoConversion_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__
-#define __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeviceNotificationCallback */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeviceNotificationCallback;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("4997053B-0ADF-4CC8-AC70-7A50C4BE728F")
- IDeckLinkDeviceNotificationCallback : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DeckLinkDeviceArrived(
- /* [in] */ IDeckLink *deckLinkDevice) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DeckLinkDeviceRemoved(
- /* [in] */ IDeckLink *deckLinkDevice) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeviceNotificationCallbackVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeviceNotificationCallback * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeviceNotificationCallback * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeviceNotificationCallback * This);
-
- HRESULT ( STDMETHODCALLTYPE *DeckLinkDeviceArrived )(
- IDeckLinkDeviceNotificationCallback * This,
- /* [in] */ IDeckLink *deckLinkDevice);
-
- HRESULT ( STDMETHODCALLTYPE *DeckLinkDeviceRemoved )(
- IDeckLinkDeviceNotificationCallback * This,
- /* [in] */ IDeckLink *deckLinkDevice);
-
- END_INTERFACE
- } IDeckLinkDeviceNotificationCallbackVtbl;
-
- interface IDeckLinkDeviceNotificationCallback
- {
- CONST_VTBL struct IDeckLinkDeviceNotificationCallbackVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeviceNotificationCallback_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeviceNotificationCallback_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeviceNotificationCallback_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeviceNotificationCallback_DeckLinkDeviceArrived(This,deckLinkDevice) \
- ( (This)->lpVtbl -> DeckLinkDeviceArrived(This,deckLinkDevice) )
-
-#define IDeckLinkDeviceNotificationCallback_DeckLinkDeviceRemoved(This,deckLinkDevice) \
- ( (This)->lpVtbl -> DeckLinkDeviceRemoved(This,deckLinkDevice) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDiscovery_INTERFACE_DEFINED__
-#define __IDeckLinkDiscovery_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDiscovery */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDiscovery;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("CDBF631C-BC76-45FA-B44D-C55059BC6101")
- IDeckLinkDiscovery : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE InstallDeviceNotifications(
- /* [in] */ IDeckLinkDeviceNotificationCallback *deviceNotificationCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE UninstallDeviceNotifications( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDiscoveryVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDiscovery * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDiscovery * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDiscovery * This);
-
- HRESULT ( STDMETHODCALLTYPE *InstallDeviceNotifications )(
- IDeckLinkDiscovery * This,
- /* [in] */ IDeckLinkDeviceNotificationCallback *deviceNotificationCallback);
-
- HRESULT ( STDMETHODCALLTYPE *UninstallDeviceNotifications )(
- IDeckLinkDiscovery * This);
-
- END_INTERFACE
- } IDeckLinkDiscoveryVtbl;
-
- interface IDeckLinkDiscovery
- {
- CONST_VTBL struct IDeckLinkDiscoveryVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDiscovery_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDiscovery_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDiscovery_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDiscovery_InstallDeviceNotifications(This,deviceNotificationCallback) \
- ( (This)->lpVtbl -> InstallDeviceNotifications(This,deviceNotificationCallback) )
-
-#define IDeckLinkDiscovery_UninstallDeviceNotifications(This) \
- ( (This)->lpVtbl -> UninstallDeviceNotifications(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDiscovery_INTERFACE_DEFINED__ */
-
-
-EXTERN_C const CLSID CLSID_CDeckLinkIterator;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("1F2E109A-8F4F-49E4-9203-135595CB6FA5")
-CDeckLinkIterator;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkAPIInformation;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("263CA19F-ED09-482E-9F9D-84005783A237")
-CDeckLinkAPIInformation;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkGLScreenPreviewHelper;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("F63E77C7-B655-4A4A-9AD0-3CA85D394343")
-CDeckLinkGLScreenPreviewHelper;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkDX9ScreenPreviewHelper;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("CC010023-E01D-4525-9D59-80C8AB3DC7A0")
-CDeckLinkDX9ScreenPreviewHelper;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkVideoConversion;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("7DBBBB11-5B7B-467D-AEA4-CEA468FD368C")
-CDeckLinkVideoConversion;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkDiscovery;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("1073A05C-D885-47E9-B3C6-129B3F9F648B")
-CDeckLinkDiscovery;
-#endif
-
-#ifndef __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__
-#define __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__
-
-/* interface IDeckLinkConfiguration_v10_2 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkConfiguration_v10_2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("C679A35B-610C-4D09-B748-1D0478100FC0")
- IDeckLinkConfiguration_v10_2 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE SetFlag(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BOOL value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFlag(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BOOL *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetInt(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ LONGLONG value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetInt(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ LONGLONG *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFloat(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ double value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFloat(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ double *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetString(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BSTR value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BSTR *value) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteConfigurationToPreferences( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkConfiguration_v10_2Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkConfiguration_v10_2 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkConfiguration_v10_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetFlag )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BOOL value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFlag )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BOOL *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetInt )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ LONGLONG value);
-
- HRESULT ( STDMETHODCALLTYPE *GetInt )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ LONGLONG *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetFloat )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ double value);
-
- HRESULT ( STDMETHODCALLTYPE *GetFloat )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ double *value);
-
- HRESULT ( STDMETHODCALLTYPE *SetString )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [in] */ BSTR value);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkConfiguration_v10_2 * This,
- /* [in] */ BMDDeckLinkConfigurationID cfgID,
- /* [out] */ BSTR *value);
-
- HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
- IDeckLinkConfiguration_v10_2 * This);
-
- END_INTERFACE
- } IDeckLinkConfiguration_v10_2Vtbl;
-
- interface IDeckLinkConfiguration_v10_2
- {
- CONST_VTBL struct IDeckLinkConfiguration_v10_2Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkConfiguration_v10_2_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkConfiguration_v10_2_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkConfiguration_v10_2_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkConfiguration_v10_2_SetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_GetFlag(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_SetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> SetInt(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_GetInt(This,cfgID,value) \
- ( (This)->lpVtbl -> GetInt(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_SetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_GetFloat(This,cfgID,value) \
- ( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_SetString(This,cfgID,value) \
- ( (This)->lpVtbl -> SetString(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_GetString(This,cfgID,value) \
- ( (This)->lpVtbl -> GetString(This,cfgID,value) )
-
-#define IDeckLinkConfiguration_v10_2_WriteConfigurationToPreferences(This) \
- ( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__
-#define __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__
-
-/* interface IDeckLinkOutput_v9_9 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkOutput_v9_9;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("A3EF0963-0862-44ED-92A9-EE89ABF431C7")
- IDeckLinkOutput_v9_9 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoOutputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDVideoOutputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
- /* [in] */ int width,
- /* [in] */ int height,
- /* [in] */ int rowBytes,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
- /* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeValue displayTime,
- /* [in] */ BMDTimeValue displayDuration,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
- /* [out] */ unsigned int *bufferedFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount,
- /* [in] */ BMDAudioOutputStreamType streamType) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [in] */ BMDTimeValue streamTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
- /* [in] */ BMDTimeValue playbackStartTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ double playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
- /* [in] */ BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- /* [in] */ BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
- /* [out] */ BOOL *active) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetReferenceStatus(
- /* [out] */ BMDReferenceStatus *referenceStatus) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkOutput_v9_9Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkOutput_v9_9 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoOutputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkOutput_v9_9 * This,
- /* [out] */ IDeckLinkDisplayModeIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDVideoOutputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ int width,
- /* [in] */ int height,
- /* [in] */ int rowBytes,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
-
- HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkVideoFrame *theFrame,
- /* [in] */ BMDTimeValue displayTime,
- /* [in] */ BMDTimeValue displayDuration,
- /* [in] */ BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
- IDeckLinkOutput_v9_9 * This,
- /* [out] */ unsigned int *bufferedFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount,
- /* [in] */ BMDAudioOutputStreamType streamType);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ void *buffer,
- /* [in] */ unsigned int sampleFrameCount,
- /* [in] */ BMDTimeValue streamTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkOutput_v9_9 * This,
- /* [out] */ unsigned int *bufferedSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
- IDeckLinkOutput_v9_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDTimeValue playbackStartTime,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ double playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- /* [in] */ BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
- IDeckLinkOutput_v9_9 * This,
- /* [out] */ BOOL *active);
-
- HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *GetReferenceStatus )(
- IDeckLinkOutput_v9_9 * This,
- /* [out] */ BMDReferenceStatus *referenceStatus);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkOutput_v9_9 * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- END_INTERFACE
- } IDeckLinkOutput_v9_9Vtbl;
-
- interface IDeckLinkOutput_v9_9
- {
- CONST_VTBL struct IDeckLinkOutput_v9_9Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkOutput_v9_9_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkOutput_v9_9_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkOutput_v9_9_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkOutput_v9_9_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
-
-#define IDeckLinkOutput_v9_9_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkOutput_v9_9_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkOutput_v9_9_EnableVideoOutput(This,displayMode,flags) \
- ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
-
-#define IDeckLinkOutput_v9_9_DisableVideoOutput(This) \
- ( (This)->lpVtbl -> DisableVideoOutput(This) )
-
-#define IDeckLinkOutput_v9_9_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkOutput_v9_9_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_v9_9_CreateAncillaryData(This,pixelFormat,outBuffer) \
- ( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
-
-#define IDeckLinkOutput_v9_9_DisplayVideoFrameSync(This,theFrame) \
- ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
-
-#define IDeckLinkOutput_v9_9_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
- ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
-
-#define IDeckLinkOutput_v9_9_SetScheduledFrameCompletionCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v9_9_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
- ( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
-
-#define IDeckLinkOutput_v9_9_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
- ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
-
-#define IDeckLinkOutput_v9_9_DisableAudioOutput(This) \
- ( (This)->lpVtbl -> DisableAudioOutput(This) )
-
-#define IDeckLinkOutput_v9_9_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
- ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v9_9_BeginAudioPreroll(This) \
- ( (This)->lpVtbl -> BeginAudioPreroll(This) )
-
-#define IDeckLinkOutput_v9_9_EndAudioPreroll(This) \
- ( (This)->lpVtbl -> EndAudioPreroll(This) )
-
-#define IDeckLinkOutput_v9_9_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
- ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v9_9_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
-
-#define IDeckLinkOutput_v9_9_FlushBufferedAudioSamples(This) \
- ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
-
-#define IDeckLinkOutput_v9_9_SetAudioCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v9_9_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
- ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
-
-#define IDeckLinkOutput_v9_9_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
- ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
-
-#define IDeckLinkOutput_v9_9_IsScheduledPlaybackRunning(This,active) \
- ( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
-
-#define IDeckLinkOutput_v9_9_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
- ( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
-
-#define IDeckLinkOutput_v9_9_GetReferenceStatus(This,referenceStatus) \
- ( (This)->lpVtbl -> GetReferenceStatus(This,referenceStatus) )
-
-#define IDeckLinkOutput_v9_9_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v9_2_INTERFACE_DEFINED__
-#define __IDeckLinkInput_v9_2_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInput_v9_2 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInput_v9_2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("6D40EF78-28B9-4E21-990D-95BB7750A04F")
- IDeckLinkInput_v9_2 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
- /* [out] */ unsigned int *availableFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
- /* [out] */ unsigned int *availableSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkInputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInput_v9_2Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInput_v9_2 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags,
- /* [out] */ BMDDisplayModeSupport *result,
- /* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkInput_v9_2 * This,
- /* [out] */ IDeckLinkDisplayModeIterator **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ BMDDisplayMode displayMode,
- /* [in] */ BMDPixelFormat pixelFormat,
- /* [in] */ BMDVideoInputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
- IDeckLinkInput_v9_2 * This,
- /* [out] */ unsigned int *availableFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ BMDAudioSampleRate sampleRate,
- /* [in] */ BMDAudioSampleType sampleType,
- /* [in] */ unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
- IDeckLinkInput_v9_2 * This,
- /* [out] */ unsigned int *availableSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *StartStreams )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopStreams )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
- IDeckLinkInput_v9_2 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ IDeckLinkInputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkInput_v9_2 * This,
- /* [in] */ BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- END_INTERFACE
- } IDeckLinkInput_v9_2Vtbl;
-
- interface IDeckLinkInput_v9_2
- {
- CONST_VTBL struct IDeckLinkInput_v9_2Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInput_v9_2_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInput_v9_2_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInput_v9_2_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInput_v9_2_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
-
-#define IDeckLinkInput_v9_2_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkInput_v9_2_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkInput_v9_2_EnableVideoInput(This,displayMode,pixelFormat,flags) \
- ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
-
-#define IDeckLinkInput_v9_2_DisableVideoInput(This) \
- ( (This)->lpVtbl -> DisableVideoInput(This) )
-
-#define IDeckLinkInput_v9_2_GetAvailableVideoFrameCount(This,availableFrameCount) \
- ( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
-
-#define IDeckLinkInput_v9_2_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkInput_v9_2_DisableAudioInput(This) \
- ( (This)->lpVtbl -> DisableAudioInput(This) )
-
-#define IDeckLinkInput_v9_2_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
- ( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
-
-#define IDeckLinkInput_v9_2_StartStreams(This) \
- ( (This)->lpVtbl -> StartStreams(This) )
-
-#define IDeckLinkInput_v9_2_StopStreams(This) \
- ( (This)->lpVtbl -> StopStreams(This) )
-
-#define IDeckLinkInput_v9_2_PauseStreams(This) \
- ( (This)->lpVtbl -> PauseStreams(This) )
-
-#define IDeckLinkInput_v9_2_FlushStreams(This) \
- ( (This)->lpVtbl -> FlushStreams(This) )
-
-#define IDeckLinkInput_v9_2_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#define IDeckLinkInput_v9_2_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInput_v9_2_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__
-#define __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeckControlStatusCallback_v8_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeckControlStatusCallback_v8_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("E5F693C1-4283-4716-B18F-C1431521955B")
- IDeckLinkDeckControlStatusCallback_v8_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE TimecodeUpdate(
- /* [in] */ BMDTimecodeBCD currentTimecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE VTRControlStateChanged(
- /* [in] */ BMDDeckControlVTRControlState_v8_1 newState,
- /* [in] */ BMDDeckControlError error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DeckControlEventReceived(
- /* [in] */ BMDDeckControlEvent event,
- /* [in] */ BMDDeckControlError error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DeckControlStatusChanged(
- /* [in] */ BMDDeckControlStatusFlags flags,
- /* [in] */ unsigned int mask) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeckControlStatusCallback_v8_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *TimecodeUpdate )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This,
- /* [in] */ BMDTimecodeBCD currentTimecode);
-
- HRESULT ( STDMETHODCALLTYPE *VTRControlStateChanged )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This,
- /* [in] */ BMDDeckControlVTRControlState_v8_1 newState,
- /* [in] */ BMDDeckControlError error);
-
- HRESULT ( STDMETHODCALLTYPE *DeckControlEventReceived )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This,
- /* [in] */ BMDDeckControlEvent event,
- /* [in] */ BMDDeckControlError error);
-
- HRESULT ( STDMETHODCALLTYPE *DeckControlStatusChanged )(
- IDeckLinkDeckControlStatusCallback_v8_1 * This,
- /* [in] */ BMDDeckControlStatusFlags flags,
- /* [in] */ unsigned int mask);
-
- END_INTERFACE
- } IDeckLinkDeckControlStatusCallback_v8_1Vtbl;
-
- interface IDeckLinkDeckControlStatusCallback_v8_1
- {
- CONST_VTBL struct IDeckLinkDeckControlStatusCallback_v8_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_TimecodeUpdate(This,currentTimecode) \
- ( (This)->lpVtbl -> TimecodeUpdate(This,currentTimecode) )
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_VTRControlStateChanged(This,newState,error) \
- ( (This)->lpVtbl -> VTRControlStateChanged(This,newState,error) )
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_DeckControlEventReceived(This,event,error) \
- ( (This)->lpVtbl -> DeckControlEventReceived(This,event,error) )
-
-#define IDeckLinkDeckControlStatusCallback_v8_1_DeckControlStatusChanged(This,flags,mask) \
- ( (This)->lpVtbl -> DeckControlStatusChanged(This,flags,mask) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__
-#define __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeckControl_v8_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeckControl_v8_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("522A9E39-0F3C-4742-94EE-D80DE335DA1D")
- IDeckLinkDeckControl_v8_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Open(
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Close(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentState(
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState_v8_1 *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetStandby(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SendCommand(
- /* [in] */ unsigned char *inBuffer,
- /* [in] */ unsigned int inBufferSize,
- /* [out] */ unsigned char *outBuffer,
- /* [out] */ unsigned int *outDataSize,
- /* [in] */ unsigned int outBufferSize,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Play(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Stop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE TogglePlayStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Eject(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GoToTimecode(
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FastForward(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Rewind(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepForward(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepBack(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Jog(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Shuttle(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeString(
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecode(
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeBCD(
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetPreroll(
- /* [in] */ unsigned int prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPreroll(
- /* [out] */ unsigned int *prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetExportOffset(
- /* [in] */ int exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetExportOffset(
- /* [out] */ int *exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetManualExportOffset(
- /* [out] */ int *deckManualExportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCaptureOffset(
- /* [in] */ int captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCaptureOffset(
- /* [out] */ int *captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartExport(
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartCapture(
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDeviceID(
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Abort( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStart(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkDeckControlStatusCallback_v8_1 *callback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeckControl_v8_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeckControl_v8_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeckControl_v8_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *Open )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Close )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState_v8_1 *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags);
-
- HRESULT ( STDMETHODCALLTYPE *SetStandby )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *SendCommand )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ unsigned char *inBuffer,
- /* [in] */ unsigned int inBufferSize,
- /* [out] */ unsigned char *outBuffer,
- /* [out] */ unsigned int *outDataSize,
- /* [in] */ unsigned int outBufferSize,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Play )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Stop )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Eject )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *FastForward )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Rewind )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepForward )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepBack )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Jog )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Shuttle )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ unsigned int prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ unsigned int *prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ int exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ int *exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ int *deckManualExportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ int captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ int *captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *StartExport )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StartCapture )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Abort )(
- IDeckLinkDeckControl_v8_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkDeckControl_v8_1 * This,
- /* [in] */ IDeckLinkDeckControlStatusCallback_v8_1 *callback);
-
- END_INTERFACE
- } IDeckLinkDeckControl_v8_1Vtbl;
-
- interface IDeckLinkDeckControl_v8_1
- {
- CONST_VTBL struct IDeckLinkDeckControl_v8_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeckControl_v8_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeckControl_v8_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeckControl_v8_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeckControl_v8_1_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
- ( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
-
-#define IDeckLinkDeckControl_v8_1_Close(This,standbyOn) \
- ( (This)->lpVtbl -> Close(This,standbyOn) )
-
-#define IDeckLinkDeckControl_v8_1_GetCurrentState(This,mode,vtrControlState,flags) \
- ( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
-
-#define IDeckLinkDeckControl_v8_1_SetStandby(This,standbyOn) \
- ( (This)->lpVtbl -> SetStandby(This,standbyOn) )
-
-#define IDeckLinkDeckControl_v8_1_SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) \
- ( (This)->lpVtbl -> SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) )
-
-#define IDeckLinkDeckControl_v8_1_Play(This,error) \
- ( (This)->lpVtbl -> Play(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_Stop(This,error) \
- ( (This)->lpVtbl -> Stop(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_TogglePlayStop(This,error) \
- ( (This)->lpVtbl -> TogglePlayStop(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_Eject(This,error) \
- ( (This)->lpVtbl -> Eject(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_GoToTimecode(This,timecode,error) \
- ( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
-
-#define IDeckLinkDeckControl_v8_1_FastForward(This,viewTape,error) \
- ( (This)->lpVtbl -> FastForward(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_v8_1_Rewind(This,viewTape,error) \
- ( (This)->lpVtbl -> Rewind(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_v8_1_StepForward(This,error) \
- ( (This)->lpVtbl -> StepForward(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_StepBack(This,error) \
- ( (This)->lpVtbl -> StepBack(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_Jog(This,rate,error) \
- ( (This)->lpVtbl -> Jog(This,rate,error) )
-
-#define IDeckLinkDeckControl_v8_1_Shuttle(This,rate,error) \
- ( (This)->lpVtbl -> Shuttle(This,rate,error) )
-
-#define IDeckLinkDeckControl_v8_1_GetTimecodeString(This,currentTimeCode,error) \
- ( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
-
-#define IDeckLinkDeckControl_v8_1_GetTimecode(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_v8_1_GetTimecodeBCD(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_v8_1_SetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_v8_1_GetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_v8_1_SetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_v8_1_GetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_v8_1_GetManualExportOffset(This,deckManualExportOffsetFields) \
- ( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
-
-#define IDeckLinkDeckControl_v8_1_SetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_v8_1_GetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_v8_1_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
- ( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
-
-#define IDeckLinkDeckControl_v8_1_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
- ( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
-
-#define IDeckLinkDeckControl_v8_1_GetDeviceID(This,deviceId,error) \
- ( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
-
-#define IDeckLinkDeckControl_v8_1_Abort(This) \
- ( (This)->lpVtbl -> Abort(This) )
-
-#define IDeckLinkDeckControl_v8_1_CrashRecordStart(This,error) \
- ( (This)->lpVtbl -> CrashRecordStart(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_CrashRecordStop(This,error) \
- ( (This)->lpVtbl -> CrashRecordStop(This,error) )
-
-#define IDeckLinkDeckControl_v8_1_SetCallback(This,callback) \
- ( (This)->lpVtbl -> SetCallback(This,callback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLink_v8_0_INTERFACE_DEFINED__
-#define __IDeckLink_v8_0_INTERFACE_DEFINED__
-
-/* interface IDeckLink_v8_0 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLink_v8_0;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("62BFF75D-6569-4E55-8D4D-66AA03829ABC")
- IDeckLink_v8_0 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetModelName(
- /* [out] */ BSTR *modelName) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLink_v8_0Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLink_v8_0 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLink_v8_0 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLink_v8_0 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetModelName )(
- IDeckLink_v8_0 * This,
- /* [out] */ BSTR *modelName);
-
- END_INTERFACE
- } IDeckLink_v8_0Vtbl;
-
- interface IDeckLink_v8_0
- {
- CONST_VTBL struct IDeckLink_v8_0Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLink_v8_0_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLink_v8_0_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLink_v8_0_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLink_v8_0_GetModelName(This,modelName) \
- ( (This)->lpVtbl -> GetModelName(This,modelName) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLink_v8_0_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__
-#define __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__
-
-/* interface IDeckLinkIterator_v8_0 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkIterator_v8_0;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("74E936FC-CC28-4A67-81A0-1E94E52D4E69")
- IDeckLinkIterator_v8_0 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IDeckLink_v8_0 **deckLinkInstance) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkIterator_v8_0Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkIterator_v8_0 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkIterator_v8_0 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkIterator_v8_0 * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IDeckLinkIterator_v8_0 * This,
- /* [out] */ IDeckLink_v8_0 **deckLinkInstance);
-
- END_INTERFACE
- } IDeckLinkIterator_v8_0Vtbl;
-
- interface IDeckLinkIterator_v8_0
- {
- CONST_VTBL struct IDeckLinkIterator_v8_0Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkIterator_v8_0_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkIterator_v8_0_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkIterator_v8_0_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkIterator_v8_0_Next(This,deckLinkInstance) \
- ( (This)->lpVtbl -> Next(This,deckLinkInstance) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__ */
-
-
-EXTERN_C const CLSID CLSID_CDeckLinkIterator_v8_0;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("D9EDA3B3-2887-41FA-B724-017CF1EB1D37")
-CDeckLinkIterator_v8_0;
-#endif
-
-#ifndef __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__
-#define __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDeckControl_v7_9 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDeckControl_v7_9;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("A4D81043-0619-42B7-8ED6-602D29041DF7")
- IDeckLinkDeckControl_v7_9 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Open(
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Close(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentState(
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetStandby(
- /* [in] */ BOOL standbyOn) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Play(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Stop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE TogglePlayStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Eject(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GoToTimecode(
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FastForward(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Rewind(
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepForward(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StepBack(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Jog(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Shuttle(
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeString(
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecode(
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecodeBCD(
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetPreroll(
- /* [in] */ unsigned int prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetPreroll(
- /* [out] */ unsigned int *prerollSeconds) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetExportOffset(
- /* [in] */ int exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetExportOffset(
- /* [out] */ int *exportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetManualExportOffset(
- /* [out] */ int *deckManualExportOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCaptureOffset(
- /* [in] */ int captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetCaptureOffset(
- /* [out] */ int *captureOffsetFields) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartExport(
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartCapture(
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDeviceID(
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Abort( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStart(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CrashRecordStop(
- /* [out] */ BMDDeckControlError *error) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkDeckControlStatusCallback *callback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDeckControl_v7_9Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDeckControl_v7_9 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDeckControl_v7_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *Open )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BMDTimeScale timeScale,
- /* [in] */ BMDTimeValue timeValue,
- /* [in] */ BOOL timecodeIsDropFrame,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Close )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlMode *mode,
- /* [out] */ BMDDeckControlVTRControlState *vtrControlState,
- /* [out] */ BMDDeckControlStatusFlags *flags);
-
- HRESULT ( STDMETHODCALLTYPE *SetStandby )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BOOL standbyOn);
-
- HRESULT ( STDMETHODCALLTYPE *Play )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Stop )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Eject )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BMDTimecodeBCD timecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *FastForward )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Rewind )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BOOL viewTape,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepForward )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StepBack )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Jog )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Shuttle )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ double rate,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BSTR *currentTimeCode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ IDeckLinkTimecode **currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDTimecodeBCD *currentTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ unsigned int prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ unsigned int *prerollSeconds);
-
- HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ int exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ int *exportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ int *deckManualExportOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ int captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ int *captureOffsetFields);
-
- HRESULT ( STDMETHODCALLTYPE *StartExport )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *StartCapture )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ BOOL useVITC,
- /* [in] */ BMDTimecodeBCD inTimecode,
- /* [in] */ BMDTimecodeBCD outTimecode,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ unsigned short *deviceId,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *Abort )(
- IDeckLinkDeckControl_v7_9 * This);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [out] */ BMDDeckControlError *error);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkDeckControl_v7_9 * This,
- /* [in] */ IDeckLinkDeckControlStatusCallback *callback);
-
- END_INTERFACE
- } IDeckLinkDeckControl_v7_9Vtbl;
-
- interface IDeckLinkDeckControl_v7_9
- {
- CONST_VTBL struct IDeckLinkDeckControl_v7_9Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDeckControl_v7_9_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDeckControl_v7_9_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDeckControl_v7_9_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDeckControl_v7_9_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
- ( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
-
-#define IDeckLinkDeckControl_v7_9_Close(This,standbyOn) \
- ( (This)->lpVtbl -> Close(This,standbyOn) )
-
-#define IDeckLinkDeckControl_v7_9_GetCurrentState(This,mode,vtrControlState,flags) \
- ( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
-
-#define IDeckLinkDeckControl_v7_9_SetStandby(This,standbyOn) \
- ( (This)->lpVtbl -> SetStandby(This,standbyOn) )
-
-#define IDeckLinkDeckControl_v7_9_Play(This,error) \
- ( (This)->lpVtbl -> Play(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_Stop(This,error) \
- ( (This)->lpVtbl -> Stop(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_TogglePlayStop(This,error) \
- ( (This)->lpVtbl -> TogglePlayStop(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_Eject(This,error) \
- ( (This)->lpVtbl -> Eject(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_GoToTimecode(This,timecode,error) \
- ( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
-
-#define IDeckLinkDeckControl_v7_9_FastForward(This,viewTape,error) \
- ( (This)->lpVtbl -> FastForward(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_v7_9_Rewind(This,viewTape,error) \
- ( (This)->lpVtbl -> Rewind(This,viewTape,error) )
-
-#define IDeckLinkDeckControl_v7_9_StepForward(This,error) \
- ( (This)->lpVtbl -> StepForward(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_StepBack(This,error) \
- ( (This)->lpVtbl -> StepBack(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_Jog(This,rate,error) \
- ( (This)->lpVtbl -> Jog(This,rate,error) )
-
-#define IDeckLinkDeckControl_v7_9_Shuttle(This,rate,error) \
- ( (This)->lpVtbl -> Shuttle(This,rate,error) )
-
-#define IDeckLinkDeckControl_v7_9_GetTimecodeString(This,currentTimeCode,error) \
- ( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
-
-#define IDeckLinkDeckControl_v7_9_GetTimecode(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_v7_9_GetTimecodeBCD(This,currentTimecode,error) \
- ( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
-
-#define IDeckLinkDeckControl_v7_9_SetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_v7_9_GetPreroll(This,prerollSeconds) \
- ( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
-
-#define IDeckLinkDeckControl_v7_9_SetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_v7_9_GetExportOffset(This,exportOffsetFields) \
- ( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
-
-#define IDeckLinkDeckControl_v7_9_GetManualExportOffset(This,deckManualExportOffsetFields) \
- ( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
-
-#define IDeckLinkDeckControl_v7_9_SetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_v7_9_GetCaptureOffset(This,captureOffsetFields) \
- ( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
-
-#define IDeckLinkDeckControl_v7_9_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
- ( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
-
-#define IDeckLinkDeckControl_v7_9_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
- ( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
-
-#define IDeckLinkDeckControl_v7_9_GetDeviceID(This,deviceId,error) \
- ( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
-
-#define IDeckLinkDeckControl_v7_9_Abort(This) \
- ( (This)->lpVtbl -> Abort(This) )
-
-#define IDeckLinkDeckControl_v7_9_CrashRecordStart(This,error) \
- ( (This)->lpVtbl -> CrashRecordStart(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_CrashRecordStop(This,error) \
- ( (This)->lpVtbl -> CrashRecordStop(This,error) )
-
-#define IDeckLinkDeckControl_v7_9_SetCallback(This,callback) \
- ( (This)->lpVtbl -> SetCallback(This,callback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayModeIterator_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayModeIterator_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("455D741F-1779-4800-86F5-0B5D13D79751")
- IDeckLinkDisplayModeIterator_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IDeckLinkDisplayMode_v7_6 **deckLinkDisplayMode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayModeIterator_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayModeIterator_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayModeIterator_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayModeIterator_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IDeckLinkDisplayModeIterator_v7_6 * This,
- /* [out] */ IDeckLinkDisplayMode_v7_6 **deckLinkDisplayMode);
-
- END_INTERFACE
- } IDeckLinkDisplayModeIterator_v7_6Vtbl;
-
- interface IDeckLinkDisplayModeIterator_v7_6
- {
- CONST_VTBL struct IDeckLinkDisplayModeIterator_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayModeIterator_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayModeIterator_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayModeIterator_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayModeIterator_v7_6_Next(This,deckLinkDisplayMode) \
- ( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayMode_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayMode_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("87451E84-2B7E-439E-A629-4393EA4A8550")
- IDeckLinkDisplayMode_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetName(
- /* [out] */ BSTR *name) = 0;
-
- virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFrameRate(
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale) = 0;
-
- virtual BMDFieldDominance STDMETHODCALLTYPE GetFieldDominance( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayMode_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayMode_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetName )(
- IDeckLinkDisplayMode_v7_6 * This,
- /* [out] */ BSTR *name);
-
- BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameRate )(
- IDeckLinkDisplayMode_v7_6 * This,
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale);
-
- BMDFieldDominance ( STDMETHODCALLTYPE *GetFieldDominance )(
- IDeckLinkDisplayMode_v7_6 * This);
-
- END_INTERFACE
- } IDeckLinkDisplayMode_v7_6Vtbl;
-
- interface IDeckLinkDisplayMode_v7_6
- {
- CONST_VTBL struct IDeckLinkDisplayMode_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayMode_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayMode_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayMode_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayMode_v7_6_GetName(This,name) \
- ( (This)->lpVtbl -> GetName(This,name) )
-
-#define IDeckLinkDisplayMode_v7_6_GetDisplayMode(This) \
- ( (This)->lpVtbl -> GetDisplayMode(This) )
-
-#define IDeckLinkDisplayMode_v7_6_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkDisplayMode_v7_6_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkDisplayMode_v7_6_GetFrameRate(This,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) )
-
-#define IDeckLinkDisplayMode_v7_6_GetFieldDominance(This) \
- ( (This)->lpVtbl -> GetFieldDominance(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkOutput_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkOutput_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("29228142-EB8C-4141-A621-F74026450955")
- IDeckLinkOutput_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
- BMDDisplayMode displayMode,
- BMDVideoOutputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
- BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
- /* [in] */ IDeckLinkVideoOutputCallback_v7_6 *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
- /* [out] */ unsigned int *bufferedFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount,
- BMDAudioOutputStreamType streamType) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
- BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
- /* [out] */ BOOL *active) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkOutput_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkOutput_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkOutput_v7_6 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkOutput_v7_6 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
- IDeckLinkOutput_v7_6 * This,
- BMDDisplayMode displayMode,
- BMDVideoOutputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
- IDeckLinkOutput_v7_6 * This,
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
- IDeckLinkOutput_v7_6 * This,
- BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
-
- HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkVideoOutputCallback_v7_6 *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
- IDeckLinkOutput_v7_6 * This,
- /* [out] */ unsigned int *bufferedFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
- IDeckLinkOutput_v7_6 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount,
- BMDAudioOutputStreamType streamType);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkOutput_v7_6 * This,
- /* [out] */ unsigned int *bufferedSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
- IDeckLinkOutput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
- IDeckLinkOutput_v7_6 * This,
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
- IDeckLinkOutput_v7_6 * This,
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
- IDeckLinkOutput_v7_6 * This,
- BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
- IDeckLinkOutput_v7_6 * This,
- /* [out] */ BOOL *active);
-
- HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
- IDeckLinkOutput_v7_6 * This,
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *streamTime,
- /* [out] */ double *playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkOutput_v7_6 * This,
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- END_INTERFACE
- } IDeckLinkOutput_v7_6Vtbl;
-
- interface IDeckLinkOutput_v7_6
- {
- CONST_VTBL struct IDeckLinkOutput_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkOutput_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkOutput_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkOutput_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkOutput_v7_6_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkOutput_v7_6_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkOutput_v7_6_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkOutput_v7_6_EnableVideoOutput(This,displayMode,flags) \
- ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
-
-#define IDeckLinkOutput_v7_6_DisableVideoOutput(This) \
- ( (This)->lpVtbl -> DisableVideoOutput(This) )
-
-#define IDeckLinkOutput_v7_6_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkOutput_v7_6_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_v7_6_CreateAncillaryData(This,pixelFormat,outBuffer) \
- ( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
-
-#define IDeckLinkOutput_v7_6_DisplayVideoFrameSync(This,theFrame) \
- ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
-
-#define IDeckLinkOutput_v7_6_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
- ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
-
-#define IDeckLinkOutput_v7_6_SetScheduledFrameCompletionCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_6_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
- ( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
-
-#define IDeckLinkOutput_v7_6_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
- ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
-
-#define IDeckLinkOutput_v7_6_DisableAudioOutput(This) \
- ( (This)->lpVtbl -> DisableAudioOutput(This) )
-
-#define IDeckLinkOutput_v7_6_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
- ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_6_BeginAudioPreroll(This) \
- ( (This)->lpVtbl -> BeginAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_6_EndAudioPreroll(This) \
- ( (This)->lpVtbl -> EndAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_6_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
- ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_6_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
-
-#define IDeckLinkOutput_v7_6_FlushBufferedAudioSamples(This) \
- ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
-
-#define IDeckLinkOutput_v7_6_SetAudioCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_6_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
- ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
-
-#define IDeckLinkOutput_v7_6_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
- ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
-
-#define IDeckLinkOutput_v7_6_IsScheduledPlaybackRunning(This,active) \
- ( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
-
-#define IDeckLinkOutput_v7_6_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
- ( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
-
-#define IDeckLinkOutput_v7_6_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkInput_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInput_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInput_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("300C135A-9F43-48E2-9906-6D7911D93CF1")
- IDeckLinkInput_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
- /* [out] */ unsigned int *availableFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
- /* [out] */ unsigned int *availableSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkInputCallback_v7_6 *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInput_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInput_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInput_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkInput_v7_6 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkInput_v7_6 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkInput_v7_6 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
- IDeckLinkInput_v7_6 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
- IDeckLinkInput_v7_6 * This,
- /* [out] */ unsigned int *availableFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
- IDeckLinkInput_v7_6 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
- IDeckLinkInput_v7_6 * This,
- /* [out] */ unsigned int *availableSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *StartStreams )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopStreams )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
- IDeckLinkInput_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkInput_v7_6 * This,
- /* [in] */ IDeckLinkInputCallback_v7_6 *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkInput_v7_6 * This,
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *hardwareTime,
- /* [out] */ BMDTimeValue *timeInFrame,
- /* [out] */ BMDTimeValue *ticksPerFrame);
-
- END_INTERFACE
- } IDeckLinkInput_v7_6Vtbl;
-
- interface IDeckLinkInput_v7_6
- {
- CONST_VTBL struct IDeckLinkInput_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInput_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInput_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInput_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInput_v7_6_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkInput_v7_6_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkInput_v7_6_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkInput_v7_6_EnableVideoInput(This,displayMode,pixelFormat,flags) \
- ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
-
-#define IDeckLinkInput_v7_6_DisableVideoInput(This) \
- ( (This)->lpVtbl -> DisableVideoInput(This) )
-
-#define IDeckLinkInput_v7_6_GetAvailableVideoFrameCount(This,availableFrameCount) \
- ( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
-
-#define IDeckLinkInput_v7_6_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkInput_v7_6_DisableAudioInput(This) \
- ( (This)->lpVtbl -> DisableAudioInput(This) )
-
-#define IDeckLinkInput_v7_6_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
- ( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
-
-#define IDeckLinkInput_v7_6_StartStreams(This) \
- ( (This)->lpVtbl -> StartStreams(This) )
-
-#define IDeckLinkInput_v7_6_StopStreams(This) \
- ( (This)->lpVtbl -> StopStreams(This) )
-
-#define IDeckLinkInput_v7_6_PauseStreams(This) \
- ( (This)->lpVtbl -> PauseStreams(This) )
-
-#define IDeckLinkInput_v7_6_FlushStreams(This) \
- ( (This)->lpVtbl -> FlushStreams(This) )
-
-#define IDeckLinkInput_v7_6_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#define IDeckLinkInput_v7_6_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInput_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkTimecode_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkTimecode_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("EFB9BCA6-A521-44F7-BD69-2332F24D9EE6")
- IDeckLinkTimecode_v7_6 : public IUnknown
- {
- public:
- virtual BMDTimecodeBCD STDMETHODCALLTYPE GetBCD( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetComponents(
- /* [out] */ unsigned char *hours,
- /* [out] */ unsigned char *minutes,
- /* [out] */ unsigned char *seconds,
- /* [out] */ unsigned char *frames) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetString(
- /* [out] */ BSTR *timecode) = 0;
-
- virtual BMDTimecodeFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkTimecode_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkTimecode_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkTimecode_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkTimecode_v7_6 * This);
-
- BMDTimecodeBCD ( STDMETHODCALLTYPE *GetBCD )(
- IDeckLinkTimecode_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetComponents )(
- IDeckLinkTimecode_v7_6 * This,
- /* [out] */ unsigned char *hours,
- /* [out] */ unsigned char *minutes,
- /* [out] */ unsigned char *seconds,
- /* [out] */ unsigned char *frames);
-
- HRESULT ( STDMETHODCALLTYPE *GetString )(
- IDeckLinkTimecode_v7_6 * This,
- /* [out] */ BSTR *timecode);
-
- BMDTimecodeFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkTimecode_v7_6 * This);
-
- END_INTERFACE
- } IDeckLinkTimecode_v7_6Vtbl;
-
- interface IDeckLinkTimecode_v7_6
- {
- CONST_VTBL struct IDeckLinkTimecode_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkTimecode_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkTimecode_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkTimecode_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkTimecode_v7_6_GetBCD(This) \
- ( (This)->lpVtbl -> GetBCD(This) )
-
-#define IDeckLinkTimecode_v7_6_GetComponents(This,hours,minutes,seconds,frames) \
- ( (This)->lpVtbl -> GetComponents(This,hours,minutes,seconds,frames) )
-
-#define IDeckLinkTimecode_v7_6_GetString(This,timecode) \
- ( (This)->lpVtbl -> GetString(This,timecode) )
-
-#define IDeckLinkTimecode_v7_6_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoFrame_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoFrame_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("A8D8238E-6B18-4196-99E1-5AF717B83D32")
- IDeckLinkVideoFrame_v7_6 : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
-
- virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
-
- virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- /* [out] */ void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetTimecode(
- BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode_v7_6 **timecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAncillaryData(
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoFrame_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoFrame_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoFrame_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoFrame_v7_6 * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkVideoFrame_v7_6 * This,
- BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode_v7_6 **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkVideoFrame_v7_6 * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- END_INTERFACE
- } IDeckLinkVideoFrame_v7_6Vtbl;
-
- interface IDeckLinkVideoFrame_v7_6
- {
- CONST_VTBL struct IDeckLinkVideoFrame_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoFrame_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoFrame_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoFrame_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoFrame_v7_6_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoFrame_v7_6_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoFrame_v7_6_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoFrame_v7_6_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoFrame_v7_6_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoFrame_v7_6_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkVideoFrame_v7_6_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkVideoFrame_v7_6_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkMutableVideoFrame_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkMutableVideoFrame_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("46FCEE00-B4E6-43D0-91C0-023A7FCEB34F")
- IDeckLinkMutableVideoFrame_v7_6 : public IDeckLinkVideoFrame_v7_6
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE SetFlags(
- BMDFrameFlags newFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetTimecode(
- BMDTimecodeFormat format,
- /* [in] */ IDeckLinkTimecode_v7_6 *timecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetTimecodeFromComponents(
- BMDTimecodeFormat format,
- unsigned char hours,
- unsigned char minutes,
- unsigned char seconds,
- unsigned char frames,
- BMDTimecodeFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAncillaryData(
- /* [in] */ IDeckLinkVideoFrameAncillary *ancillary) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkMutableVideoFrame_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkMutableVideoFrame_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode_v7_6 **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *SetFlags )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- BMDFrameFlags newFlags);
-
- HRESULT ( STDMETHODCALLTYPE *SetTimecode )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- BMDTimecodeFormat format,
- /* [in] */ IDeckLinkTimecode_v7_6 *timecode);
-
- HRESULT ( STDMETHODCALLTYPE *SetTimecodeFromComponents )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- BMDTimecodeFormat format,
- unsigned char hours,
- unsigned char minutes,
- unsigned char seconds,
- unsigned char frames,
- BMDTimecodeFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *SetAncillaryData )(
- IDeckLinkMutableVideoFrame_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrameAncillary *ancillary);
-
- END_INTERFACE
- } IDeckLinkMutableVideoFrame_v7_6Vtbl;
-
- interface IDeckLinkMutableVideoFrame_v7_6
- {
- CONST_VTBL struct IDeckLinkMutableVideoFrame_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkMutableVideoFrame_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-
-#define IDeckLinkMutableVideoFrame_v7_6_SetFlags(This,newFlags) \
- ( (This)->lpVtbl -> SetFlags(This,newFlags) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_SetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> SetTimecode(This,format,timecode) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) \
- ( (This)->lpVtbl -> SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) )
-
-#define IDeckLinkMutableVideoFrame_v7_6_SetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> SetAncillaryData(This,ancillary) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoInputFrame_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("9A74FA41-AE9F-47AC-8CF4-01F42DD59965")
- IDeckLinkVideoInputFrame_v7_6 : public IDeckLinkVideoFrame_v7_6
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp(
- BMDTimeScale timeScale,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoInputFrame_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoInputFrame_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode_v7_6 **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
- IDeckLinkVideoInputFrame_v7_6 * This,
- BMDTimeScale timeScale,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration);
-
- END_INTERFACE
- } IDeckLinkVideoInputFrame_v7_6Vtbl;
-
- interface IDeckLinkVideoInputFrame_v7_6
- {
- CONST_VTBL struct IDeckLinkVideoInputFrame_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoInputFrame_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoInputFrame_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoInputFrame_v7_6_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-
-#define IDeckLinkVideoInputFrame_v7_6_GetStreamTime(This,frameTime,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
-
-#define IDeckLinkVideoInputFrame_v7_6_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
- ( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkScreenPreviewCallback_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkScreenPreviewCallback_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("373F499D-4B4D-4518-AD22-6354E5A5825E")
- IDeckLinkScreenPreviewCallback_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DrawFrame(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkScreenPreviewCallback_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkScreenPreviewCallback_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkScreenPreviewCallback_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkScreenPreviewCallback_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DrawFrame )(
- IDeckLinkScreenPreviewCallback_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
-
- END_INTERFACE
- } IDeckLinkScreenPreviewCallback_v7_6Vtbl;
-
- interface IDeckLinkScreenPreviewCallback_v7_6
- {
- CONST_VTBL struct IDeckLinkScreenPreviewCallback_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkScreenPreviewCallback_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkScreenPreviewCallback_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkScreenPreviewCallback_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkScreenPreviewCallback_v7_6_DrawFrame(This,theFrame) \
- ( (This)->lpVtbl -> DrawFrame(This,theFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkGLScreenPreviewHelper_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkGLScreenPreviewHelper_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("BA575CD9-A15E-497B-B2C2-F9AFE7BE4EBA")
- IDeckLinkGLScreenPreviewHelper_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE InitializeGL( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PaintGL( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFrame(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkGLScreenPreviewHelper_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *InitializeGL )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *PaintGL )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetFrame )(
- IDeckLinkGLScreenPreviewHelper_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
-
- END_INTERFACE
- } IDeckLinkGLScreenPreviewHelper_v7_6Vtbl;
-
- interface IDeckLinkGLScreenPreviewHelper_v7_6
- {
- CONST_VTBL struct IDeckLinkGLScreenPreviewHelper_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_InitializeGL(This) \
- ( (This)->lpVtbl -> InitializeGL(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_PaintGL(This) \
- ( (This)->lpVtbl -> PaintGL(This) )
-
-#define IDeckLinkGLScreenPreviewHelper_v7_6_SetFrame(This,theFrame) \
- ( (This)->lpVtbl -> SetFrame(This,theFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoConversion_v7_6 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoConversion_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("3EB504C9-F97D-40FE-A158-D407D48CB53B")
- IDeckLinkVideoConversion_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ConvertFrame(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *srcFrame,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *dstFrame) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoConversion_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoConversion_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoConversion_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoConversion_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ConvertFrame )(
- IDeckLinkVideoConversion_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *srcFrame,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *dstFrame);
-
- END_INTERFACE
- } IDeckLinkVideoConversion_v7_6Vtbl;
-
- interface IDeckLinkVideoConversion_v7_6
- {
- CONST_VTBL struct IDeckLinkVideoConversion_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoConversion_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoConversion_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoConversion_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoConversion_v7_6_ConvertFrame(This,srcFrame,dstFrame) \
- ( (This)->lpVtbl -> ConvertFrame(This,srcFrame,dstFrame) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkConfiguration_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkConfiguration_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("B8EAD569-B764-47F0-A73F-AE40DF6CBF10")
- IDeckLinkConfiguration_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetConfigurationValidator(
- /* [out] */ IDeckLinkConfiguration_v7_6 **configObject) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteConfigurationToPreferences( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFormat(
- /* [in] */ BMDVideoConnection_v7_6 videoOutputConnection) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsVideoOutputActive(
- /* [in] */ BMDVideoConnection_v7_6 videoOutputConnection,
- /* [out] */ BOOL *active) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAnalogVideoOutputFlags(
- /* [in] */ BMDAnalogVideoFlags analogVideoFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAnalogVideoOutputFlags(
- /* [out] */ BMDAnalogVideoFlags *analogVideoFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableFieldFlickerRemovalWhenPaused(
- /* [in] */ BOOL enable) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsEnabledFieldFlickerRemovalWhenPaused(
- /* [out] */ BOOL *enabled) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Set444And3GBpsVideoOutput(
- /* [in] */ BOOL enable444VideoOutput,
- /* [in] */ BOOL enable3GbsOutput) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Get444And3GBpsVideoOutput(
- /* [out] */ BOOL *is444VideoOutputEnabled,
- /* [out] */ BOOL *threeGbsOutputEnabled) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputConversionMode(
- /* [in] */ BMDVideoOutputConversionMode conversionMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoOutputConversionMode(
- /* [out] */ BMDVideoOutputConversionMode *conversionMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Set_HD1080p24_to_HD1080i5994_Conversion(
- /* [in] */ BOOL enable) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Get_HD1080p24_to_HD1080i5994_Conversion(
- /* [out] */ BOOL *enabled) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoInputFormat(
- /* [in] */ BMDVideoConnection_v7_6 videoInputFormat) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoInputFormat(
- /* [out] */ BMDVideoConnection_v7_6 *videoInputFormat) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAnalogVideoInputFlags(
- /* [in] */ BMDAnalogVideoFlags analogVideoFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAnalogVideoInputFlags(
- /* [out] */ BMDAnalogVideoFlags *analogVideoFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoInputConversionMode(
- /* [in] */ BMDVideoInputConversionMode conversionMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVideoInputConversionMode(
- /* [out] */ BMDVideoInputConversionMode *conversionMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetBlackVideoOutputDuringCapture(
- /* [in] */ BOOL blackOutInCapture) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBlackVideoOutputDuringCapture(
- /* [out] */ BOOL *blackOutInCapture) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Set32PulldownSequenceInitialTimecodeFrame(
- /* [in] */ unsigned int aFrameTimecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Get32PulldownSequenceInitialTimecodeFrame(
- /* [out] */ unsigned int *aFrameTimecode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVancSourceLineMapping(
- /* [in] */ unsigned int activeLine1VANCsource,
- /* [in] */ unsigned int activeLine2VANCsource,
- /* [in] */ unsigned int activeLine3VANCsource) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetVancSourceLineMapping(
- /* [out] */ unsigned int *activeLine1VANCsource,
- /* [out] */ unsigned int *activeLine2VANCsource,
- /* [out] */ unsigned int *activeLine3VANCsource) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioInputFormat(
- /* [in] */ BMDAudioConnection_v10_2 audioInputFormat) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAudioInputFormat(
- /* [out] */ BMDAudioConnection_v10_2 *audioInputFormat) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkConfiguration_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkConfiguration_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkConfiguration_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetConfigurationValidator )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ IDeckLinkConfiguration_v7_6 **configObject);
-
- HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
- IDeckLinkConfiguration_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFormat )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDVideoConnection_v7_6 videoOutputConnection);
-
- HRESULT ( STDMETHODCALLTYPE *IsVideoOutputActive )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDVideoConnection_v7_6 videoOutputConnection,
- /* [out] */ BOOL *active);
-
- HRESULT ( STDMETHODCALLTYPE *SetAnalogVideoOutputFlags )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDAnalogVideoFlags analogVideoFlags);
-
- HRESULT ( STDMETHODCALLTYPE *GetAnalogVideoOutputFlags )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDAnalogVideoFlags *analogVideoFlags);
-
- HRESULT ( STDMETHODCALLTYPE *EnableFieldFlickerRemovalWhenPaused )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BOOL enable);
-
- HRESULT ( STDMETHODCALLTYPE *IsEnabledFieldFlickerRemovalWhenPaused )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BOOL *enabled);
-
- HRESULT ( STDMETHODCALLTYPE *Set444And3GBpsVideoOutput )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BOOL enable444VideoOutput,
- /* [in] */ BOOL enable3GbsOutput);
-
- HRESULT ( STDMETHODCALLTYPE *Get444And3GBpsVideoOutput )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BOOL *is444VideoOutputEnabled,
- /* [out] */ BOOL *threeGbsOutputEnabled);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputConversionMode )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDVideoOutputConversionMode conversionMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoOutputConversionMode )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDVideoOutputConversionMode *conversionMode);
-
- HRESULT ( STDMETHODCALLTYPE *Set_HD1080p24_to_HD1080i5994_Conversion )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BOOL enable);
-
- HRESULT ( STDMETHODCALLTYPE *Get_HD1080p24_to_HD1080i5994_Conversion )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BOOL *enabled);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoInputFormat )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDVideoConnection_v7_6 videoInputFormat);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoInputFormat )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDVideoConnection_v7_6 *videoInputFormat);
-
- HRESULT ( STDMETHODCALLTYPE *SetAnalogVideoInputFlags )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDAnalogVideoFlags analogVideoFlags);
-
- HRESULT ( STDMETHODCALLTYPE *GetAnalogVideoInputFlags )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDAnalogVideoFlags *analogVideoFlags);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoInputConversionMode )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDVideoInputConversionMode conversionMode);
-
- HRESULT ( STDMETHODCALLTYPE *GetVideoInputConversionMode )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDVideoInputConversionMode *conversionMode);
-
- HRESULT ( STDMETHODCALLTYPE *SetBlackVideoOutputDuringCapture )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BOOL blackOutInCapture);
-
- HRESULT ( STDMETHODCALLTYPE *GetBlackVideoOutputDuringCapture )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BOOL *blackOutInCapture);
-
- HRESULT ( STDMETHODCALLTYPE *Set32PulldownSequenceInitialTimecodeFrame )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ unsigned int aFrameTimecode);
-
- HRESULT ( STDMETHODCALLTYPE *Get32PulldownSequenceInitialTimecodeFrame )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ unsigned int *aFrameTimecode);
-
- HRESULT ( STDMETHODCALLTYPE *SetVancSourceLineMapping )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ unsigned int activeLine1VANCsource,
- /* [in] */ unsigned int activeLine2VANCsource,
- /* [in] */ unsigned int activeLine3VANCsource);
-
- HRESULT ( STDMETHODCALLTYPE *GetVancSourceLineMapping )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ unsigned int *activeLine1VANCsource,
- /* [out] */ unsigned int *activeLine2VANCsource,
- /* [out] */ unsigned int *activeLine3VANCsource);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioInputFormat )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [in] */ BMDAudioConnection_v10_2 audioInputFormat);
-
- HRESULT ( STDMETHODCALLTYPE *GetAudioInputFormat )(
- IDeckLinkConfiguration_v7_6 * This,
- /* [out] */ BMDAudioConnection_v10_2 *audioInputFormat);
-
- END_INTERFACE
- } IDeckLinkConfiguration_v7_6Vtbl;
-
- interface IDeckLinkConfiguration_v7_6
- {
- CONST_VTBL struct IDeckLinkConfiguration_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkConfiguration_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkConfiguration_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkConfiguration_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkConfiguration_v7_6_GetConfigurationValidator(This,configObject) \
- ( (This)->lpVtbl -> GetConfigurationValidator(This,configObject) )
-
-#define IDeckLinkConfiguration_v7_6_WriteConfigurationToPreferences(This) \
- ( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
-
-#define IDeckLinkConfiguration_v7_6_SetVideoOutputFormat(This,videoOutputConnection) \
- ( (This)->lpVtbl -> SetVideoOutputFormat(This,videoOutputConnection) )
-
-#define IDeckLinkConfiguration_v7_6_IsVideoOutputActive(This,videoOutputConnection,active) \
- ( (This)->lpVtbl -> IsVideoOutputActive(This,videoOutputConnection,active) )
-
-#define IDeckLinkConfiguration_v7_6_SetAnalogVideoOutputFlags(This,analogVideoFlags) \
- ( (This)->lpVtbl -> SetAnalogVideoOutputFlags(This,analogVideoFlags) )
-
-#define IDeckLinkConfiguration_v7_6_GetAnalogVideoOutputFlags(This,analogVideoFlags) \
- ( (This)->lpVtbl -> GetAnalogVideoOutputFlags(This,analogVideoFlags) )
-
-#define IDeckLinkConfiguration_v7_6_EnableFieldFlickerRemovalWhenPaused(This,enable) \
- ( (This)->lpVtbl -> EnableFieldFlickerRemovalWhenPaused(This,enable) )
-
-#define IDeckLinkConfiguration_v7_6_IsEnabledFieldFlickerRemovalWhenPaused(This,enabled) \
- ( (This)->lpVtbl -> IsEnabledFieldFlickerRemovalWhenPaused(This,enabled) )
-
-#define IDeckLinkConfiguration_v7_6_Set444And3GBpsVideoOutput(This,enable444VideoOutput,enable3GbsOutput) \
- ( (This)->lpVtbl -> Set444And3GBpsVideoOutput(This,enable444VideoOutput,enable3GbsOutput) )
-
-#define IDeckLinkConfiguration_v7_6_Get444And3GBpsVideoOutput(This,is444VideoOutputEnabled,threeGbsOutputEnabled) \
- ( (This)->lpVtbl -> Get444And3GBpsVideoOutput(This,is444VideoOutputEnabled,threeGbsOutputEnabled) )
-
-#define IDeckLinkConfiguration_v7_6_SetVideoOutputConversionMode(This,conversionMode) \
- ( (This)->lpVtbl -> SetVideoOutputConversionMode(This,conversionMode) )
-
-#define IDeckLinkConfiguration_v7_6_GetVideoOutputConversionMode(This,conversionMode) \
- ( (This)->lpVtbl -> GetVideoOutputConversionMode(This,conversionMode) )
-
-#define IDeckLinkConfiguration_v7_6_Set_HD1080p24_to_HD1080i5994_Conversion(This,enable) \
- ( (This)->lpVtbl -> Set_HD1080p24_to_HD1080i5994_Conversion(This,enable) )
-
-#define IDeckLinkConfiguration_v7_6_Get_HD1080p24_to_HD1080i5994_Conversion(This,enabled) \
- ( (This)->lpVtbl -> Get_HD1080p24_to_HD1080i5994_Conversion(This,enabled) )
-
-#define IDeckLinkConfiguration_v7_6_SetVideoInputFormat(This,videoInputFormat) \
- ( (This)->lpVtbl -> SetVideoInputFormat(This,videoInputFormat) )
-
-#define IDeckLinkConfiguration_v7_6_GetVideoInputFormat(This,videoInputFormat) \
- ( (This)->lpVtbl -> GetVideoInputFormat(This,videoInputFormat) )
-
-#define IDeckLinkConfiguration_v7_6_SetAnalogVideoInputFlags(This,analogVideoFlags) \
- ( (This)->lpVtbl -> SetAnalogVideoInputFlags(This,analogVideoFlags) )
-
-#define IDeckLinkConfiguration_v7_6_GetAnalogVideoInputFlags(This,analogVideoFlags) \
- ( (This)->lpVtbl -> GetAnalogVideoInputFlags(This,analogVideoFlags) )
-
-#define IDeckLinkConfiguration_v7_6_SetVideoInputConversionMode(This,conversionMode) \
- ( (This)->lpVtbl -> SetVideoInputConversionMode(This,conversionMode) )
-
-#define IDeckLinkConfiguration_v7_6_GetVideoInputConversionMode(This,conversionMode) \
- ( (This)->lpVtbl -> GetVideoInputConversionMode(This,conversionMode) )
-
-#define IDeckLinkConfiguration_v7_6_SetBlackVideoOutputDuringCapture(This,blackOutInCapture) \
- ( (This)->lpVtbl -> SetBlackVideoOutputDuringCapture(This,blackOutInCapture) )
-
-#define IDeckLinkConfiguration_v7_6_GetBlackVideoOutputDuringCapture(This,blackOutInCapture) \
- ( (This)->lpVtbl -> GetBlackVideoOutputDuringCapture(This,blackOutInCapture) )
-
-#define IDeckLinkConfiguration_v7_6_Set32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) \
- ( (This)->lpVtbl -> Set32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) )
-
-#define IDeckLinkConfiguration_v7_6_Get32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) \
- ( (This)->lpVtbl -> Get32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) )
-
-#define IDeckLinkConfiguration_v7_6_SetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) \
- ( (This)->lpVtbl -> SetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) )
-
-#define IDeckLinkConfiguration_v7_6_GetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) \
- ( (This)->lpVtbl -> GetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) )
-
-#define IDeckLinkConfiguration_v7_6_SetAudioInputFormat(This,audioInputFormat) \
- ( (This)->lpVtbl -> SetAudioInputFormat(This,audioInputFormat) )
-
-#define IDeckLinkConfiguration_v7_6_GetAudioInputFormat(This,audioInputFormat) \
- ( (This)->lpVtbl -> GetAudioInputFormat(This,audioInputFormat) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoOutputCallback_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoOutputCallback_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("E763A626-4A3C-49D1-BF13-E7AD3692AE52")
- IDeckLinkVideoOutputCallback_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped( void) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoOutputCallback_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoOutputCallback_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoOutputCallback_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoOutputCallback_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
- IDeckLinkVideoOutputCallback_v7_6 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduledPlaybackHasStopped )(
- IDeckLinkVideoOutputCallback_v7_6 * This);
-
- END_INTERFACE
- } IDeckLinkVideoOutputCallback_v7_6Vtbl;
-
- interface IDeckLinkVideoOutputCallback_v7_6
- {
- CONST_VTBL struct IDeckLinkVideoOutputCallback_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoOutputCallback_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoOutputCallback_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoOutputCallback_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoOutputCallback_v7_6_ScheduledFrameCompleted(This,completedFrame,result) \
- ( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
-
-#define IDeckLinkVideoOutputCallback_v7_6_ScheduledPlaybackHasStopped(This) \
- ( (This)->lpVtbl -> ScheduledPlaybackHasStopped(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__
-#define __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInputCallback_v7_6 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInputCallback_v7_6;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("31D28EE7-88B6-4CB1-897A-CDBF79A26414")
- IDeckLinkInputCallback_v7_6 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
- /* [in] */ IDeckLinkVideoInputFrame_v7_6 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInputCallback_v7_6Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInputCallback_v7_6 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInputCallback_v7_6 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInputCallback_v7_6 * This);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
- IDeckLinkInputCallback_v7_6 * This,
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
- IDeckLinkInputCallback_v7_6 * This,
- /* [in] */ IDeckLinkVideoInputFrame_v7_6 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket);
-
- END_INTERFACE
- } IDeckLinkInputCallback_v7_6Vtbl;
-
- interface IDeckLinkInputCallback_v7_6
- {
- CONST_VTBL struct IDeckLinkInputCallback_v7_6Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInputCallback_v7_6_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInputCallback_v7_6_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInputCallback_v7_6_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInputCallback_v7_6_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
- ( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
-
-#define IDeckLinkInputCallback_v7_6_VideoInputFrameArrived(This,videoFrame,audioPacket) \
- ( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__ */
-
-
-EXTERN_C const CLSID CLSID_CDeckLinkGLScreenPreviewHelper_v7_6;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("D398CEE7-4434-4CA3-9BA6-5AE34556B905")
-CDeckLinkGLScreenPreviewHelper_v7_6;
-#endif
-
-EXTERN_C const CLSID CLSID_CDeckLinkVideoConversion_v7_6;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("FFA84F77-73BE-4FB7-B03E-B5E44B9F759B")
-CDeckLinkVideoConversion_v7_6;
-#endif
-
-#ifndef __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__
-#define __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInputCallback_v7_3 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInputCallback_v7_3;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("FD6F311D-4D00-444B-9ED4-1F25B5730AD0")
- IDeckLinkInputCallback_v7_3 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
- /* [in] */ IDeckLinkVideoInputFrame_v7_3 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInputCallback_v7_3Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInputCallback_v7_3 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInputCallback_v7_3 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInputCallback_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
- IDeckLinkInputCallback_v7_3 * This,
- /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
- /* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
- /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
- IDeckLinkInputCallback_v7_3 * This,
- /* [in] */ IDeckLinkVideoInputFrame_v7_3 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket *audioPacket);
-
- END_INTERFACE
- } IDeckLinkInputCallback_v7_3Vtbl;
-
- interface IDeckLinkInputCallback_v7_3
- {
- CONST_VTBL struct IDeckLinkInputCallback_v7_3Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInputCallback_v7_3_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInputCallback_v7_3_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInputCallback_v7_3_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInputCallback_v7_3_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
- ( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
-
-#define IDeckLinkInputCallback_v7_3_VideoInputFrameArrived(This,videoFrame,audioPacket) \
- ( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__
-#define __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__
-
-/* interface IDeckLinkOutput_v7_3 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkOutput_v7_3;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("271C65E3-C323-4344-A30F-D908BCB20AA3")
- IDeckLinkOutput_v7_3 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
- BMDDisplayMode displayMode,
- BMDVideoOutputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
- BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
- /* [out] */ unsigned int *bufferedFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount,
- BMDAudioOutputStreamType streamType) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
- BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
- /* [out] */ BOOL *active) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *elapsedTimeSinceSchedulerBegan) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkOutput_v7_3Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkOutput_v7_3 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkOutput_v7_3 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkOutput_v7_3 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
- IDeckLinkOutput_v7_3 * This,
- BMDDisplayMode displayMode,
- BMDVideoOutputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
- IDeckLinkOutput_v7_3 * This,
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- /* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
- IDeckLinkOutput_v7_3 * This,
- BMDPixelFormat pixelFormat,
- /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
-
- HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkVideoOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
- IDeckLinkOutput_v7_3 * This,
- /* [out] */ unsigned int *bufferedFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
- IDeckLinkOutput_v7_3 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount,
- BMDAudioOutputStreamType streamType);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkOutput_v7_3 * This,
- /* [out] */ unsigned int *bufferedSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
- IDeckLinkOutput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
- IDeckLinkOutput_v7_3 * This,
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
- IDeckLinkOutput_v7_3 * This,
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
- IDeckLinkOutput_v7_3 * This,
- BMDTimeValue stopPlaybackAtTime,
- /* [out] */ BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
- IDeckLinkOutput_v7_3 * This,
- /* [out] */ BOOL *active);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkOutput_v7_3 * This,
- BMDTimeScale desiredTimeScale,
- /* [out] */ BMDTimeValue *elapsedTimeSinceSchedulerBegan);
-
- END_INTERFACE
- } IDeckLinkOutput_v7_3Vtbl;
-
- interface IDeckLinkOutput_v7_3
- {
- CONST_VTBL struct IDeckLinkOutput_v7_3Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkOutput_v7_3_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkOutput_v7_3_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkOutput_v7_3_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkOutput_v7_3_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkOutput_v7_3_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkOutput_v7_3_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkOutput_v7_3_EnableVideoOutput(This,displayMode,flags) \
- ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
-
-#define IDeckLinkOutput_v7_3_DisableVideoOutput(This) \
- ( (This)->lpVtbl -> DisableVideoOutput(This) )
-
-#define IDeckLinkOutput_v7_3_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkOutput_v7_3_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_v7_3_CreateAncillaryData(This,pixelFormat,outBuffer) \
- ( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
-
-#define IDeckLinkOutput_v7_3_DisplayVideoFrameSync(This,theFrame) \
- ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
-
-#define IDeckLinkOutput_v7_3_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
- ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
-
-#define IDeckLinkOutput_v7_3_SetScheduledFrameCompletionCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_3_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
- ( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
-
-#define IDeckLinkOutput_v7_3_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
- ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
-
-#define IDeckLinkOutput_v7_3_DisableAudioOutput(This) \
- ( (This)->lpVtbl -> DisableAudioOutput(This) )
-
-#define IDeckLinkOutput_v7_3_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
- ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_3_BeginAudioPreroll(This) \
- ( (This)->lpVtbl -> BeginAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_3_EndAudioPreroll(This) \
- ( (This)->lpVtbl -> EndAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_3_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
- ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_3_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
-
-#define IDeckLinkOutput_v7_3_FlushBufferedAudioSamples(This) \
- ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
-
-#define IDeckLinkOutput_v7_3_SetAudioCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_3_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
- ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
-
-#define IDeckLinkOutput_v7_3_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
- ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
-
-#define IDeckLinkOutput_v7_3_IsScheduledPlaybackRunning(This,active) \
- ( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
-
-#define IDeckLinkOutput_v7_3_GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_3_INTERFACE_DEFINED__
-#define __IDeckLinkInput_v7_3_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInput_v7_3 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInput_v7_3;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("4973F012-9925-458C-871C-18774CDBBECB")
- IDeckLinkInput_v7_3 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
- /* [out] */ unsigned int *availableFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
- /* [out] */ unsigned int *availableSampleFrameCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkInputCallback_v7_3 *theCallback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInput_v7_3Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInput_v7_3 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInput_v7_3 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkInput_v7_3 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkInput_v7_3 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
- IDeckLinkInput_v7_3 * This,
- /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
- IDeckLinkInput_v7_3 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
- IDeckLinkInput_v7_3 * This,
- /* [out] */ unsigned int *availableFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
- IDeckLinkInput_v7_3 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
- IDeckLinkInput_v7_3 * This,
- /* [out] */ unsigned int *availableSampleFrameCount);
-
- HRESULT ( STDMETHODCALLTYPE *StartStreams )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopStreams )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
- IDeckLinkInput_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkInput_v7_3 * This,
- /* [in] */ IDeckLinkInputCallback_v7_3 *theCallback);
-
- END_INTERFACE
- } IDeckLinkInput_v7_3Vtbl;
-
- interface IDeckLinkInput_v7_3
- {
- CONST_VTBL struct IDeckLinkInput_v7_3Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInput_v7_3_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInput_v7_3_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInput_v7_3_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInput_v7_3_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkInput_v7_3_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkInput_v7_3_SetScreenPreviewCallback(This,previewCallback) \
- ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
-
-#define IDeckLinkInput_v7_3_EnableVideoInput(This,displayMode,pixelFormat,flags) \
- ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
-
-#define IDeckLinkInput_v7_3_DisableVideoInput(This) \
- ( (This)->lpVtbl -> DisableVideoInput(This) )
-
-#define IDeckLinkInput_v7_3_GetAvailableVideoFrameCount(This,availableFrameCount) \
- ( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
-
-#define IDeckLinkInput_v7_3_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkInput_v7_3_DisableAudioInput(This) \
- ( (This)->lpVtbl -> DisableAudioInput(This) )
-
-#define IDeckLinkInput_v7_3_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
- ( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
-
-#define IDeckLinkInput_v7_3_StartStreams(This) \
- ( (This)->lpVtbl -> StartStreams(This) )
-
-#define IDeckLinkInput_v7_3_StopStreams(This) \
- ( (This)->lpVtbl -> StopStreams(This) )
-
-#define IDeckLinkInput_v7_3_PauseStreams(This) \
- ( (This)->lpVtbl -> PauseStreams(This) )
-
-#define IDeckLinkInput_v7_3_FlushStreams(This) \
- ( (This)->lpVtbl -> FlushStreams(This) )
-
-#define IDeckLinkInput_v7_3_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInput_v7_3_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoInputFrame_v7_3 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_3;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("CF317790-2894-11DE-8C30-0800200C9A66")
- IDeckLinkVideoInputFrame_v7_3 : public IDeckLinkVideoFrame_v7_6
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- BMDTimeScale timeScale) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoInputFrame_v7_3Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoInputFrame_v7_3 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoInputFrame_v7_3 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoInputFrame_v7_3 * This,
- /* [out] */ void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
- IDeckLinkVideoInputFrame_v7_3 * This,
- BMDTimecodeFormat format,
- /* [out] */ IDeckLinkTimecode_v7_6 **timecode);
-
- HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
- IDeckLinkVideoInputFrame_v7_3 * This,
- /* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
-
- HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
- IDeckLinkVideoInputFrame_v7_3 * This,
- /* [out] */ BMDTimeValue *frameTime,
- /* [out] */ BMDTimeValue *frameDuration,
- BMDTimeScale timeScale);
-
- END_INTERFACE
- } IDeckLinkVideoInputFrame_v7_3Vtbl;
-
- interface IDeckLinkVideoInputFrame_v7_3
- {
- CONST_VTBL struct IDeckLinkVideoInputFrame_v7_3Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoInputFrame_v7_3_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoInputFrame_v7_3_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoInputFrame_v7_3_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetTimecode(This,format,timecode) \
- ( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
-
-#define IDeckLinkVideoInputFrame_v7_3_GetAncillaryData(This,ancillary) \
- ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
-
-
-#define IDeckLinkVideoInputFrame_v7_3_GetStreamTime(This,frameTime,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayModeIterator_v7_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayModeIterator_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("B28131B6-59AC-4857-B5AC-CD75D5883E2F")
- IDeckLinkDisplayModeIterator_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Next(
- /* [out] */ IDeckLinkDisplayMode_v7_1 **deckLinkDisplayMode) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayModeIterator_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayModeIterator_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayModeIterator_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayModeIterator_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *Next )(
- IDeckLinkDisplayModeIterator_v7_1 * This,
- /* [out] */ IDeckLinkDisplayMode_v7_1 **deckLinkDisplayMode);
-
- END_INTERFACE
- } IDeckLinkDisplayModeIterator_v7_1Vtbl;
-
- interface IDeckLinkDisplayModeIterator_v7_1
- {
- CONST_VTBL struct IDeckLinkDisplayModeIterator_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayModeIterator_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayModeIterator_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayModeIterator_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayModeIterator_v7_1_Next(This,deckLinkDisplayMode) \
- ( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkDisplayMode_v7_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkDisplayMode_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("AF0CD6D5-8376-435E-8433-54F9DD530AC3")
- IDeckLinkDisplayMode_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetName(
- /* [out] */ BSTR *name) = 0;
-
- virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetFrameRate(
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkDisplayMode_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkDisplayMode_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkDisplayMode_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkDisplayMode_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetName )(
- IDeckLinkDisplayMode_v7_1 * This,
- /* [out] */ BSTR *name);
-
- BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
- IDeckLinkDisplayMode_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkDisplayMode_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkDisplayMode_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameRate )(
- IDeckLinkDisplayMode_v7_1 * This,
- /* [out] */ BMDTimeValue *frameDuration,
- /* [out] */ BMDTimeScale *timeScale);
-
- END_INTERFACE
- } IDeckLinkDisplayMode_v7_1Vtbl;
-
- interface IDeckLinkDisplayMode_v7_1
- {
- CONST_VTBL struct IDeckLinkDisplayMode_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkDisplayMode_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkDisplayMode_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkDisplayMode_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkDisplayMode_v7_1_GetName(This,name) \
- ( (This)->lpVtbl -> GetName(This,name) )
-
-#define IDeckLinkDisplayMode_v7_1_GetDisplayMode(This) \
- ( (This)->lpVtbl -> GetDisplayMode(This) )
-
-#define IDeckLinkDisplayMode_v7_1_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkDisplayMode_v7_1_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkDisplayMode_v7_1_GetFrameRate(This,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoFrame_v7_1 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoFrame_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("333F3A10-8C2D-43CF-B79D-46560FEEA1CE")
- IDeckLinkVideoFrame_v7_1 : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
-
- virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
-
- virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
-
- virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- void **buffer) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoFrame_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoFrame_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoFrame_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoFrame_v7_1 * This,
- void **buffer);
-
- END_INTERFACE
- } IDeckLinkVideoFrame_v7_1Vtbl;
-
- interface IDeckLinkVideoFrame_v7_1
- {
- CONST_VTBL struct IDeckLinkVideoFrame_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoFrame_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoFrame_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoFrame_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoFrame_v7_1_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoFrame_v7_1_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoFrame_v7_1_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoFrame_v7_1_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoFrame_v7_1_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoFrame_v7_1_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoInputFrame_v7_1 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("C8B41D95-8848-40EE-9B37-6E3417FB114B")
- IDeckLinkVideoInputFrame_v7_1 : public IDeckLinkVideoFrame_v7_1
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetFrameTime(
- BMDTimeValue *frameTime,
- BMDTimeValue *frameDuration,
- BMDTimeScale timeScale) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoInputFrame_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoInputFrame_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetWidth )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetHeight )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetRowBytes )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
- IDeckLinkVideoInputFrame_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkVideoInputFrame_v7_1 * This,
- void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetFrameTime )(
- IDeckLinkVideoInputFrame_v7_1 * This,
- BMDTimeValue *frameTime,
- BMDTimeValue *frameDuration,
- BMDTimeScale timeScale);
-
- END_INTERFACE
- } IDeckLinkVideoInputFrame_v7_1Vtbl;
-
- interface IDeckLinkVideoInputFrame_v7_1
- {
- CONST_VTBL struct IDeckLinkVideoInputFrame_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoInputFrame_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoInputFrame_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoInputFrame_v7_1_GetWidth(This) \
- ( (This)->lpVtbl -> GetWidth(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_GetHeight(This) \
- ( (This)->lpVtbl -> GetHeight(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_GetRowBytes(This) \
- ( (This)->lpVtbl -> GetRowBytes(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_GetPixelFormat(This) \
- ( (This)->lpVtbl -> GetPixelFormat(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_GetFlags(This) \
- ( (This)->lpVtbl -> GetFlags(This) )
-
-#define IDeckLinkVideoInputFrame_v7_1_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-
-#define IDeckLinkVideoInputFrame_v7_1_GetFrameTime(This,frameTime,frameDuration,timeScale) \
- ( (This)->lpVtbl -> GetFrameTime(This,frameTime,frameDuration,timeScale) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkAudioInputPacket_v7_1 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkAudioInputPacket_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("C86DE4F6-A29F-42E3-AB3A-1363E29F0788")
- IDeckLinkAudioInputPacket_v7_1 : public IUnknown
- {
- public:
- virtual long STDMETHODCALLTYPE GetSampleCount( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBytes(
- void **buffer) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAudioPacketTime(
- BMDTimeValue *packetTime,
- BMDTimeScale timeScale) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkAudioInputPacket_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkAudioInputPacket_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkAudioInputPacket_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkAudioInputPacket_v7_1 * This);
-
- long ( STDMETHODCALLTYPE *GetSampleCount )(
- IDeckLinkAudioInputPacket_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetBytes )(
- IDeckLinkAudioInputPacket_v7_1 * This,
- void **buffer);
-
- HRESULT ( STDMETHODCALLTYPE *GetAudioPacketTime )(
- IDeckLinkAudioInputPacket_v7_1 * This,
- BMDTimeValue *packetTime,
- BMDTimeScale timeScale);
-
- END_INTERFACE
- } IDeckLinkAudioInputPacket_v7_1Vtbl;
-
- interface IDeckLinkAudioInputPacket_v7_1
- {
- CONST_VTBL struct IDeckLinkAudioInputPacket_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkAudioInputPacket_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkAudioInputPacket_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkAudioInputPacket_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkAudioInputPacket_v7_1_GetSampleCount(This) \
- ( (This)->lpVtbl -> GetSampleCount(This) )
-
-#define IDeckLinkAudioInputPacket_v7_1_GetBytes(This,buffer) \
- ( (This)->lpVtbl -> GetBytes(This,buffer) )
-
-#define IDeckLinkAudioInputPacket_v7_1_GetAudioPacketTime(This,packetTime,timeScale) \
- ( (This)->lpVtbl -> GetAudioPacketTime(This,packetTime,timeScale) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkVideoOutputCallback_v7_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkVideoOutputCallback_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("EBD01AFA-E4B0-49C6-A01D-EDB9D1B55FD9")
- IDeckLinkVideoOutputCallback_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
- /* [in] */ IDeckLinkVideoFrame_v7_1 *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkVideoOutputCallback_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkVideoOutputCallback_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkVideoOutputCallback_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkVideoOutputCallback_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
- IDeckLinkVideoOutputCallback_v7_1 * This,
- /* [in] */ IDeckLinkVideoFrame_v7_1 *completedFrame,
- /* [in] */ BMDOutputFrameCompletionResult result);
-
- END_INTERFACE
- } IDeckLinkVideoOutputCallback_v7_1Vtbl;
-
- interface IDeckLinkVideoOutputCallback_v7_1
- {
- CONST_VTBL struct IDeckLinkVideoOutputCallback_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkVideoOutputCallback_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkVideoOutputCallback_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkVideoOutputCallback_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkVideoOutputCallback_v7_1_ScheduledFrameCompleted(This,completedFrame,result) \
- ( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInputCallback_v7_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInputCallback_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("7F94F328-5ED4-4E9F-9729-76A86BDC99CC")
- IDeckLinkInputCallback_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
- /* [in] */ IDeckLinkVideoInputFrame_v7_1 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket_v7_1 *audioPacket) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInputCallback_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInputCallback_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInputCallback_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInputCallback_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
- IDeckLinkInputCallback_v7_1 * This,
- /* [in] */ IDeckLinkVideoInputFrame_v7_1 *videoFrame,
- /* [in] */ IDeckLinkAudioInputPacket_v7_1 *audioPacket);
-
- END_INTERFACE
- } IDeckLinkInputCallback_v7_1Vtbl;
-
- interface IDeckLinkInputCallback_v7_1
- {
- CONST_VTBL struct IDeckLinkInputCallback_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInputCallback_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInputCallback_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInputCallback_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInputCallback_v7_1_VideoInputFrameArrived(This,videoFrame,audioPacket) \
- ( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkOutput_v7_1 */
-/* [helpstring][local][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkOutput_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("AE5B3E9B-4E1E-4535-B6E8-480FF52F6CE5")
- IDeckLinkOutput_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
- BMDDisplayMode displayMode) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- IDeckLinkVideoFrame_v7_1 **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateVideoFrameFromBuffer(
- void *buffer,
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- IDeckLinkVideoFrame_v7_1 **outFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
- IDeckLinkVideoFrame_v7_1 *theFrame) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
- IDeckLinkVideoFrame_v7_1 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
- /* [in] */ IDeckLinkVideoOutputCallback_v7_1 *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
- void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
- void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
- BMDTimeValue stopPlaybackAtTime,
- BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
- BMDTimeScale desiredTimeScale,
- BMDTimeValue *elapsedTimeSinceSchedulerBegan) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkOutput_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkOutput_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkOutput_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkOutput_v7_1 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkOutput_v7_1 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
- IDeckLinkOutput_v7_1 * This,
- BMDDisplayMode displayMode);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
- IDeckLinkOutput_v7_1 * This,
- /* [in] */ IDeckLinkMemoryAllocator *theAllocator);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
- IDeckLinkOutput_v7_1 * This,
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- IDeckLinkVideoFrame_v7_1 **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *CreateVideoFrameFromBuffer )(
- IDeckLinkOutput_v7_1 * This,
- void *buffer,
- int width,
- int height,
- int rowBytes,
- BMDPixelFormat pixelFormat,
- BMDFrameFlags flags,
- IDeckLinkVideoFrame_v7_1 **outFrame);
-
- HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
- IDeckLinkOutput_v7_1 * This,
- IDeckLinkVideoFrame_v7_1 *theFrame);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
- IDeckLinkOutput_v7_1 * This,
- IDeckLinkVideoFrame_v7_1 *theFrame,
- BMDTimeValue displayTime,
- BMDTimeValue displayDuration,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
- IDeckLinkOutput_v7_1 * This,
- /* [in] */ IDeckLinkVideoOutputCallback_v7_1 *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
- IDeckLinkOutput_v7_1 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
- IDeckLinkOutput_v7_1 * This,
- void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
- IDeckLinkOutput_v7_1 * This,
- void *buffer,
- unsigned int sampleFrameCount,
- BMDTimeValue streamTime,
- BMDTimeScale timeScale,
- /* [out] */ unsigned int *sampleFramesWritten);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkOutput_v7_1 * This,
- /* [out] */ unsigned int *bufferedSampleCount);
-
- HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
- IDeckLinkOutput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
- IDeckLinkOutput_v7_1 * This,
- /* [in] */ IDeckLinkAudioOutputCallback *theCallback);
-
- HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
- IDeckLinkOutput_v7_1 * This,
- BMDTimeValue playbackStartTime,
- BMDTimeScale timeScale,
- double playbackSpeed);
-
- HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
- IDeckLinkOutput_v7_1 * This,
- BMDTimeValue stopPlaybackAtTime,
- BMDTimeValue *actualStopTime,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
- IDeckLinkOutput_v7_1 * This,
- BMDTimeScale desiredTimeScale,
- BMDTimeValue *elapsedTimeSinceSchedulerBegan);
-
- END_INTERFACE
- } IDeckLinkOutput_v7_1Vtbl;
-
- interface IDeckLinkOutput_v7_1
- {
- CONST_VTBL struct IDeckLinkOutput_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkOutput_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkOutput_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkOutput_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkOutput_v7_1_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkOutput_v7_1_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkOutput_v7_1_EnableVideoOutput(This,displayMode) \
- ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode) )
-
-#define IDeckLinkOutput_v7_1_DisableVideoOutput(This) \
- ( (This)->lpVtbl -> DisableVideoOutput(This) )
-
-#define IDeckLinkOutput_v7_1_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
- ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
-
-#define IDeckLinkOutput_v7_1_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_v7_1_CreateVideoFrameFromBuffer(This,buffer,width,height,rowBytes,pixelFormat,flags,outFrame) \
- ( (This)->lpVtbl -> CreateVideoFrameFromBuffer(This,buffer,width,height,rowBytes,pixelFormat,flags,outFrame) )
-
-#define IDeckLinkOutput_v7_1_DisplayVideoFrameSync(This,theFrame) \
- ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
-
-#define IDeckLinkOutput_v7_1_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
- ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
-
-#define IDeckLinkOutput_v7_1_SetScheduledFrameCompletionCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_1_EnableAudioOutput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkOutput_v7_1_DisableAudioOutput(This) \
- ( (This)->lpVtbl -> DisableAudioOutput(This) )
-
-#define IDeckLinkOutput_v7_1_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
- ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_1_BeginAudioPreroll(This) \
- ( (This)->lpVtbl -> BeginAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_1_EndAudioPreroll(This) \
- ( (This)->lpVtbl -> EndAudioPreroll(This) )
-
-#define IDeckLinkOutput_v7_1_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
- ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
-
-#define IDeckLinkOutput_v7_1_GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) )
-
-#define IDeckLinkOutput_v7_1_FlushBufferedAudioSamples(This) \
- ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
-
-#define IDeckLinkOutput_v7_1_SetAudioCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
-
-#define IDeckLinkOutput_v7_1_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
- ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
-
-#define IDeckLinkOutput_v7_1_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
- ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
-
-#define IDeckLinkOutput_v7_1_GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) \
- ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__ */
-
-
-#ifndef __IDeckLinkInput_v7_1_INTERFACE_DEFINED__
-#define __IDeckLinkInput_v7_1_INTERFACE_DEFINED__
-
-/* interface IDeckLinkInput_v7_1 */
-/* [helpstring][uuid][object] */
-
-
-EXTERN_C const IID IID_IDeckLinkInput_v7_1;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("2B54EDEF-5B32-429F-BA11-BB990596EACD")
- IDeckLinkInput_v7_1 : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
- /* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ReadAudioSamples(
- void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesRead,
- /* [out] */ BMDTimeValue *audioPacketTime,
- BMDTimeScale timeScale) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
- /* [out] */ unsigned int *bufferedSampleCount) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetCallback(
- /* [in] */ IDeckLinkInputCallback_v7_1 *theCallback) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct IDeckLinkInput_v7_1Vtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IDeckLinkInput_v7_1 * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IDeckLinkInput_v7_1 * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
- IDeckLinkInput_v7_1 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- /* [out] */ BMDDisplayModeSupport *result);
-
- HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
- IDeckLinkInput_v7_1 * This,
- /* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator);
-
- HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
- IDeckLinkInput_v7_1 * This,
- BMDDisplayMode displayMode,
- BMDPixelFormat pixelFormat,
- BMDVideoInputFlags flags);
-
- HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
- IDeckLinkInput_v7_1 * This,
- BMDAudioSampleRate sampleRate,
- BMDAudioSampleType sampleType,
- unsigned int channelCount);
-
- HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *ReadAudioSamples )(
- IDeckLinkInput_v7_1 * This,
- void *buffer,
- unsigned int sampleFrameCount,
- /* [out] */ unsigned int *sampleFramesRead,
- /* [out] */ BMDTimeValue *audioPacketTime,
- BMDTimeScale timeScale);
-
- HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
- IDeckLinkInput_v7_1 * This,
- /* [out] */ unsigned int *bufferedSampleCount);
-
- HRESULT ( STDMETHODCALLTYPE *StartStreams )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *StopStreams )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
- IDeckLinkInput_v7_1 * This);
-
- HRESULT ( STDMETHODCALLTYPE *SetCallback )(
- IDeckLinkInput_v7_1 * This,
- /* [in] */ IDeckLinkInputCallback_v7_1 *theCallback);
-
- END_INTERFACE
- } IDeckLinkInput_v7_1Vtbl;
-
- interface IDeckLinkInput_v7_1
- {
- CONST_VTBL struct IDeckLinkInput_v7_1Vtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define IDeckLinkInput_v7_1_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define IDeckLinkInput_v7_1_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define IDeckLinkInput_v7_1_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define IDeckLinkInput_v7_1_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
- ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
-
-#define IDeckLinkInput_v7_1_GetDisplayModeIterator(This,iterator) \
- ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
-
-#define IDeckLinkInput_v7_1_EnableVideoInput(This,displayMode,pixelFormat,flags) \
- ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
-
-#define IDeckLinkInput_v7_1_DisableVideoInput(This) \
- ( (This)->lpVtbl -> DisableVideoInput(This) )
-
-#define IDeckLinkInput_v7_1_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
- ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
-
-#define IDeckLinkInput_v7_1_DisableAudioInput(This) \
- ( (This)->lpVtbl -> DisableAudioInput(This) )
-
-#define IDeckLinkInput_v7_1_ReadAudioSamples(This,buffer,sampleFrameCount,sampleFramesRead,audioPacketTime,timeScale) \
- ( (This)->lpVtbl -> ReadAudioSamples(This,buffer,sampleFrameCount,sampleFramesRead,audioPacketTime,timeScale) )
-
-#define IDeckLinkInput_v7_1_GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) \
- ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) )
-
-#define IDeckLinkInput_v7_1_StartStreams(This) \
- ( (This)->lpVtbl -> StartStreams(This) )
-
-#define IDeckLinkInput_v7_1_StopStreams(This) \
- ( (This)->lpVtbl -> StopStreams(This) )
-
-#define IDeckLinkInput_v7_1_PauseStreams(This) \
- ( (This)->lpVtbl -> PauseStreams(This) )
-
-#define IDeckLinkInput_v7_1_SetCallback(This,theCallback) \
- ( (This)->lpVtbl -> SetCallback(This,theCallback) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IDeckLinkInput_v7_1_INTERFACE_DEFINED__ */
-
-#endif /* __DeckLinkAPI_LIBRARY_DEFINED__ */
-
-/* Additional Prototypes for ALL interfaces */
-
-/* end of Additional Prototypes */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
diff --git a/intern/decklink/win/DeckLinkAPI_i.c b/intern/decklink/win/DeckLinkAPI_i.c
deleted file mode 100644
index a13d486aae8..00000000000
--- a/intern/decklink/win/DeckLinkAPI_i.c
+++ /dev/null
@@ -1,343 +0,0 @@
-
-
-/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */
-
-/* link this file in with the server and any clients */
-
-
- /* File created by MIDL compiler version 8.00.0603 */
-/* at Mon Apr 13 20:57:05 2015
- */
-/* Compiler settings for ..\..\include\DeckLinkAPI.idl:
- Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.00.0603
- protocol : dce , ms_ext, c_ext, robust
- error checks: allocation ref bounds_check enum stub_data
- VC __declspec() decoration level:
- __declspec(uuid()), __declspec(selectany), __declspec(novtable)
- DECLSPEC_UUID(), MIDL_INTERFACE()
-*/
-/* @@MIDL_FILE_HEADING( ) */
-
-#pragma warning( disable: 4049 ) /* more than 64k source lines */
-
-
-#ifdef __cplusplus
-extern "C"{
-#endif
-
-
-#include <rpc.h>
-#include <rpcndr.h>
-
-#ifdef _MIDL_USE_GUIDDEF_
-
-#ifndef INITGUID
-#define INITGUID
-#include <guiddef.h>
-#undef INITGUID
-#else
-#include <guiddef.h>
-#endif
-
-#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
- DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)
-
-#else // !_MIDL_USE_GUIDDEF_
-
-#ifndef __IID_DEFINED__
-#define __IID_DEFINED__
-
-typedef struct _IID
-{
- unsigned long x;
- unsigned short s1;
- unsigned short s2;
- unsigned char c[8];
-} IID;
-
-#endif // __IID_DEFINED__
-
-#ifndef CLSID_DEFINED
-#define CLSID_DEFINED
-typedef IID CLSID;
-#endif // CLSID_DEFINED
-
-#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
- const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
-
-#endif !_MIDL_USE_GUIDDEF_
-
-MIDL_DEFINE_GUID(IID, LIBID_DeckLinkAPI,0xD864517A,0xEDD5,0x466D,0x86,0x7D,0xC8,0x19,0xF1,0xC0,0x52,0xBB);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkTimecode,0xBC6CFBD3,0x8317,0x4325,0xAC,0x1C,0x12,0x16,0x39,0x1E,0x93,0x40);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayModeIterator,0x9C88499F,0xF601,0x4021,0xB8,0x0B,0x03,0x2E,0x4E,0xB4,0x1C,0x35);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayMode,0x3EB2C1AB,0x0A3D,0x4523,0xA3,0xAD,0xF4,0x0D,0x7F,0xB1,0x4E,0x78);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLink,0xC418FBDD,0x0587,0x48ED,0x8F,0xE5,0x64,0x0F,0x0A,0x14,0xAF,0x91);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkConfiguration,0x1E69FCF6,0x4203,0x4936,0x80,0x76,0x2A,0x9F,0x4C,0xFD,0x50,0xCB);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeckControlStatusCallback,0x53436FFB,0xB434,0x4906,0xBA,0xDC,0xAE,0x30,0x60,0xFF,0xE8,0xEF);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeckControl,0x8E1C3ACE,0x19C7,0x4E00,0x8B,0x92,0xD8,0x04,0x31,0xD9,0x58,0xBE);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingDeviceNotificationCallback,0xF9531D64,0x3305,0x4B29,0xA3,0x87,0x7F,0x74,0xBB,0x0D,0x0E,0x84);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingH264InputCallback,0x823C475F,0x55AE,0x46F9,0x89,0x0C,0x53,0x7C,0xC5,0xCE,0xDC,0xCA);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingDiscovery,0x2C837444,0xF989,0x4D87,0x90,0x1A,0x47,0xC8,0xA3,0x6D,0x09,0x6D);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingVideoEncodingMode,0x1AB8035B,0xCD13,0x458D,0xB6,0xDF,0x5E,0x8F,0x7C,0x21,0x41,0xD9);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingMutableVideoEncodingMode,0x19BF7D90,0x1E0A,0x400D,0xB2,0xC6,0xFF,0xC4,0xE7,0x8A,0xD4,0x9D);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingVideoEncodingModePresetIterator,0x7AC731A3,0xC950,0x4AD0,0x80,0x4A,0x83,0x77,0xAA,0x51,0xC6,0xC4);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingDeviceInput,0x24B6B6EC,0x1727,0x44BB,0x98,0x18,0x34,0xFF,0x08,0x6A,0xCF,0x98);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingH264NALPacket,0xE260E955,0x14BE,0x4395,0x97,0x75,0x9F,0x02,0xCC,0x0A,0x9D,0x89);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingAudioPacket,0xD9EB5902,0x1AD2,0x43F4,0x9E,0x2C,0x3C,0xFA,0x50,0xB5,0xEE,0x19);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingMPEG2TSPacket,0x91810D1C,0x4FB3,0x4AAA,0xAE,0x56,0xFA,0x30,0x1D,0x3D,0xFA,0x4C);
-
-
-MIDL_DEFINE_GUID(IID, IID_IBMDStreamingH264NALParser,0x5867F18C,0x5BFA,0x4CCC,0xB2,0xA7,0x9D,0xFD,0x14,0x04,0x17,0xD2);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CBMDStreamingDiscovery,0x0CAA31F6,0x8A26,0x40B0,0x86,0xA4,0xBF,0x58,0xDC,0xCA,0x71,0x0C);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CBMDStreamingH264NALParser,0x7753EFBD,0x951C,0x407C,0x97,0xA5,0x23,0xC7,0x37,0xB7,0x3B,0x52);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoOutputCallback,0x20AA5225,0x1958,0x47CB,0x82,0x0B,0x80,0xA8,0xD5,0x21,0xA6,0xEE);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInputCallback,0xDD04E5EC,0x7415,0x42AB,0xAE,0x4A,0xE8,0x0C,0x4D,0xFC,0x04,0x4A);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkMemoryAllocator,0xB36EB6E7,0x9D29,0x4AA8,0x92,0xEF,0x84,0x3B,0x87,0xA2,0x89,0xE8);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkAudioOutputCallback,0x403C681B,0x7F46,0x4A12,0xB9,0x93,0x2B,0xB1,0x27,0x08,0x4E,0xE6);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkIterator,0x50FB36CD,0x3063,0x4B73,0xBD,0xBB,0x95,0x80,0x87,0xF2,0xD8,0xBA);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkAPIInformation,0x7BEA3C68,0x730D,0x4322,0xAF,0x34,0x8A,0x71,0x52,0xB5,0x32,0xA4);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkOutput,0xCC5C8A6E,0x3F2F,0x4B3A,0x87,0xEA,0xFD,0x78,0xAF,0x30,0x05,0x64);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInput,0xAF22762B,0xDFAC,0x4846,0xAA,0x79,0xFA,0x88,0x83,0x56,0x09,0x95);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoFrame,0x3F716FE0,0xF023,0x4111,0xBE,0x5D,0xEF,0x44,0x14,0xC0,0x5B,0x17);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkMutableVideoFrame,0x69E2639F,0x40DA,0x4E19,0xB6,0xF2,0x20,0xAC,0xE8,0x15,0xC3,0x90);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoFrame3DExtensions,0xDA0F7E4A,0xEDC7,0x48A8,0x9C,0xDD,0x2D,0xB5,0x1C,0x72,0x9C,0xD7);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoInputFrame,0x05CFE374,0x537C,0x4094,0x9A,0x57,0x68,0x05,0x25,0x11,0x8F,0x44);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoFrameAncillary,0x732E723C,0xD1A4,0x4E29,0x9E,0x8E,0x4A,0x88,0x79,0x7A,0x00,0x04);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkAudioInputPacket,0xE43D5870,0x2894,0x11DE,0x8C,0x30,0x08,0x00,0x20,0x0C,0x9A,0x66);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkScreenPreviewCallback,0xB1D3F49A,0x85FE,0x4C5D,0x95,0xC8,0x0B,0x5D,0x5D,0xCC,0xD4,0x38);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkGLScreenPreviewHelper,0x504E2209,0xCAC7,0x4C1A,0x9F,0xB4,0xC5,0xBB,0x62,0x74,0xD2,0x2F);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDX9ScreenPreviewHelper,0x2094B522,0xD1A1,0x40C0,0x9A,0xC7,0x1C,0x01,0x22,0x18,0xEF,0x02);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkNotificationCallback,0xb002a1ec,0x070d,0x4288,0x82,0x89,0xbd,0x5d,0x36,0xe5,0xff,0x0d);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkNotification,0x0a1fb207,0xe215,0x441b,0x9b,0x19,0x6f,0xa1,0x57,0x59,0x46,0xc5);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkAttributes,0xABC11843,0xD966,0x44CB,0x96,0xE2,0xA1,0xCB,0x5D,0x31,0x35,0xC4);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkKeyer,0x89AFCAF5,0x65F8,0x421E,0x98,0xF7,0x96,0xFE,0x5F,0x5B,0xFB,0xA3);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoConversion,0x3BBCB8A2,0xDA2C,0x42D9,0xB5,0xD8,0x88,0x08,0x36,0x44,0xE9,0x9A);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeviceNotificationCallback,0x4997053B,0x0ADF,0x4CC8,0xAC,0x70,0x7A,0x50,0xC4,0xBE,0x72,0x8F);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDiscovery,0xCDBF631C,0xBC76,0x45FA,0xB4,0x4D,0xC5,0x50,0x59,0xBC,0x61,0x01);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkIterator,0x1F2E109A,0x8F4F,0x49E4,0x92,0x03,0x13,0x55,0x95,0xCB,0x6F,0xA5);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkAPIInformation,0x263CA19F,0xED09,0x482E,0x9F,0x9D,0x84,0x00,0x57,0x83,0xA2,0x37);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkGLScreenPreviewHelper,0xF63E77C7,0xB655,0x4A4A,0x9A,0xD0,0x3C,0xA8,0x5D,0x39,0x43,0x43);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkDX9ScreenPreviewHelper,0xCC010023,0xE01D,0x4525,0x9D,0x59,0x80,0xC8,0xAB,0x3D,0xC7,0xA0);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkVideoConversion,0x7DBBBB11,0x5B7B,0x467D,0xAE,0xA4,0xCE,0xA4,0x68,0xFD,0x36,0x8C);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkDiscovery,0x1073A05C,0xD885,0x47E9,0xB3,0xC6,0x12,0x9B,0x3F,0x9F,0x64,0x8B);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkConfiguration_v10_2,0xC679A35B,0x610C,0x4D09,0xB7,0x48,0x1D,0x04,0x78,0x10,0x0F,0xC0);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkOutput_v9_9,0xA3EF0963,0x0862,0x44ED,0x92,0xA9,0xEE,0x89,0xAB,0xF4,0x31,0xC7);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInput_v9_2,0x6D40EF78,0x28B9,0x4E21,0x99,0x0D,0x95,0xBB,0x77,0x50,0xA0,0x4F);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeckControlStatusCallback_v8_1,0xE5F693C1,0x4283,0x4716,0xB1,0x8F,0xC1,0x43,0x15,0x21,0x95,0x5B);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeckControl_v8_1,0x522A9E39,0x0F3C,0x4742,0x94,0xEE,0xD8,0x0D,0xE3,0x35,0xDA,0x1D);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLink_v8_0,0x62BFF75D,0x6569,0x4E55,0x8D,0x4D,0x66,0xAA,0x03,0x82,0x9A,0xBC);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkIterator_v8_0,0x74E936FC,0xCC28,0x4A67,0x81,0xA0,0x1E,0x94,0xE5,0x2D,0x4E,0x69);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkIterator_v8_0,0xD9EDA3B3,0x2887,0x41FA,0xB7,0x24,0x01,0x7C,0xF1,0xEB,0x1D,0x37);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDeckControl_v7_9,0xA4D81043,0x0619,0x42B7,0x8E,0xD6,0x60,0x2D,0x29,0x04,0x1D,0xF7);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayModeIterator_v7_6,0x455D741F,0x1779,0x4800,0x86,0xF5,0x0B,0x5D,0x13,0xD7,0x97,0x51);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayMode_v7_6,0x87451E84,0x2B7E,0x439E,0xA6,0x29,0x43,0x93,0xEA,0x4A,0x85,0x50);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkOutput_v7_6,0x29228142,0xEB8C,0x4141,0xA6,0x21,0xF7,0x40,0x26,0x45,0x09,0x55);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInput_v7_6,0x300C135A,0x9F43,0x48E2,0x99,0x06,0x6D,0x79,0x11,0xD9,0x3C,0xF1);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkTimecode_v7_6,0xEFB9BCA6,0xA521,0x44F7,0xBD,0x69,0x23,0x32,0xF2,0x4D,0x9E,0xE6);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoFrame_v7_6,0xA8D8238E,0x6B18,0x4196,0x99,0xE1,0x5A,0xF7,0x17,0xB8,0x3D,0x32);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkMutableVideoFrame_v7_6,0x46FCEE00,0xB4E6,0x43D0,0x91,0xC0,0x02,0x3A,0x7F,0xCE,0xB3,0x4F);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoInputFrame_v7_6,0x9A74FA41,0xAE9F,0x47AC,0x8C,0xF4,0x01,0xF4,0x2D,0xD5,0x99,0x65);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkScreenPreviewCallback_v7_6,0x373F499D,0x4B4D,0x4518,0xAD,0x22,0x63,0x54,0xE5,0xA5,0x82,0x5E);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkGLScreenPreviewHelper_v7_6,0xBA575CD9,0xA15E,0x497B,0xB2,0xC2,0xF9,0xAF,0xE7,0xBE,0x4E,0xBA);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoConversion_v7_6,0x3EB504C9,0xF97D,0x40FE,0xA1,0x58,0xD4,0x07,0xD4,0x8C,0xB5,0x3B);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkConfiguration_v7_6,0xB8EAD569,0xB764,0x47F0,0xA7,0x3F,0xAE,0x40,0xDF,0x6C,0xBF,0x10);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoOutputCallback_v7_6,0xE763A626,0x4A3C,0x49D1,0xBF,0x13,0xE7,0xAD,0x36,0x92,0xAE,0x52);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInputCallback_v7_6,0x31D28EE7,0x88B6,0x4CB1,0x89,0x7A,0xCD,0xBF,0x79,0xA2,0x64,0x14);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkGLScreenPreviewHelper_v7_6,0xD398CEE7,0x4434,0x4CA3,0x9B,0xA6,0x5A,0xE3,0x45,0x56,0xB9,0x05);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CDeckLinkVideoConversion_v7_6,0xFFA84F77,0x73BE,0x4FB7,0xB0,0x3E,0xB5,0xE4,0x4B,0x9F,0x75,0x9B);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInputCallback_v7_3,0xFD6F311D,0x4D00,0x444B,0x9E,0xD4,0x1F,0x25,0xB5,0x73,0x0A,0xD0);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkOutput_v7_3,0x271C65E3,0xC323,0x4344,0xA3,0x0F,0xD9,0x08,0xBC,0xB2,0x0A,0xA3);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInput_v7_3,0x4973F012,0x9925,0x458C,0x87,0x1C,0x18,0x77,0x4C,0xDB,0xBE,0xCB);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoInputFrame_v7_3,0xCF317790,0x2894,0x11DE,0x8C,0x30,0x08,0x00,0x20,0x0C,0x9A,0x66);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayModeIterator_v7_1,0xB28131B6,0x59AC,0x4857,0xB5,0xAC,0xCD,0x75,0xD5,0x88,0x3E,0x2F);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkDisplayMode_v7_1,0xAF0CD6D5,0x8376,0x435E,0x84,0x33,0x54,0xF9,0xDD,0x53,0x0A,0xC3);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoFrame_v7_1,0x333F3A10,0x8C2D,0x43CF,0xB7,0x9D,0x46,0x56,0x0F,0xEE,0xA1,0xCE);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoInputFrame_v7_1,0xC8B41D95,0x8848,0x40EE,0x9B,0x37,0x6E,0x34,0x17,0xFB,0x11,0x4B);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkAudioInputPacket_v7_1,0xC86DE4F6,0xA29F,0x42E3,0xAB,0x3A,0x13,0x63,0xE2,0x9F,0x07,0x88);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkVideoOutputCallback_v7_1,0xEBD01AFA,0xE4B0,0x49C6,0xA0,0x1D,0xED,0xB9,0xD1,0xB5,0x5F,0xD9);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInputCallback_v7_1,0x7F94F328,0x5ED4,0x4E9F,0x97,0x29,0x76,0xA8,0x6B,0xDC,0x99,0xCC);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkOutput_v7_1,0xAE5B3E9B,0x4E1E,0x4535,0xB6,0xE8,0x48,0x0F,0xF5,0x2F,0x6C,0xE5);
-
-
-MIDL_DEFINE_GUID(IID, IID_IDeckLinkInput_v7_1,0x2B54EDEF,0x5B32,0x429F,0xBA,0x11,0xBB,0x99,0x05,0x96,0xEA,0xCD);
-
-#undef MIDL_DEFINE_GUID
-
-#ifdef __cplusplus
-}
-#endif
-
-
-
diff --git a/intern/moto/CMakeLists.txt b/intern/moto/CMakeLists.txt
deleted file mode 100644
index d17181c6809..00000000000
--- a/intern/moto/CMakeLists.txt
+++ /dev/null
@@ -1,77 +0,0 @@
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-#
-# The Original Code is Copyright (C) 2006, Blender Foundation
-# All rights reserved.
-#
-# The Original Code is: all of this file.
-#
-# Contributor(s): Jacques Beaurain.
-#
-# ***** END GPL LICENSE BLOCK *****
-
-set(INC
- include
-)
-
-set(INC_SYS
-
-)
-
-set(SRC
- intern/MT_Assert.cpp
- intern/MT_CmMatrix4x4.cpp
- intern/MT_Matrix3x3.cpp
- intern/MT_Matrix4x4.cpp
- intern/MT_Point3.cpp
- intern/MT_Quaternion.cpp
- intern/MT_Transform.cpp
- intern/MT_Vector2.cpp
- intern/MT_Vector3.cpp
- intern/MT_Vector4.cpp
- intern/MT_random.cpp
-
- include/MT_CmMatrix4x4.h
- include/MT_Matrix3x3.h
- include/MT_Matrix4x4.h
- include/MT_MinMax.h
- include/MT_Optimize.h
- include/MT_Point2.h
- include/MT_Point3.h
- include/MT_Quaternion.h
- include/MT_Scalar.h
- include/MT_Stream.h
- include/MT_Transform.h
- include/MT_Tuple2.h
- include/MT_Tuple3.h
- include/MT_Tuple4.h
- include/MT_Vector2.h
- include/MT_Vector3.h
- include/MT_Vector4.h
- include/MT_assert.h
- include/MT_random.h
-
- include/MT_Matrix3x3.inl
- include/MT_Matrix4x4.inl
- include/MT_Point2.inl
- include/MT_Point3.inl
- include/MT_Quaternion.inl
- include/MT_Vector2.inl
- include/MT_Vector3.inl
- include/MT_Vector4.inl
-)
-
-blender_add_lib(bf_intern_moto "${SRC}" "${INC}" "${INC_SYS}")
diff --git a/intern/moto/include/MT_CmMatrix4x4.h b/intern/moto/include/MT_CmMatrix4x4.h
deleted file mode 100644
index 53fdd41fb28..00000000000
--- a/intern/moto/include/MT_CmMatrix4x4.h
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_CmMatrix4x4.h
- * \ingroup moto
- */
-
-
-#ifndef INCLUDED_MT_CmMatrix4x4
-#define INCLUDED_MT_CmMatrix4x4
-
-/**
- * A 4x4 matrix. This is an OpenGl style matrix (column major) meaning
- * that the vector {m[0][0],m[0][1],m[0][2],m[0][3]} is the first column of
- * the matrix , the same as what you get if you transform {1,0,0,0}.
- * This makes it easy to transform stuff to OpenGl. Please note that the
- * the other MoTo matrices are row major.
- *
- * This class should be deprecated in favour of the more consistent
- * MT_Matrix4x4. Please do not start using this class.
- */
-
-#include "MT_Scalar.h"
-
-class MT_Point3;
-class MT_Vector3;
-
-class MT_CmMatrix4x4
-{
-
-public :
-
- MT_CmMatrix4x4(
- const MT_Scalar value[4][4]
- );
-
- MT_CmMatrix4x4(
- );
-
-
- MT_CmMatrix4x4(
- const MT_Scalar value[16]
- );
-
- MT_CmMatrix4x4(
- const MT_CmMatrix4x4 & other
- );
-
- MT_CmMatrix4x4(
- const MT_Point3& orig,
- const MT_Vector3& dir,
- const MT_Vector3 up
- );
-
- void
- Identity(
- );
-
- void
- SetMatrix(
- const MT_CmMatrix4x4 & other
- );
-
- MT_Scalar*
- getPointer(
- );
-
- const
- MT_Scalar*
- getPointer(
- ) const;
-
- void
- setElem(
- int pos,
- MT_Scalar newvalue
- );
-
- MT_Vector3
- GetRight(
- ) const;
-
- MT_Vector3
- GetUp(
- ) const;
-
- MT_Vector3
- GetDir(
- ) const;
-
- MT_Point3
- GetPos(
- ) const;
-
- void
- SetPos(
- const MT_Vector3 & v
- );
-
- MT_Scalar&
- operator (
- ) (int row,int col) { return m_V[col][row]; }
-
- static
- MT_CmMatrix4x4
- Perspective(
- MT_Scalar inLeft,
- MT_Scalar inRight,
- MT_Scalar inBottom,
- MT_Scalar inTop,
- MT_Scalar inNear,
- MT_Scalar inFar
- );
-
-protected:
- union
- {
- MT_Scalar m_V[4][4];
- MT_Scalar m_Vflat[16];
- };
-};
-
-#endif //MT_CmMatrix4x4
-
diff --git a/intern/moto/include/MT_Matrix3x3.h b/intern/moto/include/MT_Matrix3x3.h
deleted file mode 100644
index 6f965f59069..00000000000
--- a/intern/moto/include/MT_Matrix3x3.h
+++ /dev/null
@@ -1,276 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Matrix3x3.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_MATRIX3X3_H
-#define MT_MATRIX3X3_H
-
-#include <MT_assert.h>
-
-#include "MT_Vector3.h"
-#include "MT_Quaternion.h"
-
-class MT_Matrix3x3 {
-public:
- MT_Matrix3x3() {}
- MT_Matrix3x3(const float *m) { setValue(m); }
- MT_Matrix3x3(const double *m) { setValue(m); }
- MT_Matrix3x3(const MT_Quaternion& q) { setRotation(q); }
-
- MT_Matrix3x3(const MT_Quaternion& q, const MT_Vector3& s) {
- setRotation(q);
- scale(s[0], s[1], s[2]);
- }
-
- MT_Matrix3x3(const MT_Vector3& euler) { setEuler(euler); }
- MT_Matrix3x3(const MT_Vector3& euler, const MT_Vector3& s) {
- setEuler(euler);
- scale(s[0], s[1], s[2]);
- }
-
- MT_Matrix3x3(MT_Scalar xx, MT_Scalar xy, MT_Scalar xz,
- MT_Scalar yx, MT_Scalar yy, MT_Scalar yz,
- MT_Scalar zx, MT_Scalar zy, MT_Scalar zz) {
- setValue(xx, xy, xz,
- yx, yy, yz,
- zx, zy, zz);
- }
-
- MT_Vector3& operator[](int i) { return m_el[i]; }
- const MT_Vector3& operator[](int i) const { return m_el[i]; }
-
- MT_Vector3 getColumn(int i) const {
- return MT_Vector3(m_el[0][i], m_el[1][i], m_el[2][i]);
- }
-
- void setColumn(int i, const MT_Vector3& v) {
- m_el[0][i] = v[0];
- m_el[1][i] = v[1];
- m_el[2][i] = v[2];
- }
-
- void setRow(int i, const MT_Vector3& v) {
- m_el[i][0] = v[0];
- m_el[i][1] = v[1];
- m_el[i][2] = v[2];
- }
-
- void setValue(const float *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++; m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++; m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m;
- }
-
- void setValue(const double *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++; m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++; m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m;
- }
-
- void setValue3x3(const float *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m;
- }
-
- void setValue3x3(const double *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m;
- }
-
- void setValue(MT_Scalar xx, MT_Scalar xy, MT_Scalar xz,
- MT_Scalar yx, MT_Scalar yy, MT_Scalar yz,
- MT_Scalar zx, MT_Scalar zy, MT_Scalar zz) {
- m_el[0][0] = xx; m_el[0][1] = xy; m_el[0][2] = xz;
- m_el[1][0] = yx; m_el[1][1] = yy; m_el[1][2] = yz;
- m_el[2][0] = zx; m_el[2][1] = zy; m_el[2][2] = zz;
- }
-
- void setRotation(const MT_Quaternion& q) {
- MT_Scalar d = q.length2();
- MT_assert(!MT_fuzzyZero2(d));
- MT_Scalar s = MT_Scalar(2.0f) / d;
- MT_Scalar xs = q[0] * s, ys = q[1] * s, zs = q[2] * s;
- MT_Scalar wx = q[3] * xs, wy = q[3] * ys, wz = q[3] * zs;
- MT_Scalar xx = q[0] * xs, xy = q[0] * ys, xz = q[0] * zs;
- MT_Scalar yy = q[1] * ys, yz = q[1] * zs, zz = q[2] * zs;
- setValue(MT_Scalar(1.0f) - (yy + zz), xy - wz , xz + wy,
- xy + wz , MT_Scalar(1.0f) - (xx + zz), yz - wx,
- xz - wy , yz + wx, MT_Scalar(1.0f) - (xx + yy));
- }
-
- /**
- * setEuler
- * @param euler a const reference to a MT_Vector3 of euler angles
- * These angles are used to produce a rotation matrix. The euler
- * angles are applied in ZYX order. I.e a vector is first rotated
- * about X then Y and then Z
- **/
-
- void setEuler(const MT_Vector3& euler) {
- MT_Scalar ci = cosf(euler[0]);
- MT_Scalar cj = cosf(euler[1]);
- MT_Scalar ch = cosf(euler[2]);
- MT_Scalar si = sinf(euler[0]);
- MT_Scalar sj = sinf(euler[1]);
- MT_Scalar sh = sinf(euler[2]);
- MT_Scalar cc = ci * ch;
- MT_Scalar cs = ci * sh;
- MT_Scalar sc = si * ch;
- MT_Scalar ss = si * sh;
-
- setValue(cj * ch, sj * sc - cs, sj * cc + ss,
- cj * sh, sj * ss + cc, sj * cs - sc,
- -sj, cj * si, cj * ci);
- }
-
- void getEuler(MT_Scalar& yaw, MT_Scalar& pitch, MT_Scalar& roll) const
- {
- if (m_el[2][0] != -1.0f && m_el[2][0] != 1.0f) {
- pitch = MT_Scalar(-asinf(m_el[2][0]));
- yaw = MT_Scalar(atan2f(m_el[2][1] / cosf(pitch), m_el[2][2] / cosf(pitch)));
- roll = MT_Scalar(atan2f(m_el[1][0] / cosf(pitch), m_el[0][0] / cosf(pitch)));
- }
- else {
- roll = MT_Scalar(0);
- if (m_el[2][0] == -1.0f) {
- pitch = (float)MT_PI / 2.0f;
- yaw = MT_Scalar(atan2f(m_el[0][1], m_el[0][2]));
- }
- else {
- pitch = (float)-MT_PI / 2.0f;
- yaw = MT_Scalar(atan2f(m_el[0][1], m_el[0][2]));
- }
- }
- }
-
- void scale(MT_Scalar x, MT_Scalar y, MT_Scalar z) {
- m_el[0][0] *= x; m_el[0][1] *= y; m_el[0][2] *= z;
- m_el[1][0] *= x; m_el[1][1] *= y; m_el[1][2] *= z;
- m_el[2][0] *= x; m_el[2][1] *= y; m_el[2][2] *= z;
- }
-
- MT_Matrix3x3 scaled(MT_Scalar x, MT_Scalar y, MT_Scalar z) const {
- return MT_Matrix3x3(m_el[0][0] * x, m_el[0][1] * y, m_el[0][2] * z,
- m_el[1][0] * x, m_el[1][1] * y, m_el[1][2] * z,
- m_el[2][0] * x, m_el[2][1] * y, m_el[2][2] * z);
- }
-
- void setIdentity() {
- setValue(MT_Scalar(1.0f), MT_Scalar(0.0f), MT_Scalar(0.0f),
- MT_Scalar(0.0f), MT_Scalar(1.0f), MT_Scalar(0.0f),
- MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(1.0f));
- }
-
- void getValue(float *m) const {
- *m++ = (float) m_el[0][0]; *m++ = (float) m_el[1][0]; *m++ = (float) m_el[2][0]; *m++ = (float) 0.0f;
- *m++ = (float) m_el[0][1]; *m++ = (float) m_el[1][1]; *m++ = (float) m_el[2][1]; *m++ = (float) 0.0f;
- *m++ = (float) m_el[0][2]; *m++ = (float) m_el[1][2]; *m++ = (float) m_el[2][2]; *m = (float) 0.0f;
- }
-
- void getValue(double *m) const {
- *m++ = m_el[0][0]; *m++ = m_el[1][0]; *m++ = m_el[2][0]; *m++ = 0.0;
- *m++ = m_el[0][1]; *m++ = m_el[1][1]; *m++ = m_el[2][1]; *m++ = 0.0;
- *m++ = m_el[0][2]; *m++ = m_el[1][2]; *m++ = m_el[2][2]; *m = 0.0;
- }
-
- void getValue3x3(float *m) const {
- *m++ = (float) m_el[0][0]; *m++ = (float) m_el[1][0]; *m++ = (float) m_el[2][0];
- *m++ = (float) m_el[0][1]; *m++ = (float) m_el[1][1]; *m++ = (float) m_el[2][1];
- *m++ = (float) m_el[0][2]; *m++ = (float) m_el[1][2]; *m++ = (float) m_el[2][2];
- }
-
- void getValue3x3(double *m) const {
- *m++ = m_el[0][0]; *m++ = m_el[1][0]; *m++ = m_el[2][0];
- *m++ = m_el[0][1]; *m++ = m_el[1][1]; *m++ = m_el[2][1];
- *m++ = m_el[0][2]; *m++ = m_el[1][2]; *m++ = m_el[2][2];
- }
-
- MT_Quaternion getRotation() const;
-
- MT_Matrix3x3& operator*=(const MT_Matrix3x3& m);
-
- MT_Scalar tdot(int c, const MT_Vector3& v) const {
- return m_el[0][c] * v[0] + m_el[1][c] * v[1] + m_el[2][c] * v[2];
- }
-
- MT_Scalar cofac(int r1, int c1, int r2, int c2) const {
- return m_el[r1][c1] * m_el[r2][c2] - m_el[r1][c2] * m_el[r2][c1];
- }
-
- MT_Scalar determinant() const;
- MT_Matrix3x3 adjoint() const;
-
- MT_Matrix3x3 absolute() const;
-
- MT_Matrix3x3 transposed() const;
- void transpose();
-
- MT_Matrix3x3 inverse() const;
- void invert();
-
-protected:
-
- MT_Vector3 m_el[3];
-};
-
-MT_Vector3 operator*(const MT_Matrix3x3& m, const MT_Vector3& v);
-MT_Vector3 operator*(const MT_Vector3& v, const MT_Matrix3x3& m);
-MT_Matrix3x3 operator*(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2);
-
-MT_Matrix3x3 MT_multTransposeLeft(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2);
-MT_Matrix3x3 MT_multTransposeRight(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2);
-
-inline MT_OStream& operator<<(MT_OStream& os, const MT_Matrix3x3& m) {
- return os << m[0] << GEN_endl << m[1] << GEN_endl << m[2] << GEN_endl;
-}
-
-#ifdef GEN_INLINED
-#include "MT_Matrix3x3.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Matrix3x3.inl b/intern/moto/include/MT_Matrix3x3.inl
deleted file mode 100644
index 614e4f93a81..00000000000
--- a/intern/moto/include/MT_Matrix3x3.inl
+++ /dev/null
@@ -1,128 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Quaternion MT_Matrix3x3::getRotation() const {
- static int next[3] = { 1, 2, 0 };
-
- MT_Quaternion result;
-
- MT_Scalar trace = m_el[0][0] + m_el[1][1] + m_el[2][2];
-
- if (trace > 0.0f)
- {
- MT_Scalar s = sqrtf(trace + MT_Scalar(1.0f));
- result[3] = s * MT_Scalar(0.5f);
- s = MT_Scalar(0.5f) / s;
-
- result[0] = (m_el[2][1] - m_el[1][2]) * s;
- result[1] = (m_el[0][2] - m_el[2][0]) * s;
- result[2] = (m_el[1][0] - m_el[0][1]) * s;
- }
- else
- {
- int i = 0;
- if (m_el[1][1] > m_el[0][0])
- i = 1;
- if (m_el[2][2] > m_el[i][i])
- i = 2;
-
- int j = next[i];
- int k = next[j];
-
- MT_Scalar s = sqrtf(m_el[i][i] - m_el[j][j] - m_el[k][k] + MT_Scalar(1.0f));
-
- result[i] = s * MT_Scalar(0.5f);
-
- s = MT_Scalar(0.5f) / s;
-
- result[3] = (m_el[k][j] - m_el[j][k]) * s;
- result[j] = (m_el[j][i] + m_el[i][j]) * s;
- result[k] = (m_el[k][i] + m_el[i][k]) * s;
- }
- return result;
-}
-
-GEN_INLINE MT_Matrix3x3& MT_Matrix3x3::operator*=(const MT_Matrix3x3& m) {
- setValue(m.tdot(0, m_el[0]), m.tdot(1, m_el[0]), m.tdot(2, m_el[0]),
- m.tdot(0, m_el[1]), m.tdot(1, m_el[1]), m.tdot(2, m_el[1]),
- m.tdot(0, m_el[2]), m.tdot(1, m_el[2]), m.tdot(2, m_el[2]));
- return *this;
-}
-
-GEN_INLINE MT_Scalar MT_Matrix3x3::determinant() const {
- return MT_triple((*this)[0], (*this)[1], (*this)[2]);
-}
-
-GEN_INLINE MT_Matrix3x3 MT_Matrix3x3::absolute() const {
- return
- MT_Matrix3x3(MT_abs(m_el[0][0]), MT_abs(m_el[0][1]), MT_abs(m_el[0][2]),
- MT_abs(m_el[1][0]), MT_abs(m_el[1][1]), MT_abs(m_el[1][2]),
- MT_abs(m_el[2][0]), MT_abs(m_el[2][1]), MT_abs(m_el[2][2]));
-}
-
-GEN_INLINE MT_Matrix3x3 MT_Matrix3x3::transposed() const {
- return MT_Matrix3x3(m_el[0][0], m_el[1][0], m_el[2][0],
- m_el[0][1], m_el[1][1], m_el[2][1],
- m_el[0][2], m_el[1][2], m_el[2][2]);
-}
-
-GEN_INLINE void MT_Matrix3x3::transpose() {
- *this = transposed();
-}
-
-GEN_INLINE MT_Matrix3x3 MT_Matrix3x3::adjoint() const {
- return
- MT_Matrix3x3(cofac(1, 1, 2, 2), cofac(0, 2, 2, 1), cofac(0, 1, 1, 2),
- cofac(1, 2, 2, 0), cofac(0, 0, 2, 2), cofac(0, 2, 1, 0),
- cofac(1, 0, 2, 1), cofac(0, 1, 2, 0), cofac(0, 0, 1, 1));
-}
-
-GEN_INLINE MT_Matrix3x3 MT_Matrix3x3::inverse() const {
- MT_Vector3 co(cofac(1, 1, 2, 2), cofac(1, 2, 2, 0), cofac(1, 0, 2, 1));
- MT_Scalar det = MT_dot((*this)[0], co);
- MT_assert(!MT_fuzzyZero2(det));
- MT_Scalar s = MT_Scalar(1.0f) / det;
- return
- MT_Matrix3x3(co[0] * s, cofac(0, 2, 2, 1) * s, cofac(0, 1, 1, 2) * s,
- co[1] * s, cofac(0, 0, 2, 2) * s, cofac(0, 2, 1, 0) * s,
- co[2] * s, cofac(0, 1, 2, 0) * s, cofac(0, 0, 1, 1) * s);
-}
-
-GEN_INLINE void MT_Matrix3x3::invert() {
- *this = inverse();
-}
-
-GEN_INLINE MT_Vector3 operator*(const MT_Matrix3x3& m, const MT_Vector3& v) {
- return MT_Vector3(MT_dot(m[0], v), MT_dot(m[1], v), MT_dot(m[2], v));
-}
-
-GEN_INLINE MT_Vector3 operator*(const MT_Vector3& v, const MT_Matrix3x3& m) {
- return MT_Vector3(m.tdot(0, v), m.tdot(1, v), m.tdot(2, v));
-}
-
-GEN_INLINE MT_Matrix3x3 operator*(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2) {
- return
- MT_Matrix3x3(m2.tdot(0, m1[0]), m2.tdot(1, m1[0]), m2.tdot(2, m1[0]),
- m2.tdot(0, m1[1]), m2.tdot(1, m1[1]), m2.tdot(2, m1[1]),
- m2.tdot(0, m1[2]), m2.tdot(1, m1[2]), m2.tdot(2, m1[2]));
-}
-
-GEN_INLINE MT_Matrix3x3 MT_multTransposeLeft(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2) {
- return MT_Matrix3x3(
- m1[0][0] * m2[0][0] + m1[1][0] * m2[1][0] + m1[2][0] * m2[2][0],
- m1[0][0] * m2[0][1] + m1[1][0] * m2[1][1] + m1[2][0] * m2[2][1],
- m1[0][0] * m2[0][2] + m1[1][0] * m2[1][2] + m1[2][0] * m2[2][2],
- m1[0][1] * m2[0][0] + m1[1][1] * m2[1][0] + m1[2][1] * m2[2][0],
- m1[0][1] * m2[0][1] + m1[1][1] * m2[1][1] + m1[2][1] * m2[2][1],
- m1[0][1] * m2[0][2] + m1[1][1] * m2[1][2] + m1[2][1] * m2[2][2],
- m1[0][2] * m2[0][0] + m1[1][2] * m2[1][0] + m1[2][2] * m2[2][0],
- m1[0][2] * m2[0][1] + m1[1][2] * m2[1][1] + m1[2][2] * m2[2][1],
- m1[0][2] * m2[0][2] + m1[1][2] * m2[1][2] + m1[2][2] * m2[2][2]);
-}
-
-GEN_INLINE MT_Matrix3x3 MT_multTransposeRight(const MT_Matrix3x3& m1, const MT_Matrix3x3& m2) {
- return
- MT_Matrix3x3(m1[0].dot(m2[0]), m1[0].dot(m2[1]), m1[0].dot(m2[2]),
- m1[1].dot(m2[0]), m1[1].dot(m2[1]), m1[1].dot(m2[2]),
- m1[2].dot(m2[0]), m1[2].dot(m2[1]), m1[2].dot(m2[2]));
-
-}
diff --git a/intern/moto/include/MT_Matrix4x4.h b/intern/moto/include/MT_Matrix4x4.h
deleted file mode 100644
index 2ecac81ea6f..00000000000
--- a/intern/moto/include/MT_Matrix4x4.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Matrix4x4.h
- * \ingroup moto
- */
-
-
-/**
-
- * Copyright (C) 2001 NaN Technologies B.V.
- * A 4x4 matrix compatible with other stuff.
- */
-
-#ifndef MT_MATRIX4X4_H
-#define MT_MATRIX4X4_H
-
-#include <MT_assert.h>
-
-#include "MT_Vector4.h"
-#include "MT_Transform.h"
-
-// Row-major 4x4 matrix
-
-class MT_Matrix4x4 {
-public:
- /**
- * Empty contructor.
- */
- MT_Matrix4x4() {}
- /**
- * Initialize all fields with the values pointed at by m. A
- * contigous block of 16 values is read. */
- MT_Matrix4x4(const float *m) { setValue(m); }
- /**
- * Initialize all fields with the values pointed at by m. A
- * contigous block of 16 values is read. */
- MT_Matrix4x4(const double *m) { setValue(m); }
-
- /**
- * Initialise with these 16 explicit values.
- */
- MT_Matrix4x4(MT_Scalar xx, MT_Scalar xy, MT_Scalar xz, MT_Scalar xw,
- MT_Scalar yx, MT_Scalar yy, MT_Scalar yz, MT_Scalar yw,
- MT_Scalar zx, MT_Scalar zy, MT_Scalar zz, MT_Scalar zw,
- MT_Scalar wx, MT_Scalar wy, MT_Scalar wz, MT_Scalar ww) {
- setValue(xx, xy, xz, xw,
- yx, yy, yz, yw,
- zx, zy, zz, zw,
- wx, wy, wz, ww);
- }
-
- /**
- * Initialize from an MT_Transform.
- */
- MT_Matrix4x4(const MT_Transform &t) {
-
- const MT_Matrix3x3 &basis = t.getBasis();
- const MT_Vector3 &origin = t.getOrigin();
-
- setValue(
- basis[0][0],basis[0][1],basis[0][2],origin[0],
- basis[1][0],basis[1][1],basis[1][2],origin[1],
- basis[2][0],basis[2][1],basis[2][2],origin[2],
- MT_Scalar(0.0f),MT_Scalar(0.0f),MT_Scalar(0.0f),MT_Scalar(1.0f)
- );
- }
-
- /**
- * Get the i-th row.
- */
- MT_Vector4& operator[](int i) { return m_el[i]; }
- /**
- * Get the i-th row.
- */
- const MT_Vector4& operator[](int i) const { return m_el[i]; }
-
- /**
- * Set the matrix to the values pointer at by m. A contiguous
- * block of 16 values is copied. */
- void setValue(const float *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++; m_el[3][0] = *m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++; m_el[3][1] = *m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m++; m_el[3][2] = *m++;
- m_el[0][3] = *m++; m_el[1][3] = *m++; m_el[2][3] = *m++; m_el[3][3] = *m;
- }
-
- /**
- * Set the matrix to the values pointer at by m. A contiguous
- * block of 16 values is copied.
- */
- void setValue(const double *m) {
- m_el[0][0] = *m++; m_el[1][0] = *m++; m_el[2][0] = *m++; m_el[3][0] = *m++;
- m_el[0][1] = *m++; m_el[1][1] = *m++; m_el[2][1] = *m++; m_el[3][1] = *m++;
- m_el[0][2] = *m++; m_el[1][2] = *m++; m_el[2][2] = *m++; m_el[3][2] = *m++;
- m_el[0][3] = *m++; m_el[1][3] = *m++; m_el[2][3] = *m++; m_el[3][3] = *m;
- }
-
- /**
- * Set the matrix to these 16 explicit values.
- */
- void setValue(MT_Scalar xx, MT_Scalar xy, MT_Scalar xz, MT_Scalar xw,
- MT_Scalar yx, MT_Scalar yy, MT_Scalar yz, MT_Scalar yw,
- MT_Scalar zx, MT_Scalar zy, MT_Scalar zz, MT_Scalar zw,
- MT_Scalar wx, MT_Scalar wy, MT_Scalar wz, MT_Scalar ww) {
- m_el[0][0] = xx; m_el[0][1] = xy; m_el[0][2] = xz; m_el[0][3] = xw;
- m_el[1][0] = yx; m_el[1][1] = yy; m_el[1][2] = yz; m_el[1][3] = yw;
- m_el[2][0] = zx; m_el[2][1] = zy; m_el[2][2] = zz; m_el[2][3] = zw;
- m_el[3][0] = wx; m_el[3][1] = wy; m_el[3][2] = wz; m_el[3][3] = ww;
- }
-
- /**
- * Scale the columns of this matrix with x, y, z, w respectively.
- */
- void scale(MT_Scalar x, MT_Scalar y, MT_Scalar z, MT_Scalar w) {
- m_el[0][0] *= x; m_el[0][1] *= y; m_el[0][2] *= z; m_el[0][3] *= w;
- m_el[1][0] *= x; m_el[1][1] *= y; m_el[1][2] *= z; m_el[1][3] *= w;
- m_el[2][0] *= x; m_el[2][1] *= y; m_el[2][2] *= z; m_el[2][3] *= w;
- m_el[3][0] *= x; m_el[3][1] *= y; m_el[3][2] *= z; m_el[3][3] *= w;
- }
-
- /**
- * Scale the rows of this matrix with x, y, z, w respectively.
- */
- void tscale(MT_Scalar x, MT_Scalar y, MT_Scalar z, MT_Scalar w) {
- m_el[0][0] *= x; m_el[1][0] *= y; m_el[2][0] *= z; m_el[3][0] *= w;
- m_el[0][1] *= x; m_el[1][1] *= y; m_el[2][1] *= z; m_el[3][1] *= w;
- m_el[0][2] *= x; m_el[1][2] *= y; m_el[2][2] *= z; m_el[3][2] *= w;
- m_el[0][3] *= x; m_el[1][3] *= y; m_el[2][3] *= z; m_el[3][3] *= w;
- }
-
- /**
- * Return a column-scaled version of this matrix.
- */
- MT_Matrix4x4 scaled(MT_Scalar x, MT_Scalar y, MT_Scalar z, MT_Scalar w) const {
- return MT_Matrix4x4(m_el[0][0] * x, m_el[0][1] * y, m_el[0][2] * z, m_el[0][3] * w,
- m_el[1][0] * x, m_el[1][1] * y, m_el[1][2] * z, m_el[1][3] * w,
- m_el[2][0] * x, m_el[2][1] * y, m_el[2][2] * z, m_el[2][3] * w,
- m_el[3][0] * x, m_el[3][1] * y, m_el[3][2] * z, m_el[3][3] * w);
- }
-
- /**
- * Set this matrix to I.
- */
- void setIdentity() {
- setValue(MT_Scalar(1.0f), MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(0.0f),
- MT_Scalar(0.0f), MT_Scalar(1.0f), MT_Scalar(0.0f), MT_Scalar(0.0f),
- MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(1.0f), MT_Scalar(0.0f),
- MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(1.0f));
- }
-
- /**
- * Read the element from row i, column j.
- */
- float getElement(int i, int j) {
- return (float) m_el[i][j];
- }
-
- /**
- * Copy the contents to a contiguous block of 16 floats.
- */
- void getValue(float *m) const {
- *m++ = (float) m_el[0][0]; *m++ = (float) m_el[1][0]; *m++ = (float) m_el[2][0]; *m++ = (float) m_el[3][0];
- *m++ = (float) m_el[0][1]; *m++ = (float) m_el[1][1]; *m++ = (float) m_el[2][1]; *m++ = (float) m_el[3][1];
- *m++ = (float) m_el[0][2]; *m++ = (float) m_el[1][2]; *m++ = (float) m_el[2][2]; *m++ = (float) m_el[3][2];
- *m++ = (float) m_el[0][3]; *m++ = (float) m_el[1][3]; *m++ = (float) m_el[2][3]; *m = (float) m_el[3][3];
- }
-
- /**
- * Copy the contents to a contiguous block of 16 doubles.
- */
- void getValue(double *m) const {
- *m++ = m_el[0][0]; *m++ = m_el[1][0]; *m++ = m_el[2][0]; *m++ = m_el[3][0];
- *m++ = m_el[0][1]; *m++ = m_el[1][1]; *m++ = m_el[2][1]; *m++ = m_el[3][1];
- *m++ = m_el[0][2]; *m++ = m_el[1][2]; *m++ = m_el[2][2]; *m++ = m_el[3][2];
- *m++ = m_el[0][3]; *m++ = m_el[1][3]; *m++ = m_el[2][3]; *m = m_el[3][3];
- }
-
- /**
- * Left-multiply this matrix with the argument.
- */
- MT_Matrix4x4& operator*=(const MT_Matrix4x4& m);
-
- /**
- * Left-multiply column c with row vector c.
- */
- MT_Scalar tdot(int c, const MT_Vector4& v) const {
- return m_el[0][c] * v[0]
- + m_el[1][c] * v[1]
- + m_el[2][c] * v[2]
- + m_el[3][c] * v[3];
- }
-
- /* I'll postpone this for now... - nzc*/
-/* MT_Scalar determinant() const; */
-/* MT_Matrix4x4 adjoint() const; */
-/* MT_Matrix4x4 inverse() const; */
-
- MT_Matrix4x4 absolute() const;
-
- MT_Matrix4x4 transposed() const;
- void transpose();
-
- MT_Matrix4x4 inverse() const;
- void invert();
-
-protected:
- /**
- * Access with [row index][column index]
- */
- MT_Vector4 m_el[4];
-};
-
-/* These multiplicators do exactly what you ask from them: they
- * multiply in the indicated order. */
-MT_Vector4 operator*(const MT_Matrix4x4& m, const MT_Vector4& v);
-MT_Vector4 operator*(const MT_Vector4& v, const MT_Matrix4x4& m);
-MT_Matrix4x4 operator*(const MT_Matrix4x4& m1, const MT_Matrix4x4& m2);
-
-/* MT_Matrix4x4 MT_multTransposeLeft(const MT_Matrix4x4& m1, const MT_Matrix4x4& m2); */
-/* MT_Matrix4x4 MT_multTransposeRight(const MT_Matrix4x4& m1, const MT_Matrix4x4& m2); */
-
-inline MT_OStream& operator<<(MT_OStream& os, const MT_Matrix4x4& m) {
- return os << m[0] << GEN_endl
- << m[1] << GEN_endl
- << m[2] << GEN_endl
- << m[3] << GEN_endl;
-
-
-
-}
-
-#ifdef GEN_INLINED
-#include "MT_Matrix4x4.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Matrix4x4.inl b/intern/moto/include/MT_Matrix4x4.inl
deleted file mode 100644
index fb72af1f9bf..00000000000
--- a/intern/moto/include/MT_Matrix4x4.inl
+++ /dev/null
@@ -1,108 +0,0 @@
-#include "MT_Optimize.h"
-
-/*
- * This is a supposedly faster inverter than the cofactor
- * computation. It uses an LU decomposition sort of thing. */
-GEN_INLINE void MT_Matrix4x4::invert() {
- /* normalize row 0 */
-
- int i,j,k;
-
- for (i=1; i < 4; i++) m_el[0][i] /= m_el[0][0];
- for (i=1; i < 4; i++) {
- for (j=i; j < 4; j++) { // do a column of L
- MT_Scalar sum = 0.0f;
- for (k = 0; k < i; k++)
- sum += m_el[j][k] * m_el[k][i];
- m_el[j][i] -= sum;
- }
- if (i == 3) continue;
- for (j=i+1; j < 4; j++) { // do a row of U
- MT_Scalar sum = 0.0f;
- for (k = 0; k < i; k++)
- sum += m_el[i][k]*m_el[k][j];
- m_el[i][j] =
- (m_el[i][j]-sum) / m_el[i][i];
- }
- }
- for (i = 0; i < 4; i++ ) // invert L
- for (j = i; j < 4; j++ ) {
- MT_Scalar x = 1.0f;
- if ( i != j ) {
- x = 0.0f;
- for (k = i; k < j; k++ )
- x -= m_el[j][k]*m_el[k][i];
- }
- m_el[j][i] = x / m_el[j][j];
- }
- for (i = 0; i < 4; i++ ) // invert U
- for (j = i; j < 4; j++ ) {
- if ( i == j ) continue;
- MT_Scalar sum = 0.0f;
- for (k = i; k < j; k++ )
- sum += m_el[k][j]*( (i==k) ? 1.0f : m_el[i][k] );
- m_el[i][j] = -sum;
- }
- for (i = 0; i < 4; i++ ) // final inversion
- for (j = 0; j < 4; j++ ) {
- MT_Scalar sum = 0.0f;
- for (k = ((i>j)?i:j); k < 4; k++ )
- sum += ((j==k)?1.0f:m_el[j][k])*m_el[k][i];
- m_el[j][i] = sum;
- }
-}
-
-GEN_INLINE MT_Matrix4x4 MT_Matrix4x4::inverse() const
-{
- MT_Matrix4x4 invmat = *this;
-
- invmat.invert();
-
- return invmat;
-}
-
-GEN_INLINE MT_Matrix4x4& MT_Matrix4x4::operator*=(const MT_Matrix4x4& m)
-{
- setValue(m.tdot(0, m_el[0]), m.tdot(1, m_el[0]), m.tdot(2, m_el[0]), m.tdot(3, m_el[0]),
- m.tdot(0, m_el[1]), m.tdot(1, m_el[1]), m.tdot(2, m_el[1]), m.tdot(3, m_el[1]),
- m.tdot(0, m_el[2]), m.tdot(1, m_el[2]), m.tdot(2, m_el[2]), m.tdot(3, m_el[2]),
- m.tdot(0, m_el[3]), m.tdot(1, m_el[3]), m.tdot(2, m_el[3]), m.tdot(3, m_el[3]));
- return *this;
-
-}
-
-GEN_INLINE MT_Vector4 operator*(const MT_Matrix4x4& m, const MT_Vector4& v) {
- return MT_Vector4(MT_dot(m[0], v), MT_dot(m[1], v), MT_dot(m[2], v), MT_dot(m[3], v));
-}
-
-GEN_INLINE MT_Vector4 operator*(const MT_Vector4& v, const MT_Matrix4x4& m) {
- return MT_Vector4(m.tdot(0, v), m.tdot(1, v), m.tdot(2, v), m.tdot(3, v));
-}
-
-GEN_INLINE MT_Matrix4x4 operator*(const MT_Matrix4x4& m1, const MT_Matrix4x4& m2) {
- return
- MT_Matrix4x4(m2.tdot(0, m1[0]), m2.tdot(1, m1[0]), m2.tdot(2, m1[0]), m2.tdot(3, m1[0]),
- m2.tdot(0, m1[1]), m2.tdot(1, m1[1]), m2.tdot(2, m1[1]), m2.tdot(3, m1[1]),
- m2.tdot(0, m1[2]), m2.tdot(1, m1[2]), m2.tdot(2, m1[2]), m2.tdot(3, m1[2]),
- m2.tdot(0, m1[3]), m2.tdot(1, m1[3]), m2.tdot(2, m1[3]), m2.tdot(3, m1[3]));
-}
-
-
-GEN_INLINE MT_Matrix4x4 MT_Matrix4x4::transposed() const {
- return MT_Matrix4x4(m_el[0][0], m_el[1][0], m_el[2][0], m_el[3][0],
- m_el[0][1], m_el[1][1], m_el[2][1], m_el[3][1],
- m_el[0][2], m_el[1][2], m_el[2][2], m_el[3][2],
- m_el[0][3], m_el[1][3], m_el[2][3], m_el[3][3]);
-}
-
-GEN_INLINE void MT_Matrix4x4::transpose() {
- *this = transposed();
-}
-
-GEN_INLINE MT_Matrix4x4 MT_Matrix4x4::absolute() const {
- return
- MT_Matrix4x4(MT_abs(m_el[0][0]), MT_abs(m_el[0][1]), MT_abs(m_el[0][2]), MT_abs(m_el[0][3]),
- MT_abs(m_el[1][0]), MT_abs(m_el[1][1]), MT_abs(m_el[1][2]), MT_abs(m_el[1][3]),
- MT_abs(m_el[2][0]), MT_abs(m_el[2][1]), MT_abs(m_el[2][2]), MT_abs(m_el[2][3]),
- MT_abs(m_el[3][0]), MT_abs(m_el[3][1]), MT_abs(m_el[3][2]), MT_abs(m_el[3][3]));
-}
diff --git a/intern/moto/include/MT_MinMax.h b/intern/moto/include/MT_MinMax.h
deleted file mode 100644
index 42e689f45a4..00000000000
--- a/intern/moto/include/MT_MinMax.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_MinMax.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_MINMAX_H
-#define MT_MINMAX_H
-
-template <class T>
-inline const T& MT_min(const T& a, const T& b) {
- return b < a ? b : a;
-}
-
-template <class T>
-inline const T& MT_max(const T& a, const T& b) {
- return a < b ? b : a;
-}
-
-template <class T>
-inline void MT_set_min(T& a, const T& b) {
- if (a > b) a = b;
-}
-
-template <class T>
-inline void MT_set_max(T& a, const T& b) {
- if (a < b) a = b;
-}
-
-#endif
-
diff --git a/intern/moto/include/MT_Optimize.h b/intern/moto/include/MT_Optimize.h
deleted file mode 100644
index e16bab1ecf9..00000000000
--- a/intern/moto/include/MT_Optimize.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Optimize.h
- * \ingroup moto
- */
-
-
-#ifndef GEN_OPTIMIZE_H
-#define GEN_OPTIMIZE_H
-
-#ifdef GEN_INLINED
-#define GEN_INLINE inline
-#else
-#define GEN_INLINE
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Point2.h b/intern/moto/include/MT_Point2.h
deleted file mode 100644
index 587379b21f4..00000000000
--- a/intern/moto/include/MT_Point2.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Point2.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_POINT2_H
-#define MT_POINT2_H
-
-#include "MT_Vector2.h"
-
-class MT_Point2 : public MT_Vector2 {
-public:
- MT_Point2() {}
- MT_Point2(const float *v2) : MT_Vector2(v2) {}
- MT_Point2(const double *v2) : MT_Vector2(v2) {}
- MT_Point2(MT_Scalar x2, MT_Scalar y2) : MT_Vector2(x2, y2) {}
-
- MT_Point2& operator+=(const MT_Vector2& v);
- MT_Point2& operator-=(const MT_Vector2& v);
- MT_Point2& operator=(const MT_Vector2& v);
-
- MT_Scalar distance(const MT_Point2& p) const;
- MT_Scalar distance2(const MT_Point2& p) const;
-
- MT_Point2 lerp(const MT_Point2& p, MT_Scalar t) const;
-};
-
-MT_Point2 operator+(const MT_Point2& p, const MT_Vector2& v);
-MT_Point2 operator-(const MT_Point2& p, const MT_Vector2& v);
-MT_Vector2 operator-(const MT_Point2& p1, const MT_Point2& p2);
-
-MT_Scalar MT_distance(const MT_Point2& p1, const MT_Point2& p2);
-MT_Scalar MT_distance2(const MT_Point2& p1, const MT_Point2& p2);
-
-MT_Point2 MT_lerp(const MT_Point2& p1, const MT_Point2& p2, MT_Scalar t);
-
-#ifdef GEN_INLINED
-#include "MT_Point2.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Point2.inl b/intern/moto/include/MT_Point2.inl
deleted file mode 100644
index ec09a3260e2..00000000000
--- a/intern/moto/include/MT_Point2.inl
+++ /dev/null
@@ -1,54 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Point2& MT_Point2::operator+=(const MT_Vector2& v) {
- m_co[0] += v[0]; m_co[1] += v[1];
- return *this;
-}
-
-GEN_INLINE MT_Point2& MT_Point2::operator-=(const MT_Vector2& v) {
- m_co[0] -= v[0]; m_co[1] -= v[1];
- return *this;
-}
-
-GEN_INLINE MT_Point2& MT_Point2::operator=(const MT_Vector2& v) {
- m_co[0] = v[0]; m_co[1] = v[1];
- return *this;
-}
-
-GEN_INLINE MT_Scalar MT_Point2::distance(const MT_Point2& p) const {
- return (p - *this).length();
-}
-
-GEN_INLINE MT_Scalar MT_Point2::distance2(const MT_Point2& p) const {
- return (p - *this).length2();
-}
-
-GEN_INLINE MT_Point2 MT_Point2::lerp(const MT_Point2& p, MT_Scalar t) const {
- return MT_Point2(m_co[0] + (p[0] - m_co[0]) * t,
- m_co[1] + (p[1] - m_co[1]) * t);
-}
-
-GEN_INLINE MT_Point2 operator+(const MT_Point2& p, const MT_Vector2& v) {
- return MT_Point2(p[0] + v[0], p[1] + v[1]);
-}
-
-GEN_INLINE MT_Point2 operator-(const MT_Point2& p, const MT_Vector2& v) {
- return MT_Point2(p[0] - v[0], p[1] - v[1]);
-}
-
-GEN_INLINE MT_Vector2 operator-(const MT_Point2& p1, const MT_Point2& p2) {
- return MT_Vector2(p1[0] - p2[0], p1[1] - p2[1]);
-}
-
-GEN_INLINE MT_Scalar MT_distance(const MT_Point2& p1, const MT_Point2& p2) {
- return p1.distance(p2);
-}
-
-GEN_INLINE MT_Scalar MT_distance2(const MT_Point2& p1, const MT_Point2& p2) {
- return p1.distance2(p2);
-}
-
-GEN_INLINE MT_Point2 MT_lerp(const MT_Point2& p1, const MT_Point2& p2, MT_Scalar t) {
- return p1.lerp(p2, t);
-}
-
diff --git a/intern/moto/include/MT_Point3.h b/intern/moto/include/MT_Point3.h
deleted file mode 100644
index f19b2e2f324..00000000000
--- a/intern/moto/include/MT_Point3.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Point3.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_POINT_H
-#define MT_POINT_H
-
-#include "MT_Vector3.h"
-
-class MT_Point3 : public MT_Vector3 {
-public:
- MT_Point3() {}
- MT_Point3(const float *v) : MT_Vector3(v) {}
- MT_Point3(const double *v) : MT_Vector3(v) {}
- MT_Point3(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) : MT_Vector3(xx, yy, zz) {}
-
- MT_Point3& operator+=(const MT_Vector3& v);
- MT_Point3& operator-=(const MT_Vector3& v);
- MT_Point3& operator=(const MT_Vector3& v);
- MT_Point3& operator=(const MT_Point3& v);
-
- MT_Scalar distance(const MT_Point3& p) const;
- MT_Scalar distance2(const MT_Point3& p) const;
-
- MT_Point3 lerp(const MT_Point3& p, MT_Scalar t) const;
-};
-
-MT_Point3 operator+(const MT_Point3& p, const MT_Vector3& v);
-MT_Point3 operator-(const MT_Point3& p, const MT_Vector3& v);
-MT_Vector3 operator-(const MT_Point3& p1, const MT_Point3& p2);
-
-MT_Scalar MT_distance(const MT_Point3& p1, const MT_Point3& p2);
-MT_Scalar MT_distance2(const MT_Point3& p1, const MT_Point3& p2);
-
-MT_Point3 MT_lerp(const MT_Point3& p1, const MT_Point3& p2, MT_Scalar t);
-
-#ifdef GEN_INLINED
-#include "MT_Point3.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Point3.inl b/intern/moto/include/MT_Point3.inl
deleted file mode 100644
index 081a8195694..00000000000
--- a/intern/moto/include/MT_Point3.inl
+++ /dev/null
@@ -1,59 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Point3& MT_Point3::operator+=(const MT_Vector3& v) {
- m_co[0] += v[0]; m_co[1] += v[1]; m_co[2] += v[2];
- return *this;
-}
-
-GEN_INLINE MT_Point3& MT_Point3::operator-=(const MT_Vector3& v) {
- m_co[0] -= v[0]; m_co[1] -= v[1]; m_co[2] -= v[2];
- return *this;
-}
-
-GEN_INLINE MT_Point3& MT_Point3::operator=(const MT_Vector3& v) {
- m_co[0] = v[0]; m_co[1] = v[1]; m_co[2] = v[2];
- return *this;
-}
-
-GEN_INLINE MT_Point3& MT_Point3::operator=(const MT_Point3& v) {
- m_co[0] = v[0]; m_co[1] = v[1]; m_co[2] = v[2];
- return *this;
-}
-
-GEN_INLINE MT_Scalar MT_Point3::distance(const MT_Point3& p) const {
- return (p - *this).length();
-}
-
-GEN_INLINE MT_Scalar MT_Point3::distance2(const MT_Point3& p) const {
- return (p - *this).length2();
-}
-
-GEN_INLINE MT_Point3 MT_Point3::lerp(const MT_Point3& p, MT_Scalar t) const {
- return MT_Point3(m_co[0] + (p[0] - m_co[0]) * t,
- m_co[1] + (p[1] - m_co[1]) * t,
- m_co[2] + (p[2] - m_co[2]) * t);
-}
-
-GEN_INLINE MT_Point3 operator+(const MT_Point3& p, const MT_Vector3& v) {
- return MT_Point3(p[0] + v[0], p[1] + v[1], p[2] + v[2]);
-}
-
-GEN_INLINE MT_Point3 operator-(const MT_Point3& p, const MT_Vector3& v) {
- return MT_Point3(p[0] - v[0], p[1] - v[1], p[2] - v[2]);
-}
-
-GEN_INLINE MT_Vector3 operator-(const MT_Point3& p1, const MT_Point3& p2) {
- return MT_Vector3(p1[0] - p2[0], p1[1] - p2[1], p1[2] - p2[2]);
-}
-
-GEN_INLINE MT_Scalar MT_distance(const MT_Point3& p1, const MT_Point3& p2) {
- return p1.distance(p2);
-}
-
-GEN_INLINE MT_Scalar MT_distance2(const MT_Point3& p1, const MT_Point3& p2) {
- return p1.distance2(p2);
-}
-
-GEN_INLINE MT_Point3 MT_lerp(const MT_Point3& p1, const MT_Point3& p2, MT_Scalar t) {
- return p1.lerp(p2, t);
-}
diff --git a/intern/moto/include/MT_Quaternion.h b/intern/moto/include/MT_Quaternion.h
deleted file mode 100644
index 6aabb1f2ed4..00000000000
--- a/intern/moto/include/MT_Quaternion.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Quaternion.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_QUATERNION_H
-#define MT_QUATERNION_H
-
-#include <MT_assert.h>
-
-#include "MT_Vector3.h"
-#include "MT_Vector4.h"
-
-class MT_Quaternion : public MT_Vector4 {
-public:
- MT_Quaternion() {}
- MT_Quaternion(const MT_Vector4& v) : MT_Vector4(v) {}
- MT_Quaternion(const float v[4]) : MT_Vector4(v) {}
- MT_Quaternion(const double v[4]) : MT_Vector4(v) {}
- MT_Quaternion(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) :
- MT_Vector4(xx, yy, zz, ww) {}
- MT_Quaternion(const MT_Vector3& axis, MT_Scalar mt_angle) {
- setRotation(axis, mt_angle);
- }
- MT_Quaternion(MT_Scalar yaw, MT_Scalar pitch, MT_Scalar roll) {
- setEuler(yaw, pitch, roll);
- }
-
- void setRotation(const MT_Vector3& axis, MT_Scalar mt_angle) {
- MT_Scalar d = axis.length();
- MT_assert(!MT_fuzzyZero(d));
- MT_Scalar s = sinf(mt_angle * MT_Scalar(0.5f)) / d;
- setValue(axis[0] * s, axis[1] * s, axis[2] * s,
- cosf(mt_angle * MT_Scalar(0.5f)));
- }
-
- void setEuler(MT_Scalar yaw, MT_Scalar pitch, MT_Scalar roll) {
- MT_Scalar cosYaw = cosf(yaw * MT_Scalar(0.5f));
- MT_Scalar sinYaw = sinf(yaw * MT_Scalar(0.5f));
- MT_Scalar cosPitch = cosf(pitch * MT_Scalar(0.5f));
- MT_Scalar sinPitch = sinf(pitch * MT_Scalar(0.5f));
- MT_Scalar cosRoll = cosf(roll * MT_Scalar(0.5f));
- MT_Scalar sinRoll = sinf(roll * MT_Scalar(0.5f));
- setValue(cosRoll * sinPitch * cosYaw + sinRoll * cosPitch * sinYaw,
- cosRoll * cosPitch * sinYaw - sinRoll * sinPitch * cosYaw,
- sinRoll * cosPitch * cosYaw - cosRoll * sinPitch * sinYaw,
- cosRoll * cosPitch * cosYaw + sinRoll * sinPitch * sinYaw);
- }
-
- MT_Quaternion& operator*=(const MT_Quaternion& q);
-
- void conjugate();
- MT_Quaternion conjugate() const;
-
- void invert();
- MT_Quaternion inverse() const;
-
- MT_Scalar angle(const MT_Quaternion& q) const;
- MT_Quaternion slerp(const MT_Quaternion& q, const MT_Scalar& t) const;
-
- static MT_Quaternion random();
-};
-
-MT_Quaternion operator*(const MT_Quaternion& q1, const MT_Quaternion& q2);
-MT_Quaternion operator*(const MT_Quaternion& q, const MT_Vector3& w);
-MT_Quaternion operator*(const MT_Vector3& w, const MT_Quaternion& q);
-
-#ifdef GEN_INLINED
-#include "MT_Quaternion.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Quaternion.inl b/intern/moto/include/MT_Quaternion.inl
deleted file mode 100644
index 8fe71b7b214..00000000000
--- a/intern/moto/include/MT_Quaternion.inl
+++ /dev/null
@@ -1,100 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Quaternion& MT_Quaternion::operator*=(const MT_Quaternion& q) {
- setValue(m_co[3] * q[0] + m_co[0] * q[3] + m_co[1] * q[2] - m_co[2] * q[1],
- m_co[3] * q[1] + m_co[1] * q[3] + m_co[2] * q[0] - m_co[0] * q[2],
- m_co[3] * q[2] + m_co[2] * q[3] + m_co[0] * q[1] - m_co[1] * q[0],
- m_co[3] * q[3] - m_co[0] * q[0] - m_co[1] * q[1] - m_co[2] * q[2]);
- return *this;
-}
-
-GEN_INLINE void MT_Quaternion::conjugate() {
- m_co[0] = -m_co[0]; m_co[1] = -m_co[1]; m_co[2] = -m_co[2];
-}
-
-GEN_INLINE MT_Quaternion MT_Quaternion::conjugate() const {
- return MT_Quaternion(-m_co[0], -m_co[1], -m_co[2], m_co[3]);
-}
-
-GEN_INLINE void MT_Quaternion::invert() {
- conjugate();
- *this /= length2();
-}
-
-GEN_INLINE MT_Quaternion MT_Quaternion::inverse() const {
- return conjugate() / length2();
-}
-
-// From: "Uniform Random Rotations", Ken Shoemake, Graphics Gems III,
-// pg. 124-132
-GEN_INLINE MT_Quaternion MT_Quaternion::random() {
- MT_Scalar x0 = MT_random();
- MT_Scalar r1 = sqrtf(MT_Scalar(1.0f) - x0), r2 = sqrtf(x0);
- MT_Scalar t1 = (float)MT_2_PI * MT_random(), t2 = (float)MT_2_PI * MT_random();
- MT_Scalar c1 = cosf(t1), s1 = sinf(t1);
- MT_Scalar c2 = cosf(t2), s2 = sinf(t2);
- return MT_Quaternion(s1 * r1, c1 * r1, s2 * r2, c2 * r2);
-}
-
-GEN_INLINE MT_Quaternion operator*(const MT_Quaternion& q1,
- const MT_Quaternion& q2) {
- return MT_Quaternion(q1[3] * q2[0] + q1[0] * q2[3] + q1[1] * q2[2] - q1[2] * q2[1],
- q1[3] * q2[1] + q1[1] * q2[3] + q1[2] * q2[0] - q1[0] * q2[2],
- q1[3] * q2[2] + q1[2] * q2[3] + q1[0] * q2[1] - q1[1] * q2[0],
- q1[3] * q2[3] - q1[0] * q2[0] - q1[1] * q2[1] - q1[2] * q2[2]);
-}
-
-GEN_INLINE MT_Quaternion operator*(const MT_Quaternion& q, const MT_Vector3& w)
-{
- return MT_Quaternion( q[3] * w[0] + q[1] * w[2] - q[2] * w[1],
- q[3] * w[1] + q[2] * w[0] - q[0] * w[2],
- q[3] * w[2] + q[0] * w[1] - q[1] * w[0],
- -q[0] * w[0] - q[1] * w[1] - q[2] * w[2]);
-}
-
-GEN_INLINE MT_Quaternion operator*(const MT_Vector3& w, const MT_Quaternion& q)
-{
- return MT_Quaternion( w[0] * q[3] + w[1] * q[2] - w[2] * q[1],
- w[1] * q[3] + w[2] * q[0] - w[0] * q[2],
- w[2] * q[3] + w[0] * q[1] - w[1] * q[0],
- -w[0] * q[0] - w[1] * q[1] - w[2] * q[2]);
-}
-
-GEN_INLINE MT_Scalar MT_Quaternion::angle(const MT_Quaternion& q) const
-{
- MT_Scalar s = sqrtf(length2() * q.length2());
- assert(s != MT_Scalar(0.0f));
-
- s = dot(q) / s;
-
- s = MT_clamp(s, -1.0f, 1.0f);
-
- return acosf(s);
-}
-
-GEN_INLINE MT_Quaternion MT_Quaternion::slerp(const MT_Quaternion& q, const MT_Scalar& t) const
-{
- MT_Scalar d, s0, s1;
- MT_Scalar s = dot(q);
- bool neg = (s < 0.0f);
-
- if (neg)
- s = -s;
- if ((1.0f - s) > 0.0001f)
- {
- MT_Scalar theta = acosf(s);
- d = MT_Scalar(1.0f) / sinf(theta);
- s0 = sinf((MT_Scalar(1.0f) - t) * theta);
- s1 = sinf(t * theta);
- }
- else
- {
- d = MT_Scalar(1.0f);
- s0 = MT_Scalar(1.0f) - t;
- s1 = t;
- }
- if (neg)
- s1 = -s1;
- return d*(*this * s0 + q * s1);
-}
-
diff --git a/intern/moto/include/MT_Scalar.h b/intern/moto/include/MT_Scalar.h
deleted file mode 100644
index 94723f4d7ec..00000000000
--- a/intern/moto/include/MT_Scalar.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Scalar.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_SCALAR_H
-#define MT_SCALAR_H
-
-#include <math.h>
-#include <float.h>
-
-#include "MT_random.h"
-
-typedef float MT_Scalar;
-
-
-const MT_Scalar MT_DEGS_PER_RAD(57.29577951308232286465);
-const MT_Scalar MT_RADS_PER_DEG(0.01745329251994329547);
-const MT_Scalar MT_PI(3.14159265358979323846);
-const MT_Scalar MT_2_PI(6.28318530717958623200);
-const MT_Scalar MT_EPSILON(1.0e-10);
-const MT_Scalar MT_EPSILON2(1.0e-20);
-const MT_Scalar MT_INFINITY(1.0e38);
-
-inline int MT_sign(MT_Scalar x) {
- return x < 0.0f ? -1 : x > 0.0f ? 1 : 0;
-}
-
-inline MT_Scalar MT_abs(MT_Scalar x) { return fabs(x); }
-
-inline bool MT_fuzzyZero(MT_Scalar x) { return MT_abs(x) < (float)MT_EPSILON; }
-inline bool MT_fuzzyZero2(MT_Scalar x) { return MT_abs(x) < (float)MT_EPSILON2; }
-
-inline MT_Scalar MT_radians(MT_Scalar x) {
- return x * (float)MT_RADS_PER_DEG;
-}
-
-inline MT_Scalar MT_degrees(MT_Scalar x) {
- return x * (float)MT_DEGS_PER_RAD;
-}
-
-inline MT_Scalar MT_random() {
- return MT_Scalar(MT_rand()) / MT_Scalar(MT_RAND_MAX);
-}
-
-inline MT_Scalar MT_clamp(const MT_Scalar x, const MT_Scalar min, const MT_Scalar max)
-{
- if (x < min)
- return min;
- else if (x > max)
- return max;
- return x;
-}
-#endif
-
diff --git a/intern/moto/include/MT_Stream.h b/intern/moto/include/MT_Stream.h
deleted file mode 100644
index 42861e6c099..00000000000
--- a/intern/moto/include/MT_Stream.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Stream.h
- * \ingroup moto
- */
-
-
-#ifndef GEN_STREAM_H
-#define GEN_STREAM_H
-
-#ifdef __CUSTOM_STREAM
-
-class MT_OStream
-{
-public:
- inline MT_OStream& operator<<(double);
- inline MT_OStream& operator<<(int);
- inline MT_OStream& operator<<(char*);
-};
-
-const char GEN_endl = '\n';
-
-#else
-
-#include <iostream>
-
-typedef std::ostream MT_OStream;
-
-inline MT_OStream& GEN_endl(MT_OStream& os) { return std::endl(os); }
-
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Transform.h b/intern/moto/include/MT_Transform.h
deleted file mode 100644
index 9c23482925c..00000000000
--- a/intern/moto/include/MT_Transform.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Transform.h
- * \ingroup moto
- */
-
-
-/*
-
- MoTo - 3D Motion Toolkit
- Copyright (C) 2000 Gino van den Bergen <gino@acm.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with this library; if not, write to the Free
- Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
-
-#ifndef MT_TRANSFORM_H
-#define MT_TRANSFORM_H
-
-#include "MT_Point3.h"
-#include "MT_Matrix3x3.h"
-
-class MT_Transform {
-public:
- MT_Transform() {}
- MT_Transform(const float *m) { setValue(m); }
- MT_Transform(const double *m) { setValue(m); }
- MT_Transform(const MT_Point3& p, const MT_Quaternion& q)
- : m_type(IDENTITY)
- {
- setOrigin(p);
- setRotation(q);
- }
-
- MT_Transform(const MT_Point3& p, const MT_Matrix3x3& m)
- : m_type(IDENTITY)
- {
- setOrigin(p);
- setBasis(m);
- }
-
- static MT_Transform Identity()
- {
- MT_Transform t;
- t.setIdentity();
- return t;
- }
-
-
- MT_Point3 operator()(const MT_Point3& p) const {
- return MT_Point3(MT_dot(m_basis[0], p) + m_origin[0],
- MT_dot(m_basis[1], p) + m_origin[1],
- MT_dot(m_basis[2], p) + m_origin[2]);
- }
-
- MT_Vector3 operator()(const MT_Vector3& p) const {
- return MT_Vector3(MT_dot(m_basis[0], p) + m_origin[0],
- MT_dot(m_basis[1], p) + m_origin[1],
- MT_dot(m_basis[2], p) + m_origin[2]);
- }
-
- MT_Point3 operator*(const MT_Point3& p) const {
- return (*this)(p);
- }
-
- MT_Vector3 operator*(const MT_Vector3& p) const {
- return (*this)(p);
- }
-
-
- MT_Matrix3x3& getBasis() { return m_basis; }
- const MT_Matrix3x3& getBasis() const { return m_basis; }
- MT_Point3& getOrigin() { return m_origin; }
- const MT_Point3& getOrigin() const { return m_origin; }
- MT_Quaternion getRotation() const { return m_basis.getRotation(); }
-
- void setValue(const float *m);
- void setValue(const double *m);
-
- void setOrigin(const MT_Point3& origin) {
- m_origin = origin;
- m_type |= TRANSLATION;
- }
-
- void setBasis(const MT_Matrix3x3& basis) {
- m_basis = basis;
- m_type |= LINEAR;
- }
-
- void setRotation(const MT_Quaternion& q) {
- m_basis.setRotation(q);
- m_type &= ~SCALING;
- m_type |= ROTATION;
- }
-
- void getValue(float *m) const;
- void getValue(double *m) const;
-
- void setIdentity();
-
- MT_Transform& operator*=(const MT_Transform& t);
-
- /**
- * Translate the origin of the transform according to the vector.
- * @param v The vector to translate over. The vector is specified
- * in the coordinate system of the transform itself.
- */
- void translate(const MT_Vector3& v);
- void rotate(const MT_Quaternion& q);
- void scale(MT_Scalar x, MT_Scalar y, MT_Scalar z);
-
- void invert(const MT_Transform& t);
- void mult(const MT_Transform& t1, const MT_Transform& t2);
- void multInverseLeft(const MT_Transform& t1, const MT_Transform& t2);
-
-private:
- enum {
- IDENTITY = 0x00,
- TRANSLATION = 0x01,
- ROTATION = 0x02,
- RIGID = TRANSLATION | ROTATION,
- SCALING = 0x04,
- LINEAR = ROTATION | SCALING,
- AFFINE = TRANSLATION | LINEAR
- };
-
- MT_Transform(const MT_Matrix3x3& basis, const MT_Point3& origin,
- unsigned int type) {
- setValue(basis, origin, type);
- }
-
- void setValue(const MT_Matrix3x3& basis, const MT_Point3& origin,
- unsigned int type) {
- m_basis = basis;
- m_origin = origin;
- m_type = type;
- }
-
- friend MT_Transform operator*(const MT_Transform& t1, const MT_Transform& t2);
-
- MT_Matrix3x3 m_basis;
- MT_Point3 m_origin;
- unsigned int m_type;
-};
-
-inline MT_Transform operator*(const MT_Transform& t1, const MT_Transform& t2) {
- return MT_Transform(t1.m_basis * t2.m_basis,
- t1(t2.m_origin),
- t1.m_type | t2.m_type);
-}
-
-#endif
-
diff --git a/intern/moto/include/MT_Tuple2.h b/intern/moto/include/MT_Tuple2.h
deleted file mode 100644
index 465b31a6781..00000000000
--- a/intern/moto/include/MT_Tuple2.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Tuple2.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_Tuple2_H
-#define MT_Tuple2_H
-
-#include "MT_Stream.h"
-#include "MT_Scalar.h"
-
-class MT_Tuple2 {
-public:
- MT_Tuple2() {}
- MT_Tuple2(const float *vv) { setValue(vv); }
- MT_Tuple2(const double *vv) { setValue(vv); }
- MT_Tuple2(MT_Scalar xx, MT_Scalar yy) { setValue(xx, yy); }
-
- MT_Scalar& operator[](int i) { return m_co[i]; }
- const MT_Scalar& operator[](int i) const { return m_co[i]; }
-
- MT_Scalar& x() { return m_co[0]; }
- const MT_Scalar& x() const { return m_co[0]; }
-
- MT_Scalar& y() { return m_co[1]; }
- const MT_Scalar& y() const { return m_co[1]; }
-
- MT_Scalar& u() { return m_co[0]; }
- const MT_Scalar& u() const { return m_co[0]; }
-
- MT_Scalar& v() { return m_co[1]; }
- const MT_Scalar& v() const { return m_co[1]; }
-
- MT_Scalar *getValue() { return m_co; }
- const MT_Scalar *getValue() const { return m_co; }
-
- void getValue(float *vv) const {
- vv[0] = (float) m_co[0]; vv[1] = (float) m_co[1];
- }
-
- void getValue(double *vv) const {
- vv[0] = m_co[0]; vv[1] = m_co[1];
- }
-
- void setValue(const float *vv) {
- m_co[0] = vv[0]; m_co[1] = vv[1];
- }
-
- void setValue(const double *vv) {
- m_co[0] = vv[0]; m_co[1] = vv[1];
- }
-
- void setValue(MT_Scalar xx, MT_Scalar yy) {
- m_co[0] = xx; m_co[1] = yy;
- }
-
-protected:
- MT_Scalar m_co[2];
-};
-
-inline bool operator==(const MT_Tuple2& t1, const MT_Tuple2& t2) {
- return t1[0] == t2[0] && t1[1] == t2[1];
-}
-
-inline MT_OStream& operator<<(MT_OStream& os, const MT_Tuple2& t) {
- return os << t[0] << ' ' << t[1];
-}
-
-#endif
-
diff --git a/intern/moto/include/MT_Tuple3.h b/intern/moto/include/MT_Tuple3.h
deleted file mode 100644
index ddd8ed724ca..00000000000
--- a/intern/moto/include/MT_Tuple3.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Tuple3.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_TUPLE3_H
-#define MT_TUPLE3_H
-
-#include "MT_Stream.h"
-#include "MT_Scalar.h"
-
-class MT_Tuple3 {
-public:
- MT_Tuple3() {}
- MT_Tuple3(const float *v) { setValue(v); }
- MT_Tuple3(const double *v) { setValue(v); }
- MT_Tuple3(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) { setValue(xx, yy, zz); }
-
- MT_Scalar& operator[](int i) { return m_co[i]; }
- const MT_Scalar& operator[](int i) const { return m_co[i]; }
-
- MT_Scalar& x() { return m_co[0]; }
- const MT_Scalar& x() const { return m_co[0]; }
-
- MT_Scalar& y() { return m_co[1]; }
- const MT_Scalar& y() const { return m_co[1]; }
-
- MT_Scalar& z() { return m_co[2]; }
- const MT_Scalar& z() const { return m_co[2]; }
-
- MT_Scalar *getValue() { return m_co; }
- const MT_Scalar *getValue() const { return m_co; }
-
- void getValue(float *v) const {
- v[0] = float(m_co[0]);
- v[1] = float(m_co[1]);
- v[2] = float(m_co[2]);
- }
-
- void getValue(double *v) const {
- v[0] = double(m_co[0]);
- v[1] = double(m_co[1]);
- v[2] = double(m_co[2]);
- }
-
- void setValue(const float *v) {
- m_co[0] = MT_Scalar(v[0]);
- m_co[1] = MT_Scalar(v[1]);
- m_co[2] = MT_Scalar(v[2]);
- }
-
- void setValue(const double *v) {
- m_co[0] = MT_Scalar(v[0]);
- m_co[1] = MT_Scalar(v[1]);
- m_co[2] = MT_Scalar(v[2]);
- }
-
- void setValue(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) {
- m_co[0] = xx; m_co[1] = yy; m_co[2] = zz;
- }
-
-protected:
- MT_Scalar m_co[3];
-};
-
-inline bool operator==(const MT_Tuple3& t1, const MT_Tuple3& t2) {
- return t1[0] == t2[0] && t1[1] == t2[1] && t1[2] == t2[2];
-}
-
-inline MT_OStream& operator<<(MT_OStream& os, const MT_Tuple3& t) {
- return os << t[0] << ' ' << t[1] << ' ' << t[2];
-}
-
-#endif
-
diff --git a/intern/moto/include/MT_Tuple4.h b/intern/moto/include/MT_Tuple4.h
deleted file mode 100644
index aa3b60f1c9b..00000000000
--- a/intern/moto/include/MT_Tuple4.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Tuple4.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_TUPLE4_H
-#define MT_TUPLE4_H
-
-#include "MT_Stream.h"
-#include "MT_Scalar.h"
-
-class MT_Tuple4 {
-public:
- MT_Tuple4() {}
- MT_Tuple4(const float *v) { setValue(v); }
- MT_Tuple4(const double *v) { setValue(v); }
- MT_Tuple4(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) {
- setValue(xx, yy, zz, ww);
- }
-
- MT_Scalar& operator[](int i) { return m_co[i]; }
- const MT_Scalar& operator[](int i) const { return m_co[i]; }
-
- MT_Scalar& x() { return m_co[0]; }
- const MT_Scalar& x() const { return m_co[0]; }
-
- MT_Scalar& y() { return m_co[1]; }
- const MT_Scalar& y() const { return m_co[1]; }
-
- MT_Scalar& z() { return m_co[2]; }
- const MT_Scalar& z() const { return m_co[2]; }
-
- MT_Scalar& w() { return m_co[3]; }
- const MT_Scalar& w() const { return m_co[3]; }
-
- MT_Scalar *getValue() { return m_co; }
- const MT_Scalar *getValue() const { return m_co; }
-
-
- void getValue(float *v) const {
- v[0] = float(m_co[0]);
- v[1] = float(m_co[1]);
- v[2] = float(m_co[2]);
- v[3] = float(m_co[3]);
- }
-
- void getValue(double *v) const {
- v[0] = double(m_co[0]);
- v[1] = double(m_co[1]);
- v[2] = double(m_co[2]);
- v[3] = double(m_co[3]);
- }
-
- void setValue(const float *v) {
- m_co[0] = MT_Scalar(v[0]);
- m_co[1] = MT_Scalar(v[1]);
- m_co[2] = MT_Scalar(v[2]);
- m_co[3] = MT_Scalar(v[3]);
- }
-
- void setValue(const double *v) {
- m_co[0] = MT_Scalar(v[0]);
- m_co[1] = MT_Scalar(v[1]);
- m_co[2] = MT_Scalar(v[2]);
- m_co[3] = MT_Scalar(v[3]);
- }
-
- void setValue(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) {
- m_co[0] = xx; m_co[1] = yy; m_co[2] = zz; m_co[3] = ww;
- }
-
-protected:
- MT_Scalar m_co[4];
-};
-
-inline bool operator==(const MT_Tuple4& t1, const MT_Tuple4& t2) {
- return t1[0] == t2[0] && t1[1] == t2[1] && t1[2] == t2[2] && t1[3] == t2[3];
-}
-
-inline MT_OStream& operator<<(MT_OStream& os, const MT_Tuple4& t) {
- return os << t[0] << ' ' << t[1] << ' ' << t[2] << ' ' << t[3];
-}
-
-#endif
-
diff --git a/intern/moto/include/MT_Vector2.h b/intern/moto/include/MT_Vector2.h
deleted file mode 100644
index 8b8f2478ce3..00000000000
--- a/intern/moto/include/MT_Vector2.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Vector2.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_VECTOR2_H
-#define MT_VECTOR2_H
-
-#include <MT_assert.h>
-#include "MT_Tuple2.h"
-
-class MT_Vector2 : public MT_Tuple2 {
-public:
- MT_Vector2() {}
- MT_Vector2(const float *v2) : MT_Tuple2(v2) {}
- MT_Vector2(const double *v2) : MT_Tuple2(v2) {}
- MT_Vector2(MT_Scalar xx, MT_Scalar yy) : MT_Tuple2(xx, yy) {}
-
- MT_Vector2& operator+=(const MT_Vector2& v);
- MT_Vector2& operator-=(const MT_Vector2& v);
- MT_Vector2& operator*=(MT_Scalar s);
- MT_Vector2& operator/=(MT_Scalar s);
-
- MT_Scalar dot(const MT_Vector2& v) const;
-
- MT_Scalar length2() const;
- MT_Scalar length() const;
-
- MT_Vector2 absolute() const;
-
- void normalize();
- MT_Vector2 normalized() const;
-
- void scale(MT_Scalar x, MT_Scalar y);
- MT_Vector2 scaled(MT_Scalar x, MT_Scalar y) const;
-
- bool fuzzyZero() const;
-
- MT_Scalar angle(const MT_Vector2& v) const;
- MT_Vector2 cross(const MT_Vector2& v) const;
- MT_Scalar triple(const MT_Vector2& v1, const MT_Vector2& v2) const;
-
- int closestAxis() const;
-
- static MT_Vector2 random();
-};
-
-MT_Vector2 operator+(const MT_Vector2& v1, const MT_Vector2& v2);
-MT_Vector2 operator-(const MT_Vector2& v1, const MT_Vector2& v2);
-MT_Vector2 operator-(const MT_Vector2& v);
-MT_Vector2 operator*(const MT_Vector2& v, MT_Scalar s);
-MT_Vector2 operator*(MT_Scalar s, const MT_Vector2& v);
-MT_Vector2 operator/(const MT_Vector2& v, MT_Scalar s);
-
-MT_Scalar MT_dot(const MT_Vector2& v1, const MT_Vector2& v2);
-
-MT_Scalar MT_length2(const MT_Vector2& v);
-MT_Scalar MT_length(const MT_Vector2& v);
-
-bool MT_fuzzyZero(const MT_Vector2& v);
-bool MT_fuzzyEqual(const MT_Vector2& v1, const MT_Vector2& v2);
-
-MT_Scalar MT_angle(const MT_Vector2& v1, const MT_Vector2& v2);
-MT_Vector2 MT_cross(const MT_Vector2& v1, const MT_Vector2& v2);
-MT_Scalar MT_triple(const MT_Vector2& v1, const MT_Vector2& v2,
- const MT_Vector2& v3);
-
-#ifdef GEN_INLINED
-#include "MT_Vector2.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Vector2.inl b/intern/moto/include/MT_Vector2.inl
deleted file mode 100644
index ed16025e733..00000000000
--- a/intern/moto/include/MT_Vector2.inl
+++ /dev/null
@@ -1,89 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Vector2& MT_Vector2::operator+=(const MT_Vector2& vv) {
- m_co[0] += vv[0]; m_co[1] += vv[1];
- return *this;
-}
-
-GEN_INLINE MT_Vector2& MT_Vector2::operator-=(const MT_Vector2& vv) {
- m_co[0] -= vv[0]; m_co[1] -= vv[1];
- return *this;
-}
-
-GEN_INLINE MT_Vector2& MT_Vector2::operator*=(MT_Scalar s) {
- m_co[0] *= s; m_co[1] *= s;
- return *this;
-}
-
-GEN_INLINE MT_Vector2& MT_Vector2::operator/=(MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return *this *= 1.0f / s;
-}
-
-GEN_INLINE MT_Vector2 operator+(const MT_Vector2& v1, const MT_Vector2& v2) {
- return MT_Vector2(v1[0] + v2[0], v1[1] + v2[1]);
-}
-
-GEN_INLINE MT_Vector2 operator-(const MT_Vector2& v1, const MT_Vector2& v2) {
- return MT_Vector2(v1[0] - v2[0], v1[1] - v2[1]);
-}
-
-GEN_INLINE MT_Vector2 operator-(const MT_Vector2& v) {
- return MT_Vector2(-v[0], -v[1]);
-}
-
-GEN_INLINE MT_Vector2 operator*(const MT_Vector2& v, MT_Scalar s) {
- return MT_Vector2(v[0] * s, v[1] * s);
-}
-
-GEN_INLINE MT_Vector2 operator*(MT_Scalar s, const MT_Vector2& v) { return v * s; }
-
-GEN_INLINE MT_Vector2 operator/(const MT_Vector2& v, MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return v * (1.0f / s);
-}
-
-GEN_INLINE MT_Scalar MT_Vector2::dot(const MT_Vector2& vv) const {
- return m_co[0] * vv[0] + m_co[1] * vv[1];
-}
-
-GEN_INLINE MT_Scalar MT_Vector2::length2() const { return dot(*this); }
-GEN_INLINE MT_Scalar MT_Vector2::length() const { return sqrtf(length2()); }
-
-GEN_INLINE MT_Vector2 MT_Vector2::absolute() const {
- return MT_Vector2(MT_abs(m_co[0]), MT_abs(m_co[1]));
-}
-
-GEN_INLINE bool MT_Vector2::fuzzyZero() const { return MT_fuzzyZero2(length2()); }
-
-GEN_INLINE void MT_Vector2::normalize() { *this /= length(); }
-GEN_INLINE MT_Vector2 MT_Vector2::normalized() const { return *this / length(); }
-
-GEN_INLINE void MT_Vector2::scale(MT_Scalar xx, MT_Scalar yy) {
- m_co[0] *= xx; m_co[1] *= yy;
-}
-
-GEN_INLINE MT_Vector2 MT_Vector2::scaled(MT_Scalar xx, MT_Scalar yy) const {
- return MT_Vector2(m_co[0] * xx, m_co[1] * yy);
-}
-
-GEN_INLINE MT_Scalar MT_Vector2::angle(const MT_Vector2& vv) const {
- MT_Scalar s = sqrtf(length2() * vv.length2());
- MT_assert(!MT_fuzzyZero(s));
- return acosf(dot(vv) / s);
-}
-
-
-GEN_INLINE MT_Scalar MT_dot(const MT_Vector2& v1, const MT_Vector2& v2) {
- return v1.dot(v2);
-}
-
-GEN_INLINE MT_Scalar MT_length2(const MT_Vector2& v) { return v.length2(); }
-GEN_INLINE MT_Scalar MT_length(const MT_Vector2& v) { return v.length(); }
-
-GEN_INLINE bool MT_fuzzyZero(const MT_Vector2& v) { return v.fuzzyZero(); }
-GEN_INLINE bool MT_fuzzyEqual(const MT_Vector2& v1, const MT_Vector2& v2) {
- return MT_fuzzyZero(v1 - v2);
-}
-
-GEN_INLINE MT_Scalar MT_angle(const MT_Vector2& v1, const MT_Vector2& v2) { return v1.angle(v2); }
diff --git a/intern/moto/include/MT_Vector3.h b/intern/moto/include/MT_Vector3.h
deleted file mode 100644
index 545ca1fad0b..00000000000
--- a/intern/moto/include/MT_Vector3.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Vector3.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_VECTOR3_H
-#define MT_VECTOR3_H
-
-#include <MT_assert.h>
-#include "MT_Tuple3.h"
-
-class MT_Vector3 : public MT_Tuple3 {
-public:
- MT_Vector3() {}
- MT_Vector3(const float *v) : MT_Tuple3(v) {}
- MT_Vector3(const double *v) : MT_Tuple3(v) {}
- MT_Vector3(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) : MT_Tuple3(xx, yy, zz) {}
-
- MT_Vector3& operator+=(const MT_Vector3& v);
- MT_Vector3& operator-=(const MT_Vector3& v);
- MT_Vector3& operator*=(MT_Scalar s);
- MT_Vector3& operator/=(MT_Scalar s);
-
- MT_Scalar dot(const MT_Vector3& v) const;
-
- MT_Scalar length2() const;
- MT_Scalar length() const;
-
- MT_Vector3 absolute() const;
-
- void noiseGate(MT_Scalar threshold);
-
- void normalize();
- MT_Vector3 normalized() const;
- MT_Vector3 safe_normalized() const;
- MT_Vector3 safe_normalized_vec(MT_Vector3 vecnormalized) const;
-
- void scale(MT_Scalar x, MT_Scalar y, MT_Scalar z);
- MT_Vector3 scaled(MT_Scalar x, MT_Scalar y, MT_Scalar z) const;
-
- bool fuzzyZero() const;
-
- MT_Scalar angle(const MT_Vector3& v) const;
- MT_Vector3 cross(const MT_Vector3& v) const;
- MT_Scalar triple(const MT_Vector3& v1, const MT_Vector3& v2) const;
-
- int closestAxis() const;
-
- static MT_Vector3 random();
-};
-
-MT_Vector3 operator+(const MT_Vector3& v1, const MT_Vector3& v2);
-MT_Vector3 operator-(const MT_Vector3& v1, const MT_Vector3& v2);
-MT_Vector3 operator-(const MT_Vector3& v);
-MT_Vector3 operator*(const MT_Vector3& v, MT_Scalar s);
-MT_Vector3 operator*(MT_Scalar s, const MT_Vector3& v);
-MT_Vector3 operator/(const MT_Vector3& v, MT_Scalar s);
-
-MT_Vector3 operator*(const MT_Vector3& v1, const MT_Vector3& v2);
-
-MT_Scalar MT_dot(const MT_Vector3& v1, const MT_Vector3& v2);
-
-MT_Scalar MT_length2(const MT_Vector3& v);
-MT_Scalar MT_length(const MT_Vector3& v);
-
-bool MT_fuzzyZero(const MT_Vector3& v);
-bool MT_fuzzyEqual(const MT_Vector3& v1, const MT_Vector3& v2);
-
-MT_Scalar MT_angle(const MT_Vector3& v1, const MT_Vector3& v2);
-MT_Vector3 MT_cross(const MT_Vector3& v1, const MT_Vector3& v2);
-MT_Scalar MT_triple(const MT_Vector3& v1, const MT_Vector3& v2,
- const MT_Vector3& v3);
-
-#ifdef GEN_INLINED
-#include "MT_Vector3.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Vector3.inl b/intern/moto/include/MT_Vector3.inl
deleted file mode 100644
index 7994bf7c55c..00000000000
--- a/intern/moto/include/MT_Vector3.inl
+++ /dev/null
@@ -1,141 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Vector3& MT_Vector3::operator+=(const MT_Vector3& v) {
- m_co[0] += v[0]; m_co[1] += v[1]; m_co[2] += v[2];
- return *this;
-}
-
-GEN_INLINE MT_Vector3& MT_Vector3::operator-=(const MT_Vector3& v) {
- m_co[0] -= v[0]; m_co[1] -= v[1]; m_co[2] -= v[2];
- return *this;
-}
-
-GEN_INLINE MT_Vector3& MT_Vector3::operator*=(MT_Scalar s) {
- m_co[0] *= s; m_co[1] *= s; m_co[2] *= s;
- return *this;
-}
-
-GEN_INLINE MT_Vector3& MT_Vector3::operator/=(MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return *this *= MT_Scalar(1.0f) / s;
-}
-
-GEN_INLINE MT_Vector3 operator+(const MT_Vector3& v1, const MT_Vector3& v2) {
- return MT_Vector3(v1[0] + v2[0], v1[1] + v2[1], v1[2] + v2[2]);
-}
-
-GEN_INLINE MT_Vector3 operator-(const MT_Vector3& v1, const MT_Vector3& v2) {
- return MT_Vector3(v1[0] - v2[0], v1[1] - v2[1], v1[2] - v2[2]);
-}
-
-GEN_INLINE MT_Vector3 operator-(const MT_Vector3& v) {
- return MT_Vector3(-v[0], -v[1], -v[2]);
-}
-
-GEN_INLINE MT_Vector3 operator*(const MT_Vector3& v, MT_Scalar s) {
- return MT_Vector3(v[0] * s, v[1] * s, v[2] * s);
-}
-
-GEN_INLINE MT_Vector3 operator*(MT_Scalar s, const MT_Vector3& v) { return v * s; }
-
-GEN_INLINE MT_Vector3 operator/(const MT_Vector3& v, MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return v * (MT_Scalar(1.0f) / s);
-}
-
-GEN_INLINE MT_Vector3 operator*(const MT_Vector3& v1, const MT_Vector3& v2) {
- return MT_Vector3(v1[0] * v2[0], v1[1] * v2[1], v1[2] * v2[2]);
-}
-
-GEN_INLINE MT_Scalar MT_Vector3::dot(const MT_Vector3& v) const {
- return m_co[0] * v[0] + m_co[1] * v[1] + m_co[2] * v[2];
-}
-
-GEN_INLINE MT_Scalar MT_Vector3::length2() const { return dot(*this); }
-GEN_INLINE MT_Scalar MT_Vector3::length() const { return sqrtf(length2()); }
-
-GEN_INLINE MT_Vector3 MT_Vector3::absolute() const {
- return MT_Vector3(MT_abs(m_co[0]), MT_abs(m_co[1]), MT_abs(m_co[2]));
-}
-
-GEN_INLINE bool MT_Vector3::fuzzyZero() const {
- return MT_fuzzyZero(length2());
-}
-
-GEN_INLINE void MT_Vector3::noiseGate(MT_Scalar threshold) {
- if (length2() < threshold) {
- setValue(MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(0.0f));
- }
-}
-
-GEN_INLINE void MT_Vector3::normalize() { *this /= length(); }
-GEN_INLINE MT_Vector3 MT_Vector3::normalized() const { return *this / length(); }
-GEN_INLINE MT_Vector3 MT_Vector3::safe_normalized() const {
- MT_Scalar len = length();
- return MT_fuzzyZero(len) ?
- MT_Vector3(MT_Scalar(1.0f), MT_Scalar(0.0f), MT_Scalar(0.0f)) :
- *this / len;
-}
-
-GEN_INLINE MT_Vector3 MT_Vector3::safe_normalized_vec(MT_Vector3 vecnormalized) const {
- MT_Scalar len = length();
- return MT_fuzzyZero(len) ?
- vecnormalized :
- *this / len;
-}
-
-GEN_INLINE void MT_Vector3::scale(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) {
- m_co[0] *= xx; m_co[1] *= yy; m_co[2] *= zz;
-}
-
-GEN_INLINE MT_Vector3 MT_Vector3::scaled(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz) const {
- return MT_Vector3(m_co[0] * xx, m_co[1] * yy, m_co[2] * zz);
-}
-
-GEN_INLINE MT_Scalar MT_Vector3::angle(const MT_Vector3& v) const {
- MT_Scalar s = sqrtf(length2() * v.length2());
- MT_assert(!MT_fuzzyZero(s));
- return acosf(dot(v) / s);
-}
-
-GEN_INLINE MT_Vector3 MT_Vector3::cross(const MT_Vector3& v) const {
- return MT_Vector3(m_co[1] * v[2] - m_co[2] * v[1],
- m_co[2] * v[0] - m_co[0] * v[2],
- m_co[0] * v[1] - m_co[1] * v[0]);
-}
-
-GEN_INLINE MT_Scalar MT_Vector3::triple(const MT_Vector3& v1, const MT_Vector3& v2) const {
- return m_co[0] * (v1[1] * v2[2] - v1[2] * v2[1]) +
- m_co[1] * (v1[2] * v2[0] - v1[0] * v2[2]) +
- m_co[2] * (v1[0] * v2[1] - v1[1] * v2[0]);
-}
-
-GEN_INLINE int MT_Vector3::closestAxis() const {
- MT_Vector3 a = absolute();
- return a[0] < a[1] ? (a[1] < a[2] ? 2 : 1) : (a[0] < a[2] ? 2 : 0);
-}
-
-GEN_INLINE MT_Vector3 MT_Vector3::random() {
- MT_Scalar z = MT_Scalar(2.0f) * MT_random() - MT_Scalar(1.0f);
- MT_Scalar r = sqrtf(MT_Scalar(1.0f) - z * z);
- MT_Scalar t = (float)MT_2_PI * MT_random();
- return MT_Vector3(r * cosf(t), r * sinf(t), z);
-}
-
-GEN_INLINE MT_Scalar MT_dot(const MT_Vector3& v1, const MT_Vector3& v2) {
- return v1.dot(v2);
-}
-
-GEN_INLINE MT_Scalar MT_length2(const MT_Vector3& v) { return v.length2(); }
-GEN_INLINE MT_Scalar MT_length(const MT_Vector3& v) { return v.length(); }
-
-GEN_INLINE bool MT_fuzzyZero(const MT_Vector3& v) { return v.fuzzyZero(); }
-GEN_INLINE bool MT_fuzzyEqual(const MT_Vector3& v1, const MT_Vector3& v2) {
- return MT_fuzzyZero(v1 - v2);
-}
-
-GEN_INLINE MT_Scalar MT_angle(const MT_Vector3& v1, const MT_Vector3& v2) { return v1.angle(v2); }
-GEN_INLINE MT_Vector3 MT_cross(const MT_Vector3& v1, const MT_Vector3& v2) { return v1.cross(v2); }
-GEN_INLINE MT_Scalar MT_triple(const MT_Vector3& v1, const MT_Vector3& v2, const MT_Vector3& v3) {
- return v1.triple(v2, v3);
-}
diff --git a/intern/moto/include/MT_Vector4.h b/intern/moto/include/MT_Vector4.h
deleted file mode 100644
index 440bf9b84f1..00000000000
--- a/intern/moto/include/MT_Vector4.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_Vector4.h
- * \ingroup moto
- */
-
-
-/*
-
- * Copyright (c) 2000 Gino van den Bergen <gino@acm.org>
- *
- * Permission to use, copy, modify, distribute and sell this software
- * and its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and
- * that both that copyright notice and this permission notice appear
- * in supporting documentation. Gino van den Bergen makes no
- * representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied warranty.
- *
- */
-
-#ifndef MT_VECTOR4_H
-#define MT_VECTOR4_H
-
-#include <MT_assert.h>
-
-#include "MT_Tuple4.h"
-
-class MT_Vector4 : public MT_Tuple4 {
-public:
- MT_Vector4() {}
- MT_Vector4(const float *v) : MT_Tuple4(v) {}
- MT_Vector4(const double *v) : MT_Tuple4(v) {}
- MT_Vector4(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) :
- MT_Tuple4(xx, yy, zz, ww) {}
-
- MT_Vector4& operator+=(const MT_Vector4& v);
- MT_Vector4& operator-=(const MT_Vector4& v);
- MT_Vector4& operator*=(MT_Scalar s);
- MT_Vector4& operator/=(MT_Scalar s);
-
- MT_Scalar dot(const MT_Vector4& v) const;
-
- MT_Scalar length2() const;
- MT_Scalar length() const;
-
- MT_Vector4 absolute() const;
-
- void normalize();
- MT_Vector4 normalized() const;
-
- void scale(MT_Scalar x, MT_Scalar y, MT_Scalar z, MT_Scalar w);
- MT_Vector4 scaled(MT_Scalar x, MT_Scalar y, MT_Scalar z, MT_Scalar w) const;
-
- bool fuzzyZero() const;
-};
-
-MT_Vector4 operator+(const MT_Vector4& v1, const MT_Vector4& v2);
-MT_Vector4 operator-(const MT_Vector4& v1, const MT_Vector4& v2);
-MT_Vector4 operator-(const MT_Vector4& v);
-MT_Vector4 operator*(const MT_Vector4& v, MT_Scalar s);
-MT_Vector4 operator*(MT_Scalar s, const MT_Vector4& v);
-MT_Vector4 operator/(const MT_Vector4& v, MT_Scalar s);
-
-MT_Scalar MT_dot(const MT_Vector4& v1, const MT_Vector4& v2);
-
-MT_Scalar MT_length2(const MT_Vector4& v);
-MT_Scalar MT_length(const MT_Vector4& v);
-
-bool MT_fuzzyZero(const MT_Vector4& v);
-bool MT_fuzzyEqual(const MT_Vector4& v1, const MT_Vector4& v2);
-
-#ifdef GEN_INLINED
-#include "MT_Vector4.inl"
-#endif
-
-#endif
-
diff --git a/intern/moto/include/MT_Vector4.inl b/intern/moto/include/MT_Vector4.inl
deleted file mode 100644
index 5b6e6766416..00000000000
--- a/intern/moto/include/MT_Vector4.inl
+++ /dev/null
@@ -1,80 +0,0 @@
-#include "MT_Optimize.h"
-
-GEN_INLINE MT_Vector4& MT_Vector4::operator+=(const MT_Vector4& v) {
- m_co[0] += v[0]; m_co[1] += v[1]; m_co[2] += v[2]; m_co[3] += v[3];
- return *this;
-}
-
-GEN_INLINE MT_Vector4& MT_Vector4::operator-=(const MT_Vector4& v) {
- m_co[0] -= v[0]; m_co[1] -= v[1]; m_co[2] -= v[2]; m_co[3] -= v[3];
- return *this;
-}
-
-GEN_INLINE MT_Vector4& MT_Vector4::operator*=(MT_Scalar s) {
- m_co[0] *= s; m_co[1] *= s; m_co[2] *= s; m_co[3] *= s;
- return *this;
-}
-
-GEN_INLINE MT_Vector4& MT_Vector4::operator/=(MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return *this *= MT_Scalar(1.0f) / s;
-}
-
-GEN_INLINE MT_Vector4 operator+(const MT_Vector4& v1, const MT_Vector4& v2) {
- return MT_Vector4(v1[0] + v2[0], v1[1] + v2[1], v1[2] + v2[2], v1[3] + v2[3]);
-}
-
-GEN_INLINE MT_Vector4 operator-(const MT_Vector4& v1, const MT_Vector4& v2) {
- return MT_Vector4(v1[0] - v2[0], v1[1] - v2[1], v1[2] - v2[2], v1[3] - v2[3]);
-}
-
-GEN_INLINE MT_Vector4 operator-(const MT_Vector4& v) {
- return MT_Vector4(-v[0], -v[1], -v[2], -v[3]);
-}
-
-GEN_INLINE MT_Vector4 operator*(const MT_Vector4& v, MT_Scalar s) {
- return MT_Vector4(v[0] * s, v[1] * s, v[2] * s, v[3] * s);
-}
-
-GEN_INLINE MT_Vector4 operator*(MT_Scalar s, const MT_Vector4& v) { return v * s; }
-
-GEN_INLINE MT_Vector4 operator/(const MT_Vector4& v, MT_Scalar s) {
- MT_assert(!MT_fuzzyZero(s));
- return v * (MT_Scalar(1.0f) / s);
-}
-
-GEN_INLINE MT_Scalar MT_Vector4::dot(const MT_Vector4& v) const {
- return m_co[0] * v[0] + m_co[1] * v[1] + m_co[2] * v[2] + m_co[3] * v[3];
-}
-
-GEN_INLINE MT_Scalar MT_Vector4::length2() const { return MT_dot(*this, *this); }
-GEN_INLINE MT_Scalar MT_Vector4::length() const { return sqrtf(length2()); }
-
-GEN_INLINE MT_Vector4 MT_Vector4::absolute() const {
- return MT_Vector4(MT_abs(m_co[0]), MT_abs(m_co[1]), MT_abs(m_co[2]), MT_abs(m_co[3]));
-}
-
-GEN_INLINE void MT_Vector4::scale(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) {
- m_co[0] *= xx; m_co[1] *= yy; m_co[2] *= zz; m_co[3] *= ww;
-}
-
-GEN_INLINE MT_Vector4 MT_Vector4::scaled(MT_Scalar xx, MT_Scalar yy, MT_Scalar zz, MT_Scalar ww) const {
- return MT_Vector4(m_co[0] * xx, m_co[1] * yy, m_co[2] * zz, m_co[3] * ww);
-}
-
-GEN_INLINE bool MT_Vector4::fuzzyZero() const { return MT_fuzzyZero2(length2()); }
-
-GEN_INLINE void MT_Vector4::normalize() { *this /= length(); }
-GEN_INLINE MT_Vector4 MT_Vector4::normalized() const { return *this / length(); }
-
-GEN_INLINE MT_Scalar MT_dot(const MT_Vector4& v1, const MT_Vector4& v2) {
- return v1.dot(v2);
-}
-
-GEN_INLINE MT_Scalar MT_length2(const MT_Vector4& v) { return v.length2(); }
-GEN_INLINE MT_Scalar MT_length(const MT_Vector4& v) { return v.length(); }
-
-GEN_INLINE bool MT_fuzzyZero(const MT_Vector4& v) { return v.fuzzyZero(); }
-GEN_INLINE bool MT_fuzzyEqual(const MT_Vector4& v1, const MT_Vector4& v2) {
- return MT_fuzzyZero(v1 - v2);
-}
diff --git a/intern/moto/include/MT_assert.h b/intern/moto/include/MT_assert.h
deleted file mode 100644
index 256397036de..00000000000
--- a/intern/moto/include/MT_assert.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
-* ***** BEGIN GPL LICENSE BLOCK *****
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software Foundation,
-* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
-* All rights reserved.
-*
-* The Original Code is: all of this file.
-*
-* Contributor(s): none yet.
-*
-* ***** END GPL LICENSE BLOCK *****
-*/
-
-/** \file moto/include/MT_assert.h
- * \ingroup moto
- */
-
-
-#ifndef MT_ASSERT_H
-#define MT_ASSERT_H
-
-#include <signal.h>
-#include <stdlib.h>
-#include <assert.h>
-
-
-// So it can be used from C
-#ifdef __cplusplus
-#define MT_CDECL extern "C"
-#else
-#define MT_CDECL
-#endif
-
-// Ask the user if they wish to abort/break, ignore, or ignore for good.
-// file, line, predicate form the message to ask, *do_assert should be set
-// to 0 to ignore.
-// returns 1 to break, false to ignore
-MT_CDECL int MT_QueryAssert(const char *file, int line, const char *predicate, int *do_assert);
-
-
-#if !defined(DEBUG)
-#define MT_assert(predicate) ((void)0)
-#define BREAKPOINT() ((void)0)
-#else
-
-// BREAKPOINT() will cause a break into the debugger
-#if defined(__i386) && defined(__GNUC__)
-// gcc on intel...
-#define BREAKPOINT() \
-asm("int $3")
-#elif defined(_MSC_VER)
-// Visual C++ (on Intel)
-#define BREAKPOINT() \
-{ _asm int 3 }
-#elif defined(SIGTRAP)
-// POSIX compatible...
-#define BREAKPOINT() \
-raise(SIGTRAP);
-#else
-// FIXME: Don't know how to do a decent break!
-// Add some code for your cpu type, or get a posix
-// system.
-// abort instead
-#define BREAKPOINT() \
-abort();
-#endif /* breakpoint */
-
-
-#if defined(_WIN32) && !defined(__GNUC__)
-#define MT_assert(predicate) assert(predicate)
-#else
-
-
-
-// Abort the program if predicate is not true
-#define MT_assert(predicate) \
-{ \
- static int do_assert = 1; \
- if (!(predicate) && MT_QueryAssert(__FILE__, __LINE__, #predicate, &do_assert)) \
- { \
- BREAKPOINT(); \
- } \
-}
-#endif /* windows */
-
-#endif /* !defined(DEBUG) */
-
-#endif
-
diff --git a/intern/moto/include/MT_random.h b/intern/moto/include/MT_random.h
deleted file mode 100644
index 735316278d6..00000000000
--- a/intern/moto/include/MT_random.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/include/MT_random.h
- * \ingroup moto
- */
-
-
-#ifndef MT_RANDOM_H
-#define MT_RANDOM_H
-
-#include <limits.h>
-
-#define MT_RAND_MAX UINT_MAX
-
-extern void MT_srand(unsigned int);
-extern unsigned int MT_rand();
-
-#endif
-
diff --git a/intern/moto/intern/MT_Assert.cpp b/intern/moto/intern/MT_Assert.cpp
deleted file mode 100644
index 9279b70afec..00000000000
--- a/intern/moto/intern/MT_Assert.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Assert.cpp
- * \ingroup moto
- */
-
-
-#include <stdio.h>
-
-#ifdef _WIN32
-#include <windows.h>
-#endif
-
-#include "MT_assert.h"
-
-#ifdef _MSC_VER
-#ifndef snprintf
- #define snprintf _snprintf
-#endif
-#endif
-
-// Query the user if they want to break/abort the program, ignore the assert, or ignore all future
-// occurance of the assert.
-int MT_QueryAssert(const char *file, int line, const char *predicate, int *do_assert)
-{
-#ifdef _WIN32
- if (*do_assert)
- {
- char buffer[1024];
- snprintf(buffer, 1024, "ASSERT %s:%d: %s failed.\nWould you like to debug? (Cancel = ignore)", file, line, predicate);
- int result = MessageBox(NULL, buffer, "ASSERT failed.", MB_YESNOCANCEL|MB_ICONERROR);
- if (result == IDCANCEL)
- {
- *do_assert = 0;
- return 0;
- }
-
- return result == IDYES;
- }
-#endif
- printf("ASSERT %s:%d: %s failed.\n", file, line, predicate);
- return *do_assert;
-}
diff --git a/intern/moto/intern/MT_CmMatrix4x4.cpp b/intern/moto/intern/MT_CmMatrix4x4.cpp
deleted file mode 100644
index 38c93b92761..00000000000
--- a/intern/moto/intern/MT_CmMatrix4x4.cpp
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_CmMatrix4x4.cpp
- * \ingroup moto
- */
-
-
-#include "MT_CmMatrix4x4.h"
-#include "MT_Vector3.h"
-#include "MT_Point3.h"
-
-
-MT_CmMatrix4x4::MT_CmMatrix4x4()
-{
- Identity();
-}
-
-
-
-MT_CmMatrix4x4::MT_CmMatrix4x4(const MT_Scalar value[4][4])
-{
- for (int i=0;i<4;i++)
- {
- for (int j=0;j<4;j++)
- m_V[i][j] = value[i][j];
- }
-}
-
-
-
-MT_CmMatrix4x4::MT_CmMatrix4x4(const MT_Scalar value[16])
-{
- for (int i=0;i<16;i++)
- m_Vflat[i] = value[i];
-}
-
-
-
-MT_CmMatrix4x4::MT_CmMatrix4x4(const MT_CmMatrix4x4& other)
-{
- SetMatrix(other);
-}
-
-
-
-MT_CmMatrix4x4::MT_CmMatrix4x4(const MT_Point3& orig,
- const MT_Vector3& dir,
- const MT_Vector3 up)
-{
- MT_Vector3 z = -(dir.normalized());
- MT_Vector3 x = (up.cross(z)).normalized();
- MT_Vector3 y = (z.cross(x));
-
- m_V[0][0] = x.x();
- m_V[0][1] = y.x();
- m_V[0][2] = z.x();
- m_V[0][3] = 0.0f;
-
- m_V[1][0] = x.y();
- m_V[1][1] = y.y();
- m_V[1][2] = z.y();
- m_V[1][3] = 0.0f;
-
- m_V[2][0] = x.z();
- m_V[2][1] = y.z();
- m_V[2][2] = z.z();
- m_V[2][3] = 0.0f;
-
- m_V[3][0] = orig.x();//0.0f;
- m_V[3][1] = orig.y();//0.0f;
- m_V[3][2] = orig.z();//0.0f;
- m_V[3][3] = 1.0f;
-
- //Translate(-orig);
-}
-
-
-
-MT_Vector3 MT_CmMatrix4x4::GetRight() const
-{
- return MT_Vector3(m_V[0][0], m_V[0][1], m_V[0][2]);
-}
-
-
-
-MT_Vector3 MT_CmMatrix4x4::GetUp() const
-{
- return MT_Vector3(m_V[1][0], m_V[1][1], m_V[1][2]);
-}
-
-
-
-MT_Vector3 MT_CmMatrix4x4::GetDir() const
-{
- return MT_Vector3(m_V[2][0], m_V[2][1], m_V[2][2]);
-}
-
-
-
-MT_Point3 MT_CmMatrix4x4::GetPos() const
-{
- return MT_Point3(m_V[3][0], m_V[3][1], m_V[3][2]);
-}
-
-
-
-void MT_CmMatrix4x4::Identity()
-{
- for (int i=0; i<4; i++)
- {
- for (int j=0; j<4; j++)
- m_V[i][j] = (i==j?1.0f:0.0f);
- }
-}
-
-
-
-void MT_CmMatrix4x4::SetMatrix(const MT_CmMatrix4x4& other)
-{
- for (int i=0; i<16; i++)
- m_Vflat[i] = other.m_Vflat[i];
-}
-
-
-
-MT_Scalar* MT_CmMatrix4x4::getPointer()
-{
- return &m_V[0][0];
-}
-
-
-
-const MT_Scalar* MT_CmMatrix4x4::getPointer() const
-{
- return &m_V[0][0];
-}
-
-
-
-void MT_CmMatrix4x4::setElem(int pos,MT_Scalar newvalue)
-{
- m_Vflat[pos] = newvalue;
-}
-
-MT_CmMatrix4x4 MT_CmMatrix4x4::Perspective(
- MT_Scalar inLeft,
- MT_Scalar inRight,
- MT_Scalar inBottom,
- MT_Scalar inTop,
- MT_Scalar inNear,
- MT_Scalar inFar
-){
-
- MT_CmMatrix4x4 mat;
-
- // Column 0
- mat(0, 0) = -(2.0f*inNear) / (inRight-inLeft);
- mat(1, 0) = 0.0f;
- mat(2, 0) = 0.0f;
- mat(3, 0) = 0.0f;
-
- // Column 1
- mat(0, 1) = 0.0f;
- mat(1, 1) = (2.0f*inNear) / (inTop-inBottom);
- mat(2, 1) = 0.0f;
- mat(3, 1) = 0.0f;
-
- // Column 2
- mat(0, 2) = (inRight+inLeft) / (inRight-inLeft);
- mat(1, 2) = (inTop+inBottom) / (inTop-inBottom);
- mat(2, 2) = -(inFar+inNear) / (inFar-inNear);
- mat(3, 2) = -1.0f;
-
- // Column 3
- mat(0, 3) = 0.0f;
- mat(1, 3) = 0.0f;
- mat(2, 3) = -(2.0f*inFar*inNear) / (inFar-inNear);
- mat(3, 3) = 0.0f;
-
- return mat;
-}
diff --git a/intern/moto/intern/MT_Matrix3x3.cpp b/intern/moto/intern/MT_Matrix3x3.cpp
deleted file mode 100644
index fd33b3e1d39..00000000000
--- a/intern/moto/intern/MT_Matrix3x3.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Matrix3x3.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Matrix3x3.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Matrix3x3.inl"
-#endif
diff --git a/intern/moto/intern/MT_Matrix4x4.cpp b/intern/moto/intern/MT_Matrix4x4.cpp
deleted file mode 100644
index 41d49538212..00000000000
--- a/intern/moto/intern/MT_Matrix4x4.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Matrix4x4.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Matrix4x4.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Matrix4x4.inl"
-#endif
diff --git a/intern/moto/intern/MT_Point3.cpp b/intern/moto/intern/MT_Point3.cpp
deleted file mode 100644
index 48003a8e60b..00000000000
--- a/intern/moto/intern/MT_Point3.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Point3.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Point3.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Point3.inl"
-#endif
diff --git a/intern/moto/intern/MT_Quaternion.cpp b/intern/moto/intern/MT_Quaternion.cpp
deleted file mode 100644
index a2b634fced5..00000000000
--- a/intern/moto/intern/MT_Quaternion.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Quaternion.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Quaternion.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Quaternion.inl"
-#endif
diff --git a/intern/moto/intern/MT_Transform.cpp b/intern/moto/intern/MT_Transform.cpp
deleted file mode 100644
index 49a75b78e46..00000000000
--- a/intern/moto/intern/MT_Transform.cpp
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Transform.cpp
- * \ingroup moto
- */
-
-
-/*
-
- MOTTO - 3D Motion Toolkit
- Copyright (C) 2000 Gino van den Bergen <gino@acm.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with this library; if not, write to the Free
- Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
-
-#include "MT_Transform.h"
-
-void MT_Transform::setValue(const float *m) {
- m_basis.setValue(m);
- m_origin.setValue(&m[12]);
- m_type = AFFINE;
-}
-
-void MT_Transform::setValue(const double *m) {
- m_basis.setValue(m);
- m_origin.setValue(&m[12]);
- m_type = AFFINE;
-}
-
-void MT_Transform::getValue(float *m) const {
- m_basis.getValue(m);
- m_origin.getValue(&m[12]);
- m[15] = 1.0f;
-}
-
-void MT_Transform::getValue(double *m) const {
- m_basis.getValue(m);
- m_origin.getValue(&m[12]);
- m[15] = 1.0;
-}
-
-MT_Transform& MT_Transform::operator*=(const MT_Transform& t) {
- m_origin += m_basis * t.m_origin;
- m_basis *= t.m_basis;
- m_type |= t.m_type;
- return *this;
-}
-
-void MT_Transform::translate(const MT_Vector3& v) {
- m_origin += m_basis * v;
- m_type |= TRANSLATION;
-}
-
-void MT_Transform::rotate(const MT_Quaternion& q) {
- m_basis *= MT_Matrix3x3(q);
- m_type |= ROTATION;
-}
-
-void MT_Transform::scale(MT_Scalar x, MT_Scalar y, MT_Scalar z) {
- m_basis.scale(x, y, z);
- m_type |= SCALING;
-}
-
-void MT_Transform::setIdentity() {
- m_basis.setIdentity();
- m_origin.setValue(MT_Scalar(0.0f), MT_Scalar(0.0f), MT_Scalar(0.0f));
- m_type = IDENTITY;
-}
-
-void MT_Transform::invert(const MT_Transform& t) {
- m_basis = t.m_type & SCALING ?
- t.m_basis.inverse() :
- t.m_basis.transposed();
- m_origin.setValue(-MT_dot(m_basis[0], t.m_origin),
- -MT_dot(m_basis[1], t.m_origin),
- -MT_dot(m_basis[2], t.m_origin));
- m_type = t.m_type;
-}
-
-void MT_Transform::mult(const MT_Transform& t1, const MT_Transform& t2) {
- m_basis = t1.m_basis * t2.m_basis;
- m_origin = t1(t2.m_origin);
- m_type = t1.m_type | t2.m_type;
-}
-
-void MT_Transform::multInverseLeft(const MT_Transform& t1, const MT_Transform& t2) {
- MT_Vector3 v = t2.m_origin - t1.m_origin;
- if (t1.m_type & SCALING) {
- MT_Matrix3x3 inv = t1.m_basis.inverse();
- m_basis = inv * t2.m_basis;
- m_origin = inv * v;
- }
- else {
- m_basis = MT_multTransposeLeft(t1.m_basis, t2.m_basis);
- m_origin = v * t1.m_basis;
- }
- m_type = t1.m_type | t2.m_type;
-}
-
-
-
diff --git a/intern/moto/intern/MT_Vector2.cpp b/intern/moto/intern/MT_Vector2.cpp
deleted file mode 100644
index 3c0b0a08f1f..00000000000
--- a/intern/moto/intern/MT_Vector2.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Vector2.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Vector2.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Vector2.inl"
-#endif
diff --git a/intern/moto/intern/MT_Vector3.cpp b/intern/moto/intern/MT_Vector3.cpp
deleted file mode 100644
index a90551dd0a8..00000000000
--- a/intern/moto/intern/MT_Vector3.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Vector3.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Vector3.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Vector3.inl"
-#endif
diff --git a/intern/moto/intern/MT_Vector4.cpp b/intern/moto/intern/MT_Vector4.cpp
deleted file mode 100644
index b41ec03754d..00000000000
--- a/intern/moto/intern/MT_Vector4.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_Vector4.cpp
- * \ingroup moto
- */
-
-
-#include "MT_Vector4.h"
-
-
-#ifndef GEN_INLINED
-#include "MT_Vector4.inl"
-#endif
diff --git a/intern/moto/intern/MT_random.cpp b/intern/moto/intern/MT_random.cpp
deleted file mode 100644
index ab191008d28..00000000000
--- a/intern/moto/intern/MT_random.cpp
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file moto/intern/MT_random.cpp
- * \ingroup moto
- */
-
-
-/* A C-program for MT19937: Real number version */
-
-/* genrand() generates one pseudorandom real number (double) */
-/* which is uniformly distributed on [0,1]-interval, for each */
-/* call. sgenrand(seed) set initial values to the working area */
-/* of 624 words. Before genrand(), sgenrand(seed) must be */
-/* called once. (seed is any 32-bit integer except for 0). */
-/* Integer generator is obtained by modifying two lines. */
-/* Coded by Takuji Nishimura, considering the suggestions by */
-/* Topher Cooper and Marc Rieffel in July-Aug. 1997. */
-
-/* This library is free software; you can redistribute it and/or */
-/* modify it under the terms of the GNU Library General Public */
-/* License as published by the Free Software Foundation; either */
-/* version 2 of the License, or (at your option) any later */
-/* version. */
-/* This library is distributed in the hope that it will be useful, */
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */
-/* See the GNU Library General Public License for more details. */
-/* You should have received a copy of the GNU Library General */
-/* Public License along with this library; if not, write to the */
-/* Free Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA */
-/* 02110-1301, USA */
-
-/* Copyright (C) 1997 Makoto Matsumoto and Takuji Nishimura. */
-/* When you use this, send an email to: matumoto@math.keio.ac.jp */
-/* with an appropriate reference to your work. */
-
-#include "MT_random.h"
-
-/* Period parameters */
-#define N 624
-#define M 397
-#define MATRIX_A 0x9908b0df /* constant vector a */
-#define UPPER_MASK 0x80000000 /* most significant w-r bits */
-#define LOWER_MASK 0x7fffffff /* least significant r bits */
-
-/* Tempering parameters */
-#define TEMPERING_MASK_B 0x9d2c5680
-#define TEMPERING_MASK_C 0xefc60000
-#define TEMPERING_SHIFT_U(y) (y >> 11)
-#define TEMPERING_SHIFT_S(y) (y << 7)
-#define TEMPERING_SHIFT_T(y) (y << 15)
-#define TEMPERING_SHIFT_L(y) (y >> 18)
-
-static unsigned int mt[N]; /* the array for the state vector */
-static int mti = N+1; /* mti==N+1 means mt[N] is not initialized */
-
-/* initializing the array with a NONZERO seed */
-void MT_srand(unsigned int seed)
-{
- /* setting initial seeds to mt[N] using */
- /* the generator Line 25 of Table 1 in */
- /* [KNUTH 1981, The Art of Computer Programming */
- /* Vol. 2 (2nd Ed.), pp102] */
- mt[0] = seed & 0xffffffff;
- for (mti = 1; mti < N; mti++)
- mt[mti] = (69069 * mt[mti-1]) & 0xffffffff;
-}
-
-unsigned int MT_rand()
-{
- static unsigned int mag01[2] = { 0x0, MATRIX_A };
- /* mag01[x] = x * MATRIX_A for x=0,1 */
-
- unsigned int y;
-
- if (mti >= N) { /* generate N words at one time */
- int kk;
-
- if (mti == N+1) /* if sgenrand() has not been called, */
- MT_srand(4357); /* a default initial seed is used */
-
- for (kk = 0; kk < N - M; kk++) {
- y = (mt[kk] & UPPER_MASK) | (mt[kk+1] & LOWER_MASK);
- mt[kk] = mt[kk+M] ^ (y >> 1) ^ mag01[y & 0x1];
- }
- for (; kk < N-1; kk++) {
- y = (mt[kk] & UPPER_MASK) | (mt[kk+1] & LOWER_MASK);
- mt[kk] = mt[kk+(M-N)] ^ (y >> 1) ^ mag01[y & 0x1];
- }
- y = (mt[N-1] & UPPER_MASK) | (mt[0] & LOWER_MASK);
- mt[N-1] = mt[M-1] ^ (y >> 1) ^ mag01[y & 0x1];
-
- mti = 0;
- }
-
- y = mt[mti++];
- y ^= TEMPERING_SHIFT_U(y);
- y ^= TEMPERING_SHIFT_S(y) & TEMPERING_MASK_B;
- y ^= TEMPERING_SHIFT_T(y) & TEMPERING_MASK_C;
- y ^= TEMPERING_SHIFT_L(y);
-
- return y;
-}
-
-#undef N
-#undef M
-#undef MATRIX_A
-#undef UPPER_MASK
-#undef LOWER_MASK
-
-/* Tempering parameters */
-#undef TEMPERING_MASK_B
-#undef TEMPERING_MASK_C
-#undef TEMPERING_SHIFT_U
-#undef TEMPERING_SHIFT_S
-#undef TEMPERING_SHIFT_T
-#undef TEMPERING_SHIFT_L
-
diff --git a/intern/string/CMakeLists.txt b/intern/string/CMakeLists.txt
index ddadfc61bee..055bafdb157 100644
--- a/intern/string/CMakeLists.txt
+++ b/intern/string/CMakeLists.txt
@@ -34,7 +34,6 @@ set(INC_SYS
set(SRC
intern/STR_String.cpp
- STR_HashedString.h
STR_String.h
)
diff --git a/intern/string/STR_HashedString.h b/intern/string/STR_HashedString.h
deleted file mode 100644
index ce790f398a0..00000000000
--- a/intern/string/STR_HashedString.h
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file string/STR_HashedString.h
- * \ingroup string
- *
- * Copyright (C) 2001 NaN Technologies B.V.
- * This file was formerly known as: GEN_StdString.cpp.
- * \date November, 14, 2001
- */
-
-#ifndef __STR_HASHEDSTRING_H__
-#define __STR_HASHEDSTRING_H__
-
-#include "STR_String.h"
-
-/* copied from 'BLI_compiler_attrs.h' */
-/* Use to suppress '-Wimplicit-fallthrough' (in place of 'break'). */
-#if defined(__GNUC__) && (__GNUC__ >= 7) /* gcc7.0+ only */
-#define ATTR_FALLTHROUGH __attribute__((fallthrough))
-#else
-#define ATTR_FALLTHROUGH ((void)0)
-#endif
-
-
-// Hash Mix utility function, by Bob Jenkins - Mix 3 32-bit values reversibly
-//
-// - If gHashMix() is run forward or backward, at least 32 bits in a,b,c have at
-// least 1/4 probability of changing.
-//
-// - If gHashMix() is run forward, every bit of c will change between 1/3 and
-// 2/3 of the time.
-//
-static inline void STR_gHashMix(dword& a, dword& b, dword& c)
-{
- a -= b; a -= c; a ^= (c >> 13);
- b -= c; b -= a; b ^= (a << 8);
- c -= a; c -= b; c ^= (b >> 13);
- a -= b; a -= c; a ^= (c >> 12);
- b -= c; b -= a; b ^= (a << 16);
- c -= a; c -= b; c ^= (b >> 5);
- a -= b; a -= c; a ^= (c >> 3);
- b -= c; b -= a; b ^= (a << 10);
- c -= a; c -= b; c ^= (b >> 15);
-}
-
-//
-// Fast Hashable<int32> functionality
-// http://www.concentric.net/~Ttwang/tech/inthash.htm
-//
-static inline dword STR_gHash(dword inDWord)
-{
- dword key = inDWord;
- key += ~(key << 16);
- key ^= (key >> 5);
- key += (key << 3);
- key ^= (key >> 13);
- key += ~(key << 9);
- key ^= (key >> 17);
- return key;
-}
-
-enum { GOLDEN_RATIO = 0x9e3779b9 }; /* arbitrary value to initialize hash funtion, well not so arbitrary
- * as this value is taken from the pigs library (Orange Games/Lost Boys) */
-
-
-
-static dword STR_gHash(const void *in, int len, dword init_val)
-{
- unsigned int length = len;
- dword a = (dword)GOLDEN_RATIO;
- dword b = (dword)GOLDEN_RATIO;
- dword c = init_val; /* the previous hash value */
- byte *p_in = (byte *)in;
-
- // Do the largest part of the key
- while (length >= 12)
- {
- a += (p_in[0] + ((dword)p_in[1] << 8) + ((dword)p_in[2] << 16) + ((dword)p_in[3] << 24));
- b += (p_in[4] + ((dword)p_in[5] << 8) + ((dword)p_in[6] << 16) + ((dword)p_in[7] << 24));
- c += (p_in[8] + ((dword)p_in[9] << 8) + ((dword)p_in[10] << 16) + ((dword)p_in[11] << 24));
- STR_gHashMix(a, b, c);
- p_in += 12; length -= 12;
- }
-
- // Handle the last 11 bytes
- c += len;
- switch (length) {
- case 11: c += ((dword)p_in[10] << 24); ATTR_FALLTHROUGH;
- case 10: c += ((dword)p_in[9] << 16); ATTR_FALLTHROUGH;
- case 9: c += ((dword)p_in[8] << 8); ATTR_FALLTHROUGH; /* the first byte of c is reserved for the length */
- case 8: b += ((dword)p_in[7] << 24); ATTR_FALLTHROUGH;
- case 7: b += ((dword)p_in[6] << 16); ATTR_FALLTHROUGH;
- case 6: b += ((dword)p_in[5] << 8); ATTR_FALLTHROUGH;
- case 5: b += p_in[4]; ATTR_FALLTHROUGH;
- case 4: a += ((dword)p_in[3] << 24); ATTR_FALLTHROUGH;
- case 3: a += ((dword)p_in[2] << 16); ATTR_FALLTHROUGH;
- case 2: a += ((dword)p_in[1] << 8); ATTR_FALLTHROUGH;
- case 1: a += p_in[0];
- }
- STR_gHashMix(a, b, c);
-
- return c;
-}
-
-
-
-
-class STR_HashedString : public STR_String
-{
-public:
- STR_HashedString() : STR_String(), m_Hashed(false) {}
- STR_HashedString(const char *str) : STR_String(str), m_Hashed(false) {}
- STR_HashedString(const STR_String &str) : STR_String(str), m_Hashed(false) {}
-
- inline dword hash(dword init = 0) const
- {
- if (!m_Hashed)
- {
- const char *str = *this;
- int length = this->Length();
- m_CachedHash = STR_gHash(str, length, init);
- m_Hashed = true;
- }
- return m_CachedHash;
- }
-
-private:
- mutable bool m_Hashed;
- mutable dword m_CachedHash;
-};
-
-#endif //__STR_HASHEDSTRING_H__
-