

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 8.01.0622 */
/* @@MIDL_FILE_HEADING(  ) */



/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 500
#endif

/* verify that the <rpcsal.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#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 COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __windows2Emedia2Edevices2Ecore_h__
#define __windows2Emedia2Edevices2Ecore_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController;

#endif 	/* ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController;

#endif 	/* ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController;

#endif 	/* ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__ */


#ifndef ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
typedef interface __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController;

#endif 	/* ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface ICameraIntrinsics;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface ICameraIntrinsics2;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface ICameraIntrinsicsFactory;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IDepthCorrelatedCoordinateMapper;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameControlCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameControlCapabilities2;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameController;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameController2;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameExposureCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameExposureCompensationCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameExposureCompensationControl;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameExposureControl;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameFlashCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameFlashControl;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameFocusCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameFocusControl;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameIsoSpeedCapabilities;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IFrameIsoSpeedControl;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    interface IVariablePhotoSequenceController;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_FWD_DEFINED__ */


/* header files for imported files */
#include "inspectable.h"
#include "AsyncInfo.h"
#include "EventToken.h"
#include "Windows.Foundation.h"
#include "Windows.Foundation.Numerics.h"
#include "Windows.Media.MediaProperties.h"

#ifdef __cplusplus
extern "C"{
#endif 


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0000 */
/* [local] */ 

#ifdef __cplusplus
} /*extern "C"*/ 
#endif
#include <windows.foundation.collections.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameController;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
interface IFrameController;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0000 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0000_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4650 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4650 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4650_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4650_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0001 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#define DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("1440dc88-63ff-5a01-bb93-390c76742488"))
IIterator<ABI::Windows::Media::Devices::Core::FrameController*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Devices::Core::FrameController*, ABI::Windows::Media::Devices::Core::IFrameController*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Devices.Core.FrameController>"; }
};
typedef IIterator<ABI::Windows::Media::Devices::Core::FrameController*> __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_t;
#define ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0001 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0001_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0001_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4651 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4651 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4651_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4651_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0002 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#define DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("bd8eeadc-2dd9-5ad8-ac5d-f3b13b94b9c2"))
IIterable<ABI::Windows::Media::Devices::Core::FrameController*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Devices::Core::FrameController*, ABI::Windows::Media::Devices::Core::IFrameController*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Devices.Core.FrameController>"; }
};
typedef IIterable<ABI::Windows::Media::Devices::Core::FrameController*> __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_t;
#define ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0002 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0002_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0002_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4652 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4652 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4652_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4652_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0003 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#define DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("fcd6a2a3-b6ff-5572-912b-99ebaf95165d"))
IVectorView<ABI::Windows::Media::Devices::Core::FrameController*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Devices::Core::FrameController*, ABI::Windows::Media::Devices::Core::IFrameController*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Devices.Core.FrameController>"; }
};
typedef IVectorView<ABI::Windows::Media::Devices::Core::FrameController*> __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_t;
#define ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0003 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0003_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0003_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4653 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4653 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4653_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4653_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0004 */
/* [local] */ 

#ifndef DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#define DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("1c8f8276-b89a-5093-a1ed-af49dfb72a89"))
IVector<ABI::Windows::Media::Devices::Core::FrameController*> : IVector_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Devices::Core::FrameController*, ABI::Windows::Media::Devices::Core::IFrameController*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVector`1<Windows.Media.Devices.Core.FrameController>"; }
};
typedef IVector<ABI::Windows::Media::Devices::Core::FrameController*> __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_t;
#define ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_FWD_DEFINED__
#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController ABI::Windows::Foundation::Collections::__FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0004 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0004_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0004_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4654 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4654 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4654_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4654_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0005 */
/* [local] */ 

#ifndef DEF___FIReference_1_boolean_USE
#define DEF___FIReference_1_boolean_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3c00fd60-2950-5939-a21a-2d12c5a01b8a"))
IReference<bool> : IReference_impl<ABI::Windows::Foundation::Internal::AggregateType<bool, boolean>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IReference`1<Boolean>"; }
};
typedef IReference<bool> __FIReference_1_boolean_t;
#define ____FIReference_1_boolean_FWD_DEFINED__
#define __FIReference_1_boolean ABI::Windows::Foundation::__FIReference_1_boolean_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIReference_1_boolean_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0005 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0005_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0005_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4655 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4655 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4655_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4655_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0006 */
/* [local] */ 

#ifndef DEF___FIReference_1_float_USE
#define DEF___FIReference_1_float_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("719cc2ba-3e76-5def-9f1a-38d85a145ea8"))
IReference<float> : IReference_impl<float> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IReference`1<Single>"; }
};
typedef IReference<float> __FIReference_1_float_t;
#define ____FIReference_1_float_FWD_DEFINED__
#define __FIReference_1_float ABI::Windows::Foundation::__FIReference_1_float_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIReference_1_float_USE */

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Foundation {
struct TimeSpan;
} /*Foundation*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0006 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0006_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0006_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4656 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4656 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4656_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4656_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0007 */
/* [local] */ 

#ifndef DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#define DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("604d0c4c-91de-5c2a-935f-362f13eaf800"))
IReference<struct ABI::Windows::Foundation::TimeSpan> : IReference_impl<struct ABI::Windows::Foundation::TimeSpan> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IReference`1<Windows.Foundation.TimeSpan>"; }
};
typedef IReference<struct ABI::Windows::Foundation::TimeSpan> __FIReference_1_Windows__CFoundation__CTimeSpan_t;
#define ____FIReference_1_Windows__CFoundation__CTimeSpan_FWD_DEFINED__
#define __FIReference_1_Windows__CFoundation__CTimeSpan ABI::Windows::Foundation::__FIReference_1_Windows__CFoundation__CTimeSpan_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0007 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0007_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0007_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4657 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4657 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4657_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4657_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0008 */
/* [local] */ 

#ifndef DEF___FIReference_1_UINT32_USE
#define DEF___FIReference_1_UINT32_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("513ef3af-e784-5325-a91e-97c2b8111cf3"))
IReference<UINT32> : IReference_impl<UINT32> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IReference`1<UInt32>"; }
};
typedef IReference<UINT32> __FIReference_1_UINT32_t;
#define ____FIReference_1_UINT32_FWD_DEFINED__
#define __FIReference_1_UINT32 ABI::Windows::Foundation::__FIReference_1_UINT32_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIReference_1_UINT32_USE */
#if defined(__cplusplus)
}
#endif // defined(__cplusplus)
#include <Windows.Foundation.h>
#if !defined(__windows2Efoundation2Enumerics_h__)
#include <Windows.Foundation.Numerics.h>
#endif // !defined(__windows2Efoundation2Enumerics_h__)
#if !defined(__windows2Emedia2Emediaproperties_h__)
#include <Windows.Media.MediaProperties.h>
#endif // !defined(__windows2Emedia2Emediaproperties_h__)
#if !defined(__windows2Eperception2Espatial_h__)
#include <Windows.Perception.Spatial.h>
#endif // !defined(__windows2Eperception2Espatial_h__)
#if defined(__cplusplus)
extern "C" {
#endif // defined(__cplusplus)

#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix4x4 __x_ABI_CWindows_CFoundation_CNumerics_CMatrix4x4;

#endif
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 __x_ABI_CWindows_CFoundation_CNumerics_CVector2;

#endif
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CVector3 __x_ABI_CWindows_CFoundation_CNumerics_CVector3;

#endif
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CPoint __x_ABI_CWindows_CFoundation_CPoint;

#endif
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CTimeSpan __x_ABI_CWindows_CFoundation_CTimeSpan;

#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace MediaProperties {
class MediaRatio;
} /*MediaProperties*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Perception {
namespace Spatial {
class SpatialCoordinateSystem;
} /*Spatial*/
} /*Perception*/
} /*Windows*/
}
#endif

#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CMedia_CDevices_CCore_CFrameFlashMode __x_ABI_CWindows_CMedia_CDevices_CCore_CFrameFlashMode;


#endif /* end if !defined(__cplusplus) */


#endif


















#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class CameraIntrinsics;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class DepthCorrelatedCoordinateMapper;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameControlCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameExposureCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameExposureCompensationCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameExposureCompensationControl;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameExposureControl;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameFlashCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameFlashControl;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameFocusCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameFocusControl;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameIsoSpeedCapabilities;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class FrameIsoSpeedControl;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Devices {
namespace Core {
class VariablePhotoSequenceController;
} /*Core*/
} /*Devices*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0008 */
/* [local] */ 



#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Numerics {
                
                typedef struct Matrix4x4 Matrix4x4;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Numerics {
                
                typedef struct Vector2 Vector2;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Numerics {
                
                typedef struct Vector3 Vector3;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            
            typedef struct Point Point;
            
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            
            typedef struct TimeSpan TimeSpan;
            
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif




#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    
                    typedef enum FrameFlashMode FrameFlashMode;
                    
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif





















extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0008_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4658 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4658 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4658_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4658_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0009 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController
#define DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0009 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0009_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__

/* interface __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 



/* interface __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1440dc88-63ff-5a01-bb93-390c76742488")
    __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameController **current) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HasCurrent( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MoveNext( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::Media::Devices::Core::IFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl;

    interface __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController
    {
        CONST_VTBL struct __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_get_Current(This,current)	\
    ( (This)->lpVtbl -> get_Current(This,current) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_get_HasCurrent(This,hasCurrent)	\
    ( (This)->lpVtbl -> get_HasCurrent(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_MoveNext(This,hasCurrent)	\
    ( (This)->lpVtbl -> MoveNext(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_GetMany(This,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0010 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0010 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0010_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4659 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4659 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4659_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4659_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0011 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController
#define DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0011 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0011_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0011_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__

/* interface __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 



/* interface __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("bd8eeadc-2dd9-5ad8-ac5d-f3b13b94b9c2")
    __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CMedia__CDevices__CCore__CFrameController **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl;

    interface __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController
    {
        CONST_VTBL struct __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_First(This,first)	\
    ( (This)->lpVtbl -> First(This,first) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0012 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CMedia__CDevices__CCore__CFrameController */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0012 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0012_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4660 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4660 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4660_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4660_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0013 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController
#define DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0013 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0013_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0013_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__

/* interface __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 



/* interface __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("fcd6a2a3-b6ff-5572-912b-99ebaf95165d")
    __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameController **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::IFrameController *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::Media::Devices::Core::IFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl;

    interface __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0014 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0014 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0014_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0014_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4661 */




/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4661 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4661_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore2Eidl_0000_4661_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0015 */
/* [local] */ 

#ifndef DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController
#define DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0015 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0015_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0015_v0_0_s_ifspec;

#ifndef ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__
#define ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__

/* interface __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 



/* interface __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1c8f8276-b89a-5093-a1ed-af49dfb72a89")
    __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameController **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetView( 
            /* [retval][out] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController **view) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::IFrameController *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ unsigned int index,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::IFrameController *item) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ unsigned int index,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::IFrameController *item) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ unsigned int index) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Append( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::IFrameController *item) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveAtEnd( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::Media::Devices::Core::IFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReplaceAll( 
            /* [in] */ unsigned int count,
            /* [size_is][in] */ __RPC__in_ecount_full(count) ABI::Windows::Media::Devices::Core::IFrameController **value) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *GetView )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CMedia__CDevices__CCore__CFrameController **view);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int index,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController *item);
        
        HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int index,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController *item);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int index);
        
        HRESULT ( STDMETHODCALLTYPE *Append )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController *item);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveAtEnd )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *Clear )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        HRESULT ( STDMETHODCALLTYPE *ReplaceAll )( 
            __RPC__in __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController * This,
            /* [in] */ unsigned int count,
            /* [size_is][in] */ __RPC__in_ecount_full(count) __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController **value);
        
        END_INTERFACE
    } __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl;

    interface __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController
    {
        CONST_VTBL struct __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetView(This,view)	\
    ( (This)->lpVtbl -> GetView(This,view) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_SetAt(This,index,item)	\
    ( (This)->lpVtbl -> SetAt(This,index,item) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_InsertAt(This,index,item)	\
    ( (This)->lpVtbl -> InsertAt(This,index,item) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_RemoveAt(This,index)	\
    ( (This)->lpVtbl -> RemoveAt(This,index) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_Append(This,item)	\
    ( (This)->lpVtbl -> Append(This,item) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_RemoveAtEnd(This)	\
    ( (This)->lpVtbl -> RemoveAtEnd(This) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_Clear(This)	\
    ( (This)->lpVtbl -> Clear(This) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#define __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_ReplaceAll(This,count,value)	\
    ( (This)->lpVtbl -> ReplaceAll(This,count,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0016 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController */
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CMedia_CDevices_CCore_CFrameFlashMode
    {
        FrameFlashMode_Disable	= 0,
        FrameFlashMode_Enable	= 1,
        FrameFlashMode_Global	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_ICameraIntrinsics[] = L"Windows.Media.Devices.Core.ICameraIntrinsics";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0016 */
/* [local] */ 

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Devices {
                namespace Core {
                    
                    /* [v1_enum] */ 
                    enum FrameFlashMode
                        {
                            FrameFlashMode_Disable	= 0,
                            FrameFlashMode_Enable	= 1,
                            FrameFlashMode_Global	= 2
                        } ;
                } /* end namespace */
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0016_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::ICameraIntrinsics */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("0AA6ED32-6589-49DA-AFDE-594270CA0AAC")
                        ICameraIntrinsics : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FocalLength( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector2 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PrincipalPoint( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector2 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RadialDistortion( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector3 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TangentialDistortion( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector2 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ImageWidth( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ImageHeight( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE ProjectOntoFrame( 
                                /* [in] */ ABI::Windows::Foundation::Numerics::Vector3 coordinate,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Point *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE UnprojectAtUnitDepth( 
                                /* [in] */ ABI::Windows::Foundation::Point pixelCoordinate,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector2 *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE ProjectManyOntoFrame( 
                                /* [in] */ UINT32 __coordinatesSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__coordinatesSize) ABI::Windows::Foundation::Numerics::Vector3 *coordinates,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Point *results) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE UnprojectPixelsAtUnitDepth( 
                                /* [in] */ UINT32 __pixelCoordinatesSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__pixelCoordinatesSize) ABI::Windows::Foundation::Point *pixelCoordinates,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Numerics::Vector2 *results) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_ICameraIntrinsics = __uuidof(ICameraIntrinsics);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FocalLength )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector2 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrincipalPoint )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector2 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RadialDistortion )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector3 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TangentialDistortion )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector2 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageWidth )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageHeight )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        HRESULT ( STDMETHODCALLTYPE *ProjectOntoFrame )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CNumerics_CVector3 coordinate,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CPoint *result);
        
        HRESULT ( STDMETHODCALLTYPE *UnprojectAtUnitDepth )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CPoint pixelCoordinate,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector2 *result);
        
        HRESULT ( STDMETHODCALLTYPE *ProjectManyOntoFrame )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [in] */ UINT32 __coordinatesSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__coordinatesSize) __x_ABI_CWindows_CFoundation_CNumerics_CVector3 *coordinates,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CPoint *results);
        
        HRESULT ( STDMETHODCALLTYPE *UnprojectPixelsAtUnitDepth )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics * This,
            /* [in] */ UINT32 __pixelCoordinatesSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__pixelCoordinatesSize) __x_ABI_CWindows_CFoundation_CPoint *pixelCoordinates,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CNumerics_CVector2 *results);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_FocalLength(This,value)	\
    ( (This)->lpVtbl -> get_FocalLength(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_PrincipalPoint(This,value)	\
    ( (This)->lpVtbl -> get_PrincipalPoint(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_RadialDistortion(This,value)	\
    ( (This)->lpVtbl -> get_RadialDistortion(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_TangentialDistortion(This,value)	\
    ( (This)->lpVtbl -> get_TangentialDistortion(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_ImageWidth(This,value)	\
    ( (This)->lpVtbl -> get_ImageWidth(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_get_ImageHeight(This,value)	\
    ( (This)->lpVtbl -> get_ImageHeight(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_ProjectOntoFrame(This,coordinate,result)	\
    ( (This)->lpVtbl -> ProjectOntoFrame(This,coordinate,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_UnprojectAtUnitDepth(This,pixelCoordinate,result)	\
    ( (This)->lpVtbl -> UnprojectAtUnitDepth(This,pixelCoordinate,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_ProjectManyOntoFrame(This,__coordinatesSize,coordinates,__resultsSize,results)	\
    ( (This)->lpVtbl -> ProjectManyOntoFrame(This,__coordinatesSize,coordinates,__resultsSize,results) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_UnprojectPixelsAtUnitDepth(This,__pixelCoordinatesSize,pixelCoordinates,__resultsSize,results)	\
    ( (This)->lpVtbl -> UnprojectPixelsAtUnitDepth(This,__pixelCoordinatesSize,pixelCoordinates,__resultsSize,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0017 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_ICameraIntrinsics2[] = L"Windows.Media.Devices.Core.ICameraIntrinsics2";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0017 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0017_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0017_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::ICameraIntrinsics2 */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("0CDAA447-0798-4B4D-839F-C5EC414DB27A")
                        ICameraIntrinsics2 : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UndistortedProjectionTransform( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Matrix4x4 *value) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE DistortPoint( 
                                /* [in] */ ABI::Windows::Foundation::Point input,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Point *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE DistortPoints( 
                                /* [in] */ UINT32 __inputsSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__inputsSize) ABI::Windows::Foundation::Point *inputs,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Point *results) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE UndistortPoint( 
                                /* [in] */ ABI::Windows::Foundation::Point input,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Point *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE UndistortPoints( 
                                /* [in] */ UINT32 __inputsSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__inputsSize) ABI::Windows::Foundation::Point *inputs,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Point *results) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_ICameraIntrinsics2 = __uuidof(ICameraIntrinsics2);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UndistortedProjectionTransform )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CMatrix4x4 *value);
        
        HRESULT ( STDMETHODCALLTYPE *DistortPoint )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CPoint input,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CPoint *result);
        
        HRESULT ( STDMETHODCALLTYPE *DistortPoints )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [in] */ UINT32 __inputsSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__inputsSize) __x_ABI_CWindows_CFoundation_CPoint *inputs,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CPoint *results);
        
        HRESULT ( STDMETHODCALLTYPE *UndistortPoint )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CPoint input,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CPoint *result);
        
        HRESULT ( STDMETHODCALLTYPE *UndistortPoints )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2 * This,
            /* [in] */ UINT32 __inputsSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__inputsSize) __x_ABI_CWindows_CFoundation_CPoint *inputs,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CPoint *results);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2Vtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_get_UndistortedProjectionTransform(This,value)	\
    ( (This)->lpVtbl -> get_UndistortedProjectionTransform(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_DistortPoint(This,input,result)	\
    ( (This)->lpVtbl -> DistortPoint(This,input,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_DistortPoints(This,__inputsSize,inputs,__resultsSize,results)	\
    ( (This)->lpVtbl -> DistortPoints(This,__inputsSize,inputs,__resultsSize,results) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_UndistortPoint(This,input,result)	\
    ( (This)->lpVtbl -> UndistortPoint(This,input,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_UndistortPoints(This,__inputsSize,inputs,__resultsSize,results)	\
    ( (This)->lpVtbl -> UndistortPoints(This,__inputsSize,inputs,__resultsSize,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics2_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0018 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_ICameraIntrinsicsFactory[] = L"Windows.Media.Devices.Core.ICameraIntrinsicsFactory";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0018 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0018_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0018_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::ICameraIntrinsicsFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("C0DDC486-2132-4A34-A659-9BFE2A055712")
                        ICameraIntrinsicsFactory : public IInspectable
                        {
                        public:
                            virtual HRESULT STDMETHODCALLTYPE Create( 
                                /* [in] */ ABI::Windows::Foundation::Numerics::Vector2 focalLength,
                                /* [in] */ ABI::Windows::Foundation::Numerics::Vector2 principalPoint,
                                /* [in] */ ABI::Windows::Foundation::Numerics::Vector3 radialDistortion,
                                /* [in] */ ABI::Windows::Foundation::Numerics::Vector2 tangentialDistortion,
                                /* [in] */ UINT32 imageWidth,
                                /* [in] */ UINT32 imageHeight,
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::ICameraIntrinsics **result) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_ICameraIntrinsicsFactory = __uuidof(ICameraIntrinsicsFactory);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CNumerics_CVector2 focalLength,
            /* [in] */ __x_ABI_CWindows_CFoundation_CNumerics_CVector2 principalPoint,
            /* [in] */ __x_ABI_CWindows_CFoundation_CNumerics_CVector3 radialDistortion,
            /* [in] */ __x_ABI_CWindows_CFoundation_CNumerics_CVector2 tangentialDistortion,
            /* [in] */ UINT32 imageWidth,
            /* [in] */ UINT32 imageHeight,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactoryVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_Create(This,focalLength,principalPoint,radialDistortion,tangentialDistortion,imageWidth,imageHeight,result)	\
    ( (This)->lpVtbl -> Create(This,focalLength,principalPoint,radialDistortion,tangentialDistortion,imageWidth,imageHeight,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsicsFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0019 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IDepthCorrelatedCoordinateMapper[] = L"Windows.Media.Devices.Core.IDepthCorrelatedCoordinateMapper";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0019 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0019_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0019_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IDepthCorrelatedCoordinateMapper */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("F95D89FB-8AF0-4CB0-926D-696866E5046A")
                        IDepthCorrelatedCoordinateMapper : public IInspectable
                        {
                        public:
                            virtual HRESULT STDMETHODCALLTYPE UnprojectPoint( 
                                /* [in] */ ABI::Windows::Foundation::Point sourcePoint,
                                /* [in] */ __RPC__in_opt ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *targetCoordinateSystem,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Numerics::Vector3 *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE UnprojectPoints( 
                                /* [in] */ UINT32 __sourcePointsSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__sourcePointsSize) ABI::Windows::Foundation::Point *sourcePoints,
                                /* [in] */ __RPC__in_opt ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *targetCoordinateSystem,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Numerics::Vector3 *results) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE MapPoint( 
                                /* [in] */ ABI::Windows::Foundation::Point sourcePoint,
                                /* [in] */ __RPC__in_opt ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *targetCoordinateSystem,
                                /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::ICameraIntrinsics *targetCameraIntrinsics,
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::Point *result) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE MapPoints( 
                                /* [in] */ UINT32 __sourcePointsSize,
                                /* [in][size_is] */ __RPC__in_ecount_full(__sourcePointsSize) ABI::Windows::Foundation::Point *sourcePoints,
                                /* [in] */ __RPC__in_opt ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *targetCoordinateSystem,
                                /* [in] */ __RPC__in_opt ABI::Windows::Media::Devices::Core::ICameraIntrinsics *targetCameraIntrinsics,
                                /* [in] */ UINT32 __resultsSize,
                                /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) ABI::Windows::Foundation::Point *results) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IDepthCorrelatedCoordinateMapper = __uuidof(IDepthCorrelatedCoordinateMapper);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapperVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *UnprojectPoint )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CPoint sourcePoint,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *targetCoordinateSystem,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CNumerics_CVector3 *result);
        
        HRESULT ( STDMETHODCALLTYPE *UnprojectPoints )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [in] */ UINT32 __sourcePointsSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__sourcePointsSize) __x_ABI_CWindows_CFoundation_CPoint *sourcePoints,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *targetCoordinateSystem,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CNumerics_CVector3 *results);
        
        HRESULT ( STDMETHODCALLTYPE *MapPoint )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CPoint sourcePoint,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *targetCoordinateSystem,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics *targetCameraIntrinsics,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CPoint *result);
        
        HRESULT ( STDMETHODCALLTYPE *MapPoints )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper * This,
            /* [in] */ UINT32 __sourcePointsSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__sourcePointsSize) __x_ABI_CWindows_CFoundation_CPoint *sourcePoints,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *targetCoordinateSystem,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CICameraIntrinsics *targetCameraIntrinsics,
            /* [in] */ UINT32 __resultsSize,
            /* [out][size_is] */ __RPC__out_ecount_full(__resultsSize) __x_ABI_CWindows_CFoundation_CPoint *results);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapperVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapperVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_UnprojectPoint(This,sourcePoint,targetCoordinateSystem,result)	\
    ( (This)->lpVtbl -> UnprojectPoint(This,sourcePoint,targetCoordinateSystem,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_UnprojectPoints(This,__sourcePointsSize,sourcePoints,targetCoordinateSystem,__resultsSize,results)	\
    ( (This)->lpVtbl -> UnprojectPoints(This,__sourcePointsSize,sourcePoints,targetCoordinateSystem,__resultsSize,results) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_MapPoint(This,sourcePoint,targetCoordinateSystem,targetCameraIntrinsics,result)	\
    ( (This)->lpVtbl -> MapPoint(This,sourcePoint,targetCoordinateSystem,targetCameraIntrinsics,result) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_MapPoints(This,__sourcePointsSize,sourcePoints,targetCoordinateSystem,targetCameraIntrinsics,__resultsSize,results)	\
    ( (This)->lpVtbl -> MapPoints(This,__sourcePointsSize,sourcePoints,targetCoordinateSystem,targetCameraIntrinsics,__resultsSize,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIDepthCorrelatedCoordinateMapper_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0020 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameControlCapabilities[] = L"Windows.Media.Devices.Core.IFrameControlCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0020 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0020_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0020_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameControlCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("A8FFAE60-4E9E-4377-A789-E24C4AE7E544")
                        IFrameControlCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Exposure( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameExposureCapabilities **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExposureCompensation( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameExposureCompensationCapabilities **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsoSpeed( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameIsoSpeedCapabilities **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Focus( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameFocusCapabilities **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PhotoConfirmationSupported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameControlCapabilities = __uuidof(IFrameControlCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Exposure )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExposureCompensation )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsoSpeed )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Focus )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PhotoConfirmationSupported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_get_Exposure(This,value)	\
    ( (This)->lpVtbl -> get_Exposure(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_get_ExposureCompensation(This,value)	\
    ( (This)->lpVtbl -> get_ExposureCompensation(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_get_IsoSpeed(This,value)	\
    ( (This)->lpVtbl -> get_IsoSpeed(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_get_Focus(This,value)	\
    ( (This)->lpVtbl -> get_Focus(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_get_PhotoConfirmationSupported(This,value)	\
    ( (This)->lpVtbl -> get_PhotoConfirmationSupported(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0021 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameControlCapabilities2[] = L"Windows.Media.Devices.Core.IFrameControlCapabilities2";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0021 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0021_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0021_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameControlCapabilities2 */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("CE9B0464-4730-440F-BD3E-EFE8A8F230A8")
                        IFrameControlCapabilities2 : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Flash( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameFlashCapabilities **value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameControlCapabilities2 = __uuidof(IFrameControlCapabilities2);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Flash )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2 * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2Vtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_get_Flash(This,value)	\
    ( (This)->lpVtbl -> get_Flash(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities2_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0022 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameController[] = L"Windows.Media.Devices.Core.IFrameController";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0022 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0022_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0022_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameController */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("C16459D9-BAEF-4052-9177-48AFF2AF7522")
                        IFrameController : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExposureControl( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameExposureControl **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExposureCompensationControl( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameExposureCompensationControl **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsoSpeedControl( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameIsoSpeedControl **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FocusControl( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameFocusControl **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PhotoConfirmationEnabled( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_boolean **value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PhotoConfirmationEnabled( 
                                /* [in] */ __RPC__in_opt __FIReference_1_boolean *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameController = __uuidof(IFrameController);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExposureControl )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExposureCompensationControl )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsoSpeedControl )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FocusControl )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PhotoConfirmationEnabled )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_boolean **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PhotoConfirmationEnabled )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController * This,
            /* [in] */ __RPC__in_opt __FIReference_1_boolean *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControllerVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_get_ExposureControl(This,value)	\
    ( (This)->lpVtbl -> get_ExposureControl(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_get_ExposureCompensationControl(This,value)	\
    ( (This)->lpVtbl -> get_ExposureCompensationControl(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_get_IsoSpeedControl(This,value)	\
    ( (This)->lpVtbl -> get_IsoSpeedControl(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_get_FocusControl(This,value)	\
    ( (This)->lpVtbl -> get_FocusControl(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_get_PhotoConfirmationEnabled(This,value)	\
    ( (This)->lpVtbl -> get_PhotoConfirmationEnabled(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_put_PhotoConfirmationEnabled(This,value)	\
    ( (This)->lpVtbl -> put_PhotoConfirmationEnabled(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0023 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameController2[] = L"Windows.Media.Devices.Core.IFrameController2";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0023 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0023_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0023_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameController2 */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("00D3BC75-D87C-485B-8A09-5C358568B427")
                        IFrameController2 : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FlashControl( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameFlashControl **value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameController2 = __uuidof(IFrameController2);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FlashControl )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2 * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2Vtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_get_FlashControl(This,value)	\
    ( (This)->lpVtbl -> get_FlashControl(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameController2_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0024 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameExposureCapabilities[] = L"Windows.Media.Devices.Core.IFrameExposureCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0024 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0024_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0024_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameExposureCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("BDBE9CE3-3985-4E72-97C2-0590D61307A1")
                        IFrameExposureCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Min( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Max( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameExposureCapabilities = __uuidof(IFrameExposureCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Min )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Max )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Step )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_get_Min(This,value)	\
    ( (This)->lpVtbl -> get_Min(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_get_Max(This,value)	\
    ( (This)->lpVtbl -> get_Max(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_get_Step(This,value)	\
    ( (This)->lpVtbl -> get_Step(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0025 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameExposureCompensationCapabilities[] = L"Windows.Media.Devices.Core.IFrameExposureCompensationCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0025 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0025_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0025_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameExposureCompensationCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("B988A823-8065-41EE-B04F-722265954500")
                        IFrameExposureCompensationCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Min( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Max( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameExposureCompensationCapabilities = __uuidof(IFrameExposureCompensationCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Min )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Max )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Step )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_get_Min(This,value)	\
    ( (This)->lpVtbl -> get_Min(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_get_Max(This,value)	\
    ( (This)->lpVtbl -> get_Max(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_get_Step(This,value)	\
    ( (This)->lpVtbl -> get_Step(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0026 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameExposureCompensationControl[] = L"Windows.Media.Devices.Core.IFrameExposureCompensationControl";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0026 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0026_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0026_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameExposureCompensationControl */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("E95896C9-F7F9-48CA-8591-A26531CB1578")
                        IFrameExposureCompensationControl : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_float **value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
                                /* [in] */ __RPC__in_opt __FIReference_1_float *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameExposureCompensationControl = __uuidof(IFrameExposureCompensationControl);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_float **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl * This,
            /* [in] */ __RPC__in_opt __FIReference_1_float *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControlVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_get_Value(This,value)	\
    ( (This)->lpVtbl -> get_Value(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_put_Value(This,value)	\
    ( (This)->lpVtbl -> put_Value(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureCompensationControl_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0027 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameExposureControl[] = L"Windows.Media.Devices.Core.IFrameExposureControl";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0027 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0027_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0027_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameExposureControl */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("B1605A61-FFAF-4752-B621-F5B6F117F432")
                        IFrameExposureControl : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Auto( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Auto( 
                                /* [in] */ boolean value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_Windows__CFoundation__CTimeSpan **value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
                                /* [in] */ __RPC__in_opt __FIReference_1_Windows__CFoundation__CTimeSpan *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameExposureControl = __uuidof(IFrameExposureControl);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_Windows__CFoundation__CTimeSpan **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl * This,
            /* [in] */ __RPC__in_opt __FIReference_1_Windows__CFoundation__CTimeSpan *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControlVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_get_Auto(This,value)	\
    ( (This)->lpVtbl -> get_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_put_Auto(This,value)	\
    ( (This)->lpVtbl -> put_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_get_Value(This,value)	\
    ( (This)->lpVtbl -> get_Value(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_put_Value(This,value)	\
    ( (This)->lpVtbl -> put_Value(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameExposureControl_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0028 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameFlashCapabilities[] = L"Windows.Media.Devices.Core.IFrameFlashCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0028 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0028_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0028_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameFlashCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("BB9341A2-5EBE-4F62-8223-0E2B05BFBBD0")
                        IFrameFlashCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RedEyeReductionSupported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PowerSupported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameFlashCapabilities = __uuidof(IFrameFlashCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RedEyeReductionSupported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PowerSupported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_get_RedEyeReductionSupported(This,value)	\
    ( (This)->lpVtbl -> get_RedEyeReductionSupported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_get_PowerSupported(This,value)	\
    ( (This)->lpVtbl -> get_PowerSupported(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0029 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameFlashControl[] = L"Windows.Media.Devices.Core.IFrameFlashControl";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0029 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0029_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameFlashControl */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("75D5F6C7-BD45-4FAB-9375-45AC04B332C2")
                        IFrameFlashControl : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Mode( 
                                /* [out][retval] */ __RPC__out ABI::Windows::Media::Devices::Core::FrameFlashMode *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Mode( 
                                /* [in] */ ABI::Windows::Media::Devices::Core::FrameFlashMode value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Auto( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Auto( 
                                /* [in] */ boolean value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RedEyeReduction( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RedEyeReduction( 
                                /* [in] */ boolean value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PowerPercent( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PowerPercent( 
                                /* [in] */ FLOAT value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameFlashControl = __uuidof(IFrameFlashControl);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Mode )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CMedia_CDevices_CCore_CFrameFlashMode *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Mode )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [in] */ __x_ABI_CWindows_CMedia_CDevices_CCore_CFrameFlashMode value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RedEyeReduction )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RedEyeReduction )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PowerPercent )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PowerPercent )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl * This,
            /* [in] */ FLOAT value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControlVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_get_Mode(This,value)	\
    ( (This)->lpVtbl -> get_Mode(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_put_Mode(This,value)	\
    ( (This)->lpVtbl -> put_Mode(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_get_Auto(This,value)	\
    ( (This)->lpVtbl -> get_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_put_Auto(This,value)	\
    ( (This)->lpVtbl -> put_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_get_RedEyeReduction(This,value)	\
    ( (This)->lpVtbl -> get_RedEyeReduction(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_put_RedEyeReduction(This,value)	\
    ( (This)->lpVtbl -> put_RedEyeReduction(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_get_PowerPercent(This,value)	\
    ( (This)->lpVtbl -> get_PowerPercent(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_put_PowerPercent(This,value)	\
    ( (This)->lpVtbl -> put_PowerPercent(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFlashControl_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0030 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameFocusCapabilities[] = L"Windows.Media.Devices.Core.IFrameFocusCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0030 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0030_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameFocusCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("7B25CD58-01C0-4065-9C40-C1A721425C1A")
                        IFrameFocusCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Min( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Max( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameFocusCapabilities = __uuidof(IFrameFocusCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Min )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Max )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Step )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_get_Min(This,value)	\
    ( (This)->lpVtbl -> get_Min(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_get_Max(This,value)	\
    ( (This)->lpVtbl -> get_Max(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_get_Step(This,value)	\
    ( (This)->lpVtbl -> get_Step(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0031 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameFocusControl[] = L"Windows.Media.Devices.Core.IFrameFocusControl";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0031 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0031_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0031_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameFocusControl */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("272DF1D0-D912-4214-A67B-E38A8D48D8C6")
                        IFrameFocusControl : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_UINT32 **value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
                                /* [in] */ __RPC__in_opt __FIReference_1_UINT32 *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameFocusControl = __uuidof(IFrameFocusControl);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_UINT32 **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl * This,
            /* [in] */ __RPC__in_opt __FIReference_1_UINT32 *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControlVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_get_Value(This,value)	\
    ( (This)->lpVtbl -> get_Value(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_put_Value(This,value)	\
    ( (This)->lpVtbl -> put_Value(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameFocusControl_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0032 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameIsoSpeedCapabilities[] = L"Windows.Media.Devices.Core.IFrameIsoSpeedCapabilities";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0032 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0032_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0032_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameIsoSpeedCapabilities */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("16BDFF61-6DF6-4AC9-B92A-9F6ECD1AD2FA")
                        IFrameIsoSpeedCapabilities : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Min( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Max( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
                                /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameIsoSpeedCapabilities = __uuidof(IFrameIsoSpeedCapabilities);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilitiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Min )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Max )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Step )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilitiesVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilitiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_get_Min(This,value)	\
    ( (This)->lpVtbl -> get_Min(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_get_Max(This,value)	\
    ( (This)->lpVtbl -> get_Max(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_get_Step(This,value)	\
    ( (This)->lpVtbl -> get_Step(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedCapabilities_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0033 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IFrameIsoSpeedControl[] = L"Windows.Media.Devices.Core.IFrameIsoSpeedControl";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0033 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0033_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0033_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IFrameIsoSpeedControl */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("1A03EFED-786A-4C75-A557-7AB9A85F588C")
                        IFrameIsoSpeedControl : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Auto( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Auto( 
                                /* [in] */ boolean value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_UINT32 **value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
                                /* [in] */ __RPC__in_opt __FIReference_1_UINT32 *value) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IFrameIsoSpeedControl = __uuidof(IFrameIsoSpeedControl);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Auto )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_UINT32 **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl * This,
            /* [in] */ __RPC__in_opt __FIReference_1_UINT32 *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControlVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_get_Auto(This,value)	\
    ( (This)->lpVtbl -> get_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_put_Auto(This,value)	\
    ( (This)->lpVtbl -> put_Auto(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_get_Value(This,value)	\
    ( (This)->lpVtbl -> get_Value(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_put_Value(This,value)	\
    ( (This)->lpVtbl -> put_Value(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameIsoSpeedControl_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0034 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Devices_Core_IVariablePhotoSequenceController[] = L"Windows.Media.Devices.Core.IVariablePhotoSequenceController";
#endif /* !defined(____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0034 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0034_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0034_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Devices::Core::IVariablePhotoSequenceController */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Devices {
                    namespace Core {
                        
                        MIDL_INTERFACE("7FBFF880-ED8C-43FD-A7C3-B35809E4229A")
                        IVariablePhotoSequenceController : public IInspectable
                        {
                        public:
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Supported( 
                                /* [out][retval] */ __RPC__out boolean *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxPhotosPerSecond( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PhotosPerSecondLimit( 
                                /* [out][retval] */ __RPC__out FLOAT *value) = 0;
                            
                            virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PhotosPerSecondLimit( 
                                /* [in] */ FLOAT value) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE GetHighestConcurrentFrameRate( 
                                /* [in] */ __RPC__in_opt ABI::Windows::Media::MediaProperties::IMediaEncodingProperties *captureProperties,
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::MediaProperties::IMediaRatio **value) = 0;
                            
                            virtual HRESULT STDMETHODCALLTYPE GetCurrentFrameRate( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::MediaProperties::IMediaRatio **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FrameCapabilities( 
                                /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Devices::Core::IFrameControlCapabilities **value) = 0;
                            
                            virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DesiredFrameControllers( 
                                /* [out][retval] */ __RPC__deref_out_opt __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController **items) = 0;
                            
                        };

                        extern const __declspec(selectany) IID & IID_IVariablePhotoSequenceController = __uuidof(IVariablePhotoSequenceController);

                        
                    }  /* end namespace */
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Supported )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxPhotosPerSecond )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PhotosPerSecondLimit )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__out FLOAT *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PhotosPerSecondLimit )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [in] */ FLOAT value);
        
        HRESULT ( STDMETHODCALLTYPE *GetHighestConcurrentFrameRate )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIMediaEncodingProperties *captureProperties,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIMediaRatio **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetCurrentFrameRate )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIMediaRatio **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FrameCapabilities )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CDevices_CCore_CIFrameControlCapabilities **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DesiredFrameControllers )( 
            __RPC__in __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVector_1_Windows__CMedia__CDevices__CCore__CFrameController **items);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceControllerVtbl;

    interface __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_get_Supported(This,value)	\
    ( (This)->lpVtbl -> get_Supported(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_get_MaxPhotosPerSecond(This,value)	\
    ( (This)->lpVtbl -> get_MaxPhotosPerSecond(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_get_PhotosPerSecondLimit(This,value)	\
    ( (This)->lpVtbl -> get_PhotosPerSecondLimit(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_put_PhotosPerSecondLimit(This,value)	\
    ( (This)->lpVtbl -> put_PhotosPerSecondLimit(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_GetHighestConcurrentFrameRate(This,captureProperties,value)	\
    ( (This)->lpVtbl -> GetHighestConcurrentFrameRate(This,captureProperties,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_GetCurrentFrameRate(This,value)	\
    ( (This)->lpVtbl -> GetCurrentFrameRate(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_get_FrameCapabilities(This,value)	\
    ( (This)->lpVtbl -> get_FrameCapabilities(This,value) ) 

#define __x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_get_DesiredFrameControllers(This,items)	\
    ( (This)->lpVtbl -> get_DesiredFrameControllers(This,items) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CDevices_CCore_CIVariablePhotoSequenceController_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0035 */
/* [local] */ 

#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_CameraIntrinsics_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_CameraIntrinsics_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_CameraIntrinsics[] = L"Windows.Media.Devices.Core.CameraIntrinsics";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_DepthCorrelatedCoordinateMapper_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_DepthCorrelatedCoordinateMapper_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_DepthCorrelatedCoordinateMapper[] = L"Windows.Media.Devices.Core.DepthCorrelatedCoordinateMapper";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameControlCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameControlCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameControlCapabilities[] = L"Windows.Media.Devices.Core.FrameControlCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameController_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameController_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameController[] = L"Windows.Media.Devices.Core.FrameController";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameExposureCapabilities[] = L"Windows.Media.Devices.Core.FrameExposureCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCompensationCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCompensationCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameExposureCompensationCapabilities[] = L"Windows.Media.Devices.Core.FrameExposureCompensationCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCompensationControl_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureCompensationControl_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameExposureCompensationControl[] = L"Windows.Media.Devices.Core.FrameExposureCompensationControl";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureControl_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameExposureControl_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameExposureControl[] = L"Windows.Media.Devices.Core.FrameExposureControl";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameFlashCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameFlashCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameFlashCapabilities[] = L"Windows.Media.Devices.Core.FrameFlashCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameFlashControl_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameFlashControl_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameFlashControl[] = L"Windows.Media.Devices.Core.FrameFlashControl";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameFocusCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameFocusCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameFocusCapabilities[] = L"Windows.Media.Devices.Core.FrameFocusCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameFocusControl_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameFocusControl_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameFocusControl[] = L"Windows.Media.Devices.Core.FrameFocusControl";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameIsoSpeedCapabilities_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameIsoSpeedCapabilities_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameIsoSpeedCapabilities[] = L"Windows.Media.Devices.Core.FrameIsoSpeedCapabilities";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_FrameIsoSpeedControl_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_FrameIsoSpeedControl_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_FrameIsoSpeedControl[] = L"Windows.Media.Devices.Core.FrameIsoSpeedControl";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Devices_Core_VariablePhotoSequenceController_DEFINED
#define RUNTIMECLASS_Windows_Media_Devices_Core_VariablePhotoSequenceController_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Devices_Core_VariablePhotoSequenceController[] = L"Windows.Media.Devices.Core.VariablePhotoSequenceController";
#endif


/* interface __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0035 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0035_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Edevices2Ecore_0000_0035_v0_0_s_ifspec;

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


