/*** Autogenerated by WIDL 11.8 from ../wine/include/windows.graphics.holographic.idl - Do not edit ***/

#ifdef _WIN32
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#endif

#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif

#ifndef __windows_graphics_holographic_h__
#define __windows_graphics_holographic_h__

/* Forward declarations */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera ABI::Windows::Graphics::Holographic::IHolographicCamera
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCamera;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose ABI::Windows::Graphics::Holographic::IHolographicCameraPose
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCameraPose;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters ABI::Windows::Graphics::Holographic::IHolographicCameraRenderingParameters
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCameraRenderingParameters;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame ABI::Windows::Graphics::Holographic::IHolographicFrame
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicFrame;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction ABI::Windows::Graphics::Holographic::IHolographicFramePrediction
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicFramePrediction;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace ABI::Windows::Graphics::Holographic::IHolographicSpace
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpace;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 ABI::Windows::Graphics::Holographic::IHolographicSpaceStatics2
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceStatics2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 ABI::Windows::Graphics::Holographic::IHolographicSpaceStatics3
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceStatics3;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraAddedEventArgs
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceCameraAddedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraRemovedEventArgs
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceCameraRemovedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCamera_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCamera_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicCamera;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCamera __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCamera;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCamera_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraPose_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraPose_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicCameraPose;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraPose __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraPose;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraPose_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraRenderingParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraRenderingParameters_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicCameraRenderingParameters;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraRenderingParameters __x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraRenderingParameters;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicCameraRenderingParameters_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFrame_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFrame_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicFrame;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFrame __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFrame;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFrame_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePrediction_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePrediction_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicFramePrediction;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePrediction __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePrediction;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePrediction_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpace_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpace_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicSpace;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpace __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpace;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpace_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicSpaceCameraAddedEventArgs;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraAddedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraAddedEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                class HolographicSpaceCameraRemovedEventArgs;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraRemovedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraRemovedEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__ */

#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_HolographicStereoTransform_FWD_DEFINED__
#define ____FIReference_1_HolographicStereoTransform_FWD_DEFINED__
typedef interface __FIReference_1_HolographicStereoTransform __FIReference_1_HolographicStereoTransform;
#ifdef __cplusplus
#define __FIReference_1_HolographicStereoTransform ABI::Windows::Foundation::IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* >
#endif /* __cplusplus */
#endif

/* Headers for imported files */

#include <inspectable.h>
#include <asyncinfo.h>
#include <eventtoken.h>
#include <windowscontracts.h>
#include <windows.foundation.h>
#include <windows.foundation.numerics.h>
#include <windows.graphics.directx.h>
#include <windows.graphics.directx.direct3d11.h>
#include <windows.perception.h>
#include <windows.perception.spatial.h>
#include <windows.ui.core.h>

#ifdef __cplusplus
extern "C" {
#endif

#if !defined(WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION)
#define WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION 0xe0000
#endif // defined(WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION)

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult_ENUM_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                enum HolographicFramePresentResult {
                    HolographicFramePresentResult_Success = 0,
                    HolographicFramePresentResult_DeviceRemoved = 1
                };
            }
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult {
    HolographicFramePresentResult_Success = 0,
    HolographicFramePresentResult_DeviceRemoved = 1
};
#ifdef WIDL_using_Windows_Graphics_Holographic
#define HolographicFramePresentResult __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif /* ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior_ENUM_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                enum HolographicFramePresentWaitBehavior {
                    HolographicFramePresentWaitBehavior_WaitForFrameToFinish = 0,
                    HolographicFramePresentWaitBehavior_DoNotWaitForFrameToFinish = 1
                };
            }
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior {
    HolographicFramePresentWaitBehavior_WaitForFrameToFinish = 0,
    HolographicFramePresentWaitBehavior_DoNotWaitForFrameToFinish = 1
};
#ifdef WIDL_using_Windows_Graphics_Holographic
#define HolographicFramePresentWaitBehavior __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif /* ____x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior;
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId __x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                typedef struct HolographicAdapterId HolographicAdapterId;
            }
        }
    }
}
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                typedef struct HolographicStereoTransform HolographicStereoTransform;
            }
        }
    }
}
#endif /* __cplusplus */

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera ABI::Windows::Graphics::Holographic::IHolographicCamera
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCamera;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose ABI::Windows::Graphics::Holographic::IHolographicCameraPose
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCameraPose;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters ABI::Windows::Graphics::Holographic::IHolographicCameraRenderingParameters
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicCameraRenderingParameters;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame ABI::Windows::Graphics::Holographic::IHolographicFrame
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicFrame;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction ABI::Windows::Graphics::Holographic::IHolographicFramePrediction
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicFramePrediction;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics ABI::Windows::Graphics::Holographic::IHolographicSpaceStatics
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceStatics;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 ABI::Windows::Graphics::Holographic::IHolographicSpaceStatics2
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceStatics2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 ABI::Windows::Graphics::Holographic::IHolographicSpaceStatics3
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceStatics3;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraAddedEventArgs
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceCameraAddedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraRemovedEventArgs
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                interface IHolographicSpaceCameraRemovedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_HolographicStereoTransform_FWD_DEFINED__
#define ____FIReference_1_HolographicStereoTransform_FWD_DEFINED__
typedef interface __FIReference_1_HolographicStereoTransform __FIReference_1_HolographicStereoTransform;
#ifdef __cplusplus
#define __FIReference_1_HolographicStereoTransform ABI::Windows::Foundation::IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform >
#endif /* __cplusplus */
#endif

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                struct HolographicAdapterId {
                    UINT32 LowPart;
                    INT32 HighPart;
                };
            }
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId {
    UINT32 LowPart;
    INT32 HighPart;
};
#ifdef WIDL_using_Windows_Graphics_Holographic
#define HolographicAdapterId __x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                struct HolographicStereoTransform {
                    ABI::Windows::Foundation::Numerics::Matrix4x4 Left;
                    ABI::Windows::Foundation::Numerics::Matrix4x4 Right;
                };
            }
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform {
    __x_ABI_CWindows_CFoundation_CNumerics_CMatrix4x4 Left;
    __x_ABI_CWindows_CFoundation_CNumerics_CMatrix4x4 Right;
};
#ifdef WIDL_using_Windows_Graphics_Holographic
#define HolographicStereoTransform __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */
/*****************************************************************************
 * IHolographicCamera interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera, 0xe4e98445, 0x9bed, 0x4980, 0x9b,0xa0, 0xe8,0x76,0x80,0xd1,0xcb,0x74);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("e4e98445-9bed-4980-9ba0-e87680d1cb74")
                IHolographicCamera : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_RenderTargetSize(
                        ABI::Windows::Foundation::Size *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_ViewportScaleFactor(
                        DOUBLE *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE put_ViewportScaleFactor(
                        DOUBLE value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_IsStereo(
                        boolean *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Id(
                        UINT32 *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE SetNearPlaneDistance(
                        DOUBLE value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE SetFarPlaneDistance(
                        DOUBLE value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera, 0xe4e98445, 0x9bed, 0x4980, 0x9b,0xa0, 0xe8,0x76,0x80,0xd1,0xcb,0x74)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        TrustLevel *trustLevel);

    /*** IHolographicCamera methods ***/
    HRESULT (STDMETHODCALLTYPE *get_RenderTargetSize)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        __x_ABI_CWindows_CFoundation_CSize *value);

    HRESULT (STDMETHODCALLTYPE *get_ViewportScaleFactor)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        DOUBLE *value);

    HRESULT (STDMETHODCALLTYPE *put_ViewportScaleFactor)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        DOUBLE value);

    HRESULT (STDMETHODCALLTYPE *get_IsStereo)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_Id)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *SetNearPlaneDistance)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        DOUBLE value);

    HRESULT (STDMETHODCALLTYPE *SetFarPlaneDistance)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *This,
        DOUBLE value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicCamera methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_RenderTargetSize(This,value) (This)->lpVtbl->get_RenderTargetSize(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_ViewportScaleFactor(This,value) (This)->lpVtbl->get_ViewportScaleFactor(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_put_ViewportScaleFactor(This,value) (This)->lpVtbl->put_ViewportScaleFactor(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_IsStereo(This,value) (This)->lpVtbl->get_IsStereo(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_Id(This,value) (This)->lpVtbl->get_Id(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetNearPlaneDistance(This,value) (This)->lpVtbl->SetNearPlaneDistance(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetFarPlaneDistance(This,value) (This)->lpVtbl->SetFarPlaneDistance(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicCamera methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_RenderTargetSize(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,__x_ABI_CWindows_CFoundation_CSize *value) {
    return This->lpVtbl->get_RenderTargetSize(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_ViewportScaleFactor(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,DOUBLE *value) {
    return This->lpVtbl->get_ViewportScaleFactor(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_put_ViewportScaleFactor(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,DOUBLE value) {
    return This->lpVtbl->put_ViewportScaleFactor(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_IsStereo(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,boolean *value) {
    return This->lpVtbl->get_IsStereo(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_Id(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,UINT32 *value) {
    return This->lpVtbl->get_Id(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetNearPlaneDistance(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,DOUBLE value) {
    return This->lpVtbl->SetNearPlaneDistance(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetFarPlaneDistance(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera* This,DOUBLE value) {
    return This->lpVtbl->SetFarPlaneDistance(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicCamera IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera
#define IHolographicCameraVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraVtbl
#define IHolographicCamera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera
#define IHolographicCamera_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_QueryInterface
#define IHolographicCamera_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_AddRef
#define IHolographicCamera_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_Release
#define IHolographicCamera_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetIids
#define IHolographicCamera_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetRuntimeClassName
#define IHolographicCamera_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_GetTrustLevel
#define IHolographicCamera_get_RenderTargetSize __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_RenderTargetSize
#define IHolographicCamera_get_ViewportScaleFactor __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_ViewportScaleFactor
#define IHolographicCamera_put_ViewportScaleFactor __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_put_ViewportScaleFactor
#define IHolographicCamera_get_IsStereo __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_IsStereo
#define IHolographicCamera_get_Id __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_get_Id
#define IHolographicCamera_SetNearPlaneDistance __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetNearPlaneDistance
#define IHolographicCamera_SetFarPlaneDistance __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_SetFarPlaneDistance
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicCameraPose interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose, 0x0d7d7e30, 0x12de, 0x45bd, 0x91,0x2b, 0xc7,0xf6,0x56,0x15,0x99,0xd1);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("0d7d7e30-12de-45bd-912b-c7f6561599d1")
                IHolographicCameraPose : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_HolographicCamera(
                        ABI::Windows::Graphics::Holographic::IHolographicCamera **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Viewport(
                        ABI::Windows::Foundation::Rect *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE TryGetViewTransform(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinate_system,
                        ABI::Windows::Foundation::IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_ProjectionTransform(
                        ABI::Windows::Graphics::Holographic::HolographicStereoTransform *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE TryGetCullingFrustum(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinate_system,
                        ABI::Windows::Foundation::IReference<ABI::Windows::Perception::Spatial::SpatialBoundingFrustum > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE TryGetVisibleFrustum(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinateSystem,
                        ABI::Windows::Foundation::IReference<ABI::Windows::Perception::Spatial::SpatialBoundingFrustum > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_NearPlaneDistance(
                        DOUBLE *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_FarPlaneDistance(
                        DOUBLE *value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose, 0x0d7d7e30, 0x12de, 0x45bd, 0x91,0x2b, 0xc7,0xf6,0x56,0x15,0x99,0xd1)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPoseVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        TrustLevel *trustLevel);

    /*** IHolographicCameraPose methods ***/
    HRESULT (STDMETHODCALLTYPE *get_HolographicCamera)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value);

    HRESULT (STDMETHODCALLTYPE *get_Viewport)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CFoundation_CRect *value);

    HRESULT (STDMETHODCALLTYPE *TryGetViewTransform)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,
        __FIReference_1_HolographicStereoTransform **value);

    HRESULT (STDMETHODCALLTYPE *get_ProjectionTransform)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform *value);

    HRESULT (STDMETHODCALLTYPE *TryGetCullingFrustum)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,
        __FIReference_1_SpatialBoundingFrustum **value);

    HRESULT (STDMETHODCALLTYPE *TryGetVisibleFrustum)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinateSystem,
        __FIReference_1_SpatialBoundingFrustum **value);

    HRESULT (STDMETHODCALLTYPE *get_NearPlaneDistance)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        DOUBLE *value);

    HRESULT (STDMETHODCALLTYPE *get_FarPlaneDistance)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *This,
        DOUBLE *value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPoseVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPoseVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicCameraPose methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_HolographicCamera(This,value) (This)->lpVtbl->get_HolographicCamera(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_Viewport(This,value) (This)->lpVtbl->get_Viewport(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetViewTransform(This,coordinate_system,value) (This)->lpVtbl->TryGetViewTransform(This,coordinate_system,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_ProjectionTransform(This,value) (This)->lpVtbl->get_ProjectionTransform(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetCullingFrustum(This,coordinate_system,value) (This)->lpVtbl->TryGetCullingFrustum(This,coordinate_system,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetVisibleFrustum(This,coordinateSystem,value) (This)->lpVtbl->TryGetVisibleFrustum(This,coordinateSystem,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_NearPlaneDistance(This,value) (This)->lpVtbl->get_NearPlaneDistance(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_FarPlaneDistance(This,value) (This)->lpVtbl->get_FarPlaneDistance(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicCameraPose methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_HolographicCamera(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value) {
    return This->lpVtbl->get_HolographicCamera(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_Viewport(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CFoundation_CRect *value) {
    return This->lpVtbl->get_Viewport(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetViewTransform(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,__FIReference_1_HolographicStereoTransform **value) {
    return This->lpVtbl->TryGetViewTransform(This,coordinate_system,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_ProjectionTransform(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform *value) {
    return This->lpVtbl->get_ProjectionTransform(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetCullingFrustum(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,__FIReference_1_SpatialBoundingFrustum **value) {
    return This->lpVtbl->TryGetCullingFrustum(This,coordinate_system,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetVisibleFrustum(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinateSystem,__FIReference_1_SpatialBoundingFrustum **value) {
    return This->lpVtbl->TryGetVisibleFrustum(This,coordinateSystem,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_NearPlaneDistance(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,DOUBLE *value) {
    return This->lpVtbl->get_NearPlaneDistance(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_FarPlaneDistance(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose* This,DOUBLE *value) {
    return This->lpVtbl->get_FarPlaneDistance(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicCameraPose IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose
#define IHolographicCameraPoseVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPoseVtbl
#define IHolographicCameraPose __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose
#define IHolographicCameraPose_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_QueryInterface
#define IHolographicCameraPose_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_AddRef
#define IHolographicCameraPose_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_Release
#define IHolographicCameraPose_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetIids
#define IHolographicCameraPose_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetRuntimeClassName
#define IHolographicCameraPose_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_GetTrustLevel
#define IHolographicCameraPose_get_HolographicCamera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_HolographicCamera
#define IHolographicCameraPose_get_Viewport __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_Viewport
#define IHolographicCameraPose_TryGetViewTransform __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetViewTransform
#define IHolographicCameraPose_get_ProjectionTransform __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_ProjectionTransform
#define IHolographicCameraPose_TryGetCullingFrustum __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetCullingFrustum
#define IHolographicCameraPose_TryGetVisibleFrustum __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_TryGetVisibleFrustum
#define IHolographicCameraPose_get_NearPlaneDistance __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_NearPlaneDistance
#define IHolographicCameraPose_get_FarPlaneDistance __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_get_FarPlaneDistance
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicCameraRenderingParameters interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters, 0x8eac2ed1, 0x5bf4, 0x4e16, 0x82,0x36, 0xae,0x08,0x00,0xc1,0x1d,0x0d);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("8eac2ed1-5bf4-4e16-8236-ae0800c11d0d")
                IHolographicCameraRenderingParameters : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE SetFocusPoint(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinate_system,
                        ABI::Windows::Foundation::Numerics::Vector3 position) = 0;

                    virtual HRESULT STDMETHODCALLTYPE SetFocusPointWithNormal(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinate_system,
                        ABI::Windows::Foundation::Numerics::Vector3 position,
                        ABI::Windows::Foundation::Numerics::Vector3 normal) = 0;

                    virtual HRESULT STDMETHODCALLTYPE SetFocusPointWithNormalLinearVelocity(
                        ABI::Windows::Perception::Spatial::ISpatialCoordinateSystem *coordinate_system,
                        ABI::Windows::Foundation::Numerics::Vector3 position,
                        ABI::Windows::Foundation::Numerics::Vector3 normal,
                        ABI::Windows::Foundation::Numerics::Vector3 linearVelocity) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Direct3D11Device(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DDevice **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Direct3D11BackBuffer(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters, 0x8eac2ed1, 0x5bf4, 0x4e16, 0x82,0x36, 0xae,0x08,0x00,0xc1,0x1d,0x0d)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParametersVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        TrustLevel *trustLevel);

    /*** IHolographicCameraRenderingParameters methods ***/
    HRESULT (STDMETHODCALLTYPE *SetFocusPoint)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 position);

    HRESULT (STDMETHODCALLTYPE *SetFocusPointWithNormal)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 position,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 normal);

    HRESULT (STDMETHODCALLTYPE *SetFocusPointWithNormalLinearVelocity)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        __x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 position,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 normal,
        __x_ABI_CWindows_CFoundation_CNumerics_CVector3 linearVelocity);

    HRESULT (STDMETHODCALLTYPE *get_Direct3D11Device)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DDevice **value);

    HRESULT (STDMETHODCALLTYPE *get_Direct3D11BackBuffer)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters *This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface **value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParametersVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParametersVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicCameraRenderingParameters methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPoint(This,coordinate_system,position) (This)->lpVtbl->SetFocusPoint(This,coordinate_system,position)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormal(This,coordinate_system,position,normal) (This)->lpVtbl->SetFocusPointWithNormal(This,coordinate_system,position,normal)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormalLinearVelocity(This,coordinate_system,position,normal,linearVelocity) (This)->lpVtbl->SetFocusPointWithNormalLinearVelocity(This,coordinate_system,position,normal,linearVelocity)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11Device(This,value) (This)->lpVtbl->get_Direct3D11Device(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11BackBuffer(This,value) (This)->lpVtbl->get_Direct3D11BackBuffer(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicCameraRenderingParameters methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPoint(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 position) {
    return This->lpVtbl->SetFocusPoint(This,coordinate_system,position);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormal(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 position,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 normal) {
    return This->lpVtbl->SetFocusPointWithNormal(This,coordinate_system,position,normal);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormalLinearVelocity(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,__x_ABI_CWindows_CPerception_CSpatial_CISpatialCoordinateSystem *coordinate_system,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 position,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 normal,__x_ABI_CWindows_CFoundation_CNumerics_CVector3 linearVelocity) {
    return This->lpVtbl->SetFocusPointWithNormalLinearVelocity(This,coordinate_system,position,normal,linearVelocity);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11Device(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,__x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DDevice **value) {
    return This->lpVtbl->get_Direct3D11Device(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11BackBuffer(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters* This,__x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface **value) {
    return This->lpVtbl->get_Direct3D11BackBuffer(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicCameraRenderingParameters IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters
#define IHolographicCameraRenderingParametersVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParametersVtbl
#define IHolographicCameraRenderingParameters __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters
#define IHolographicCameraRenderingParameters_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_QueryInterface
#define IHolographicCameraRenderingParameters_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_AddRef
#define IHolographicCameraRenderingParameters_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_Release
#define IHolographicCameraRenderingParameters_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetIids
#define IHolographicCameraRenderingParameters_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetRuntimeClassName
#define IHolographicCameraRenderingParameters_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_GetTrustLevel
#define IHolographicCameraRenderingParameters_SetFocusPoint __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPoint
#define IHolographicCameraRenderingParameters_SetFocusPointWithNormal __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormal
#define IHolographicCameraRenderingParameters_SetFocusPointWithNormalLinearVelocity __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_SetFocusPointWithNormalLinearVelocity
#define IHolographicCameraRenderingParameters_get_Direct3D11Device __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11Device
#define IHolographicCameraRenderingParameters_get_Direct3D11BackBuffer __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_get_Direct3D11BackBuffer
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicFrame interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame, 0xc6988eb6, 0xa8b9, 0x3054, 0xa6,0xeb, 0xd6,0x24,0xb6,0x53,0x63,0x75);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("c6988eb6-a8b9-3054-a6eb-d624b6536375")
                IHolographicFrame : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_AddedCameras(
                        ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_RemovedCameras(
                        ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetRenderingParameters(
                        ABI::Windows::Graphics::Holographic::IHolographicCameraPose *camera_pose,
                        ABI::Windows::Graphics::Holographic::IHolographicCameraRenderingParameters **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Duration(
                        ABI::Windows::Foundation::TimeSpan *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_CurrentPrediction(
                        ABI::Windows::Graphics::Holographic::IHolographicFramePrediction **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE UpdateCurrentPrediction(
                        ) = 0;

                    virtual HRESULT STDMETHODCALLTYPE PresentUsingCurrentPrediction(
                        ABI::Windows::Graphics::Holographic::HolographicFramePresentResult *result) = 0;

                    virtual HRESULT STDMETHODCALLTYPE PresentUsingCurrentPredictionWithBehavior(
                        ABI::Windows::Graphics::Holographic::HolographicFramePresentWaitBehavior wait_behavior,
                        ABI::Windows::Graphics::Holographic::HolographicFramePresentResult *result) = 0;

                    virtual HRESULT STDMETHODCALLTYPE WaitForFrameToFinish(
                        ) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame, 0xc6988eb6, 0xa8b9, 0x3054, 0xa6,0xeb, 0xd6,0x24,0xb6,0x53,0x63,0x75)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrameVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        TrustLevel *trustLevel);

    /*** IHolographicFrame methods ***/
    HRESULT (STDMETHODCALLTYPE *get_AddedCameras)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera **value);

    HRESULT (STDMETHODCALLTYPE *get_RemovedCameras)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera **value);

    HRESULT (STDMETHODCALLTYPE *GetRenderingParameters)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *camera_pose,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters **value);

    HRESULT (STDMETHODCALLTYPE *get_Duration)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __x_ABI_CWindows_CFoundation_CTimeSpan *value);

    HRESULT (STDMETHODCALLTYPE *get_CurrentPrediction)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction **value);

    HRESULT (STDMETHODCALLTYPE *UpdateCurrentPrediction)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This);

    HRESULT (STDMETHODCALLTYPE *PresentUsingCurrentPrediction)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult *result);

    HRESULT (STDMETHODCALLTYPE *PresentUsingCurrentPredictionWithBehavior)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior wait_behavior,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult *result);

    HRESULT (STDMETHODCALLTYPE *WaitForFrameToFinish)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame *This);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrameVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrameVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicFrame methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_AddedCameras(This,value) (This)->lpVtbl->get_AddedCameras(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_RemovedCameras(This,value) (This)->lpVtbl->get_RemovedCameras(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRenderingParameters(This,camera_pose,value) (This)->lpVtbl->GetRenderingParameters(This,camera_pose,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_Duration(This,value) (This)->lpVtbl->get_Duration(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_CurrentPrediction(This,value) (This)->lpVtbl->get_CurrentPrediction(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_UpdateCurrentPrediction(This) (This)->lpVtbl->UpdateCurrentPrediction(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPrediction(This,result) (This)->lpVtbl->PresentUsingCurrentPrediction(This,result)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPredictionWithBehavior(This,wait_behavior,result) (This)->lpVtbl->PresentUsingCurrentPredictionWithBehavior(This,wait_behavior,result)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_WaitForFrameToFinish(This) (This)->lpVtbl->WaitForFrameToFinish(This)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicFrame methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_AddedCameras(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera **value) {
    return This->lpVtbl->get_AddedCameras(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_RemovedCameras(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera **value) {
    return This->lpVtbl->get_RemovedCameras(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRenderingParameters(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *camera_pose,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraRenderingParameters **value) {
    return This->lpVtbl->GetRenderingParameters(This,camera_pose,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_Duration(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__x_ABI_CWindows_CFoundation_CTimeSpan *value) {
    return This->lpVtbl->get_Duration(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_CurrentPrediction(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction **value) {
    return This->lpVtbl->get_CurrentPrediction(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_UpdateCurrentPrediction(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This) {
    return This->lpVtbl->UpdateCurrentPrediction(This);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPrediction(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult *result) {
    return This->lpVtbl->PresentUsingCurrentPrediction(This,result);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPredictionWithBehavior(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentWaitBehavior wait_behavior,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicFramePresentResult *result) {
    return This->lpVtbl->PresentUsingCurrentPredictionWithBehavior(This,wait_behavior,result);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_WaitForFrameToFinish(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame* This) {
    return This->lpVtbl->WaitForFrameToFinish(This);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicFrame IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame
#define IHolographicFrameVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrameVtbl
#define IHolographicFrame __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame
#define IHolographicFrame_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_QueryInterface
#define IHolographicFrame_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_AddRef
#define IHolographicFrame_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_Release
#define IHolographicFrame_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetIids
#define IHolographicFrame_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRuntimeClassName
#define IHolographicFrame_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetTrustLevel
#define IHolographicFrame_get_AddedCameras __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_AddedCameras
#define IHolographicFrame_get_RemovedCameras __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_RemovedCameras
#define IHolographicFrame_GetRenderingParameters __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_GetRenderingParameters
#define IHolographicFrame_get_Duration __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_Duration
#define IHolographicFrame_get_CurrentPrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_get_CurrentPrediction
#define IHolographicFrame_UpdateCurrentPrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_UpdateCurrentPrediction
#define IHolographicFrame_PresentUsingCurrentPrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPrediction
#define IHolographicFrame_PresentUsingCurrentPredictionWithBehavior __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_PresentUsingCurrentPredictionWithBehavior
#define IHolographicFrame_WaitForFrameToFinish __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_WaitForFrameToFinish
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicFramePrediction interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction, 0x520f4de1, 0x5c0a, 0x4e79, 0xa8,0x1e, 0x6a,0xbe,0x02,0xbb,0x27,0x39);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("520f4de1-5c0a-4e79-a81e-6abe02bb2739")
                IHolographicFramePrediction : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_CameraPoses(
                        ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Timestamp(
                        ABI::Windows::Perception::IPerceptionTimestamp **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction, 0x520f4de1, 0x5c0a, 0x4e79, 0xa8,0x1e, 0x6a,0xbe,0x02,0xbb,0x27,0x39)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePredictionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        TrustLevel *trustLevel);

    /*** IHolographicFramePrediction methods ***/
    HRESULT (STDMETHODCALLTYPE *get_CameraPoses)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose **value);

    HRESULT (STDMETHODCALLTYPE *get_Timestamp)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction *This,
        __x_ABI_CWindows_CPerception_CIPerceptionTimestamp **value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePredictionVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePredictionVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicFramePrediction methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_CameraPoses(This,value) (This)->lpVtbl->get_CameraPoses(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_Timestamp(This,value) (This)->lpVtbl->get_Timestamp(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicFramePrediction methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_CameraPoses(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose **value) {
    return This->lpVtbl->get_CameraPoses(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_Timestamp(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction* This,__x_ABI_CWindows_CPerception_CIPerceptionTimestamp **value) {
    return This->lpVtbl->get_Timestamp(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicFramePrediction IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction
#define IHolographicFramePredictionVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePredictionVtbl
#define IHolographicFramePrediction __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction
#define IHolographicFramePrediction_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_QueryInterface
#define IHolographicFramePrediction_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_AddRef
#define IHolographicFramePrediction_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_Release
#define IHolographicFramePrediction_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetIids
#define IHolographicFramePrediction_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetRuntimeClassName
#define IHolographicFramePrediction_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_GetTrustLevel
#define IHolographicFramePrediction_get_CameraPoses __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_CameraPoses
#define IHolographicFramePrediction_get_Timestamp __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_get_Timestamp
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFramePrediction_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicSpace interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace, 0x4380dba6, 0x5e78, 0x434f, 0x80,0x7c, 0x34,0x33,0xd1,0xef,0xe8,0xb7);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("4380dba6-5e78-434f-807c-3433d1efe8b7")
                IHolographicSpace : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_PrimaryAdapterId(
                        ABI::Windows::Graphics::Holographic::HolographicAdapterId *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE SetDirect3D11Device(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DDevice *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_CameraAdded(
                        ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > *handler,
                        EventRegistrationToken *cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_CameraAdded(
                        EventRegistrationToken cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_CameraRemoved(
                        ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > *handler,
                        EventRegistrationToken *cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_CameraRemoved(
                        EventRegistrationToken cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE CreateNextFrame(
                        ABI::Windows::Graphics::Holographic::IHolographicFrame **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace, 0x4380dba6, 0x5e78, 0x434f, 0x80,0x7c, 0x34,0x33,0xd1,0xef,0xe8,0xb7)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        TrustLevel *trustLevel);

    /*** IHolographicSpace methods ***/
    HRESULT (STDMETHODCALLTYPE *get_PrimaryAdapterId)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId *value);

    HRESULT (STDMETHODCALLTYPE *SetDirect3D11Device)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DDevice *value);

    HRESULT (STDMETHODCALLTYPE *add_CameraAdded)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_CameraAdded)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        EventRegistrationToken cookie);

    HRESULT (STDMETHODCALLTYPE *add_CameraRemoved)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_CameraRemoved)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        EventRegistrationToken cookie);

    HRESULT (STDMETHODCALLTYPE *CreateNextFrame)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame **value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicSpace methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_get_PrimaryAdapterId(This,value) (This)->lpVtbl->get_PrimaryAdapterId(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_SetDirect3D11Device(This,value) (This)->lpVtbl->SetDirect3D11Device(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraAdded(This,handler,cookie) (This)->lpVtbl->add_CameraAdded(This,handler,cookie)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraAdded(This,cookie) (This)->lpVtbl->remove_CameraAdded(This,cookie)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraRemoved(This,handler,cookie) (This)->lpVtbl->add_CameraRemoved(This,handler,cookie)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraRemoved(This,cookie) (This)->lpVtbl->remove_CameraRemoved(This,cookie)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_CreateNextFrame(This,value) (This)->lpVtbl->CreateNextFrame(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicSpace methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_get_PrimaryAdapterId(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicAdapterId *value) {
    return This->lpVtbl->get_PrimaryAdapterId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_SetDirect3D11Device(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,__x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DDevice *value) {
    return This->lpVtbl->SetDirect3D11Device(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraAdded(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_CameraAdded(This,handler,cookie);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraAdded(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_CameraAdded(This,cookie);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraRemoved(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_CameraRemoved(This,handler,cookie);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraRemoved(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_CameraRemoved(This,cookie);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_CreateNextFrame(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicFrame **value) {
    return This->lpVtbl->CreateNextFrame(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicSpace IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace
#define IHolographicSpaceVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceVtbl
#define IHolographicSpace __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace
#define IHolographicSpace_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_QueryInterface
#define IHolographicSpace_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_AddRef
#define IHolographicSpace_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_Release
#define IHolographicSpace_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetIids
#define IHolographicSpace_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetRuntimeClassName
#define IHolographicSpace_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_GetTrustLevel
#define IHolographicSpace_get_PrimaryAdapterId __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_get_PrimaryAdapterId
#define IHolographicSpace_SetDirect3D11Device __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_SetDirect3D11Device
#define IHolographicSpace_add_CameraAdded __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraAdded
#define IHolographicSpace_remove_CameraAdded __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraAdded
#define IHolographicSpace_add_CameraRemoved __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_add_CameraRemoved
#define IHolographicSpace_remove_CameraRemoved __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_remove_CameraRemoved
#define IHolographicSpace_CreateNextFrame __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_CreateNextFrame
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicSpaceStatics2 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2, 0x0e777088, 0x75fc, 0x48af, 0x87,0x58, 0x06,0x52,0xf6,0xf0,0x7c,0x59);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("0e777088-75fc-48af-8758-0652f6f07c59")
                IHolographicSpaceStatics2 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_IsSupported(
                        boolean *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_IsAvailable(
                        boolean *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_IsAvailableChanged(
                        ABI::Windows::Foundation::IEventHandler<IInspectable* > *handler,
                        EventRegistrationToken *token) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_IsAvailableChanged(
                        EventRegistrationToken token) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2, 0x0e777088, 0x75fc, 0x48af, 0x87,0x58, 0x06,0x52,0xf6,0xf0,0x7c,0x59)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        TrustLevel *trustLevel);

    /*** IHolographicSpaceStatics2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_IsSupported)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsAvailable)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *add_IsAvailableChanged)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        __FIEventHandler_1_IInspectable *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_IsAvailableChanged)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 *This,
        EventRegistrationToken token);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2Vtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2 {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicSpaceStatics2 methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsSupported(This,value) (This)->lpVtbl->get_IsSupported(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsAvailable(This,value) (This)->lpVtbl->get_IsAvailable(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_add_IsAvailableChanged(This,handler,token) (This)->lpVtbl->add_IsAvailableChanged(This,handler,token)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_remove_IsAvailableChanged(This,token) (This)->lpVtbl->remove_IsAvailableChanged(This,token)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicSpaceStatics2 methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsSupported(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,boolean *value) {
    return This->lpVtbl->get_IsSupported(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsAvailable(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,boolean *value) {
    return This->lpVtbl->get_IsAvailable(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_add_IsAvailableChanged(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,__FIEventHandler_1_IInspectable *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_IsAvailableChanged(This,handler,token);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_remove_IsAvailableChanged(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_IsAvailableChanged(This,token);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicSpaceStatics2 IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2
#define IHolographicSpaceStatics2Vtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2Vtbl
#define IHolographicSpaceStatics2 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2
#define IHolographicSpaceStatics2_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_QueryInterface
#define IHolographicSpaceStatics2_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_AddRef
#define IHolographicSpaceStatics2_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_Release
#define IHolographicSpaceStatics2_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetIids
#define IHolographicSpaceStatics2_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetRuntimeClassName
#define IHolographicSpaceStatics2_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_GetTrustLevel
#define IHolographicSpaceStatics2_get_IsSupported __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsSupported
#define IHolographicSpaceStatics2_get_IsAvailable __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_get_IsAvailable
#define IHolographicSpaceStatics2_add_IsAvailableChanged __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_add_IsAvailableChanged
#define IHolographicSpaceStatics2_remove_IsAvailableChanged __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_remove_IsAvailableChanged
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics2_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000 */

/*****************************************************************************
 * IHolographicSpaceStatics3 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3, 0x3b00de3d, 0xb1a3, 0x4dfe, 0x8e,0x79, 0xfe,0xc5,0x90,0x9e,0x6d,0xf8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("3b00de3d-b1a3-4dfe-8e79-fec5909e6df8")
                IHolographicSpaceStatics3 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_IsConfigured(
                        boolean *value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3, 0x3b00de3d, 0xb1a3, 0x4dfe, 0x8e,0x79, 0xfe,0xc5,0x90,0x9e,0x6d,0xf8)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This,
        TrustLevel *trustLevel);

    /*** IHolographicSpaceStatics3 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_IsConfigured)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 *This,
        boolean *value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3Vtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3 {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicSpaceStatics3 methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_get_IsConfigured(This,value) (This)->lpVtbl->get_IsConfigured(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicSpaceStatics3 methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_get_IsConfigured(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3* This,boolean *value) {
    return This->lpVtbl->get_IsConfigured(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicSpaceStatics3 IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3
#define IHolographicSpaceStatics3Vtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3Vtbl
#define IHolographicSpaceStatics3 __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3
#define IHolographicSpaceStatics3_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_QueryInterface
#define IHolographicSpaceStatics3_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_AddRef
#define IHolographicSpaceStatics3_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_Release
#define IHolographicSpaceStatics3_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetIids
#define IHolographicSpaceStatics3_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetRuntimeClassName
#define IHolographicSpaceStatics3_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_GetTrustLevel
#define IHolographicSpaceStatics3_get_IsConfigured __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_get_IsConfigured
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceStatics3_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IHolographicSpaceCameraAddedEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs, 0x58f1da35, 0xbbb3, 0x3c8f, 0x99,0x3d, 0x6c,0x80,0xe7,0xfe,0xb9,0x9f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("58f1da35-bbb3-3c8f-993d-6c80e7feb99f")
                IHolographicSpaceCameraAddedEventArgs : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Camera(
                        ABI::Windows::Graphics::Holographic::IHolographicCamera **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs, 0x58f1da35, 0xbbb3, 0x3c8f, 0x99,0x3d, 0x6c,0x80,0xe7,0xfe,0xb9,0x9f)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        TrustLevel *trustLevel);

    /*** IHolographicSpaceCameraAddedEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Camera)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value);

    HRESULT (STDMETHODCALLTYPE *GetDeferral)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *This,
        __x_ABI_CWindows_CFoundation_CIDeferral **value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgsVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicSpaceCameraAddedEventArgs methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_get_Camera(This,value) (This)->lpVtbl->get_Camera(This,value)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetDeferral(This,value) (This)->lpVtbl->GetDeferral(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicSpaceCameraAddedEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_get_Camera(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value) {
    return This->lpVtbl->get_Camera(This,value);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetDeferral(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs* This,__x_ABI_CWindows_CFoundation_CIDeferral **value) {
    return This->lpVtbl->GetDeferral(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicSpaceCameraAddedEventArgs IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs
#define IHolographicSpaceCameraAddedEventArgsVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgsVtbl
#define IHolographicSpaceCameraAddedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs
#define IHolographicSpaceCameraAddedEventArgs_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_QueryInterface
#define IHolographicSpaceCameraAddedEventArgs_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_AddRef
#define IHolographicSpaceCameraAddedEventArgs_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_Release
#define IHolographicSpaceCameraAddedEventArgs_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetIids
#define IHolographicSpaceCameraAddedEventArgs_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetRuntimeClassName
#define IHolographicSpaceCameraAddedEventArgs_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetTrustLevel
#define IHolographicSpaceCameraAddedEventArgs_get_Camera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_get_Camera
#define IHolographicSpaceCameraAddedEventArgs_GetDeferral __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_GetDeferral
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IHolographicSpaceCameraRemovedEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs, 0x805444a8, 0xf2ae, 0x322e, 0x8d,0xa9, 0x83,0x6a,0x0a,0x95,0xa4,0xc1);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace Holographic {
                MIDL_INTERFACE("805444a8-f2ae-322e-8da9-836a0a95a4c1")
                IHolographicSpaceCameraRemovedEventArgs : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Camera(
                        ABI::Windows::Graphics::Holographic::IHolographicCamera **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs, 0x805444a8, 0xf2ae, 0x322e, 0x8d,0xa9, 0x83,0x6a,0x0a,0x95,0xa4,0xc1)
#endif
#else
typedef struct __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This,
        TrustLevel *trustLevel);

    /*** IHolographicSpaceCameraRemovedEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Camera)(
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value);

    END_INTERFACE
} __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgsVtbl;

interface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs {
    CONST_VTBL __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IHolographicSpaceCameraRemovedEventArgs methods ***/
#define __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_get_Camera(This,value) (This)->lpVtbl->get_Camera(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_QueryInterface(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_AddRef(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_Release(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetIids(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetTrustLevel(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IHolographicSpaceCameraRemovedEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_get_Camera(__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value) {
    return This->lpVtbl->get_Camera(This,value);
}
#endif
#ifdef WIDL_using_Windows_Graphics_Holographic
#define IID_IHolographicSpaceCameraRemovedEventArgs IID___x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs
#define IHolographicSpaceCameraRemovedEventArgsVtbl __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgsVtbl
#define IHolographicSpaceCameraRemovedEventArgs __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs
#define IHolographicSpaceCameraRemovedEventArgs_QueryInterface __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_QueryInterface
#define IHolographicSpaceCameraRemovedEventArgs_AddRef __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_AddRef
#define IHolographicSpaceCameraRemovedEventArgs_Release __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_Release
#define IHolographicSpaceCameraRemovedEventArgs_GetIids __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetIids
#define IHolographicSpaceCameraRemovedEventArgs_GetRuntimeClassName __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetRuntimeClassName
#define IHolographicSpaceCameraRemovedEventArgs_GetTrustLevel __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_GetTrustLevel
#define IHolographicSpaceCameraRemovedEventArgs_get_Camera __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_get_Camera
#endif /* WIDL_using_Windows_Graphics_Holographic */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicCamera
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCamera_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCamera_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCamera[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCamera[] = L"Windows.Graphics.Holographic.HolographicCamera";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCamera[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCamera_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicCameraPose
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraPose_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraPose_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraPose[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a','P','o','s','e',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraPose[] = L"Windows.Graphics.Holographic.HolographicCameraPose";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraPose[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a','P','o','s','e',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraPose_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicCameraRenderingParameters
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraRenderingParameters_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraRenderingParameters_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraRenderingParameters[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a','R','e','n','d','e','r','i','n','g','P','a','r','a','m','e','t','e','r','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraRenderingParameters[] = L"Windows.Graphics.Holographic.HolographicCameraRenderingParameters";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicCameraRenderingParameters[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','C','a','m','e','r','a','R','e','n','d','e','r','i','n','g','P','a','r','a','m','e','t','e','r','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicCameraRenderingParameters_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicFrame
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFrame_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFrame_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFrame[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','F','r','a','m','e',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFrame[] = L"Windows.Graphics.Holographic.HolographicFrame";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFrame[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','F','r','a','m','e',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFrame_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicFramePrediction
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFramePrediction_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFramePrediction_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFramePrediction[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','F','r','a','m','e','P','r','e','d','i','c','t','i','o','n',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFramePrediction[] = L"Windows.Graphics.Holographic.HolographicFramePrediction";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicFramePrediction[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','F','r','a','m','e','P','r','e','d','i','c','t','i','o','n',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicFramePrediction_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicSpace
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpace_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpace_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpace[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpace[] = L"Windows.Graphics.Holographic.HolographicSpace";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpace[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpace_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicSpaceCameraAddedEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e','C','a','m','e','r','a','A','d','d','e','d','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs[] = L"Windows.Graphics.Holographic.HolographicSpaceCameraAddedEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e','C','a','m','e','r','a','A','d','d','e','d','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraAddedEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*
 * Class Windows.Graphics.Holographic.HolographicSpaceCameraRemovedEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#ifndef RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e','C','a','m','e','r','a','R','e','m','o','v','e','d','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs[] = L"Windows.Graphics.Holographic.HolographicSpaceCameraRemovedEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs[] = {'W','i','n','d','o','w','s','.','G','r','a','p','h','i','c','s','.','H','o','l','o','g','r','a','p','h','i','c','.','H','o','l','o','g','r','a','p','h','i','c','S','p','a','c','e','C','a','m','e','r','a','R','e','m','o','v','e','d','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_Graphics_Holographic_HolographicSpaceCameraRemovedEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000 */

/*****************************************************************************
 * IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > interface
 */
#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera, 0x01d6c0ae, 0xada5, 0x50b0, 0x85,0x62, 0x41,0xfb,0x12,0x05,0xbb,0x4a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("01d6c0ae-ada5-50b0-8562-41fb1205bb4a")
                IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicCamera*, ABI::Windows::Graphics::Holographic::IHolographicCamera* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera, 0x01d6c0ae, 0xada5, 0x50b0, 0x85,0x62, 0x41,0xfb,0x12,0x05,0xbb,0x4a)
#endif
#else
typedef struct __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        TrustLevel *trustLevel);

    /*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        UINT32 index,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera *This,
        UINT32 start_index,
        UINT32 items_size,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraVtbl;

interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera {
    CONST_VTBL __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_QueryInterface(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_AddRef(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_Release(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetIids(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetRuntimeClassName(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetTrustLevel(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCamera* > methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetAt(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,UINT32 index,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_get_Size(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_IndexOf(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetMany(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCamera **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_HolographicCamera IID___FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera
#define IVectorView_HolographicCameraVtbl __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraVtbl
#define IVectorView_HolographicCamera __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera
#define IVectorView_HolographicCamera_QueryInterface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_QueryInterface
#define IVectorView_HolographicCamera_AddRef __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_AddRef
#define IVectorView_HolographicCamera_Release __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_Release
#define IVectorView_HolographicCamera_GetIids __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetIids
#define IVectorView_HolographicCamera_GetRuntimeClassName __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetRuntimeClassName
#define IVectorView_HolographicCamera_GetTrustLevel __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetTrustLevel
#define IVectorView_HolographicCamera_GetAt __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetAt
#define IVectorView_HolographicCamera_get_Size __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_get_Size
#define IVectorView_HolographicCamera_IndexOf __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_IndexOf
#define IVectorView_HolographicCamera_GetMany __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCamera_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > interface
 */
#ifndef ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose, 0x17c5dfb1, 0x6e87, 0x5a17, 0xa7,0x91, 0xac,0x07,0xf8,0xee,0x92,0x92);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("17c5dfb1-6e87-5a17-a791-ac07f8ee9292")
                IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicCameraPose*, ABI::Windows::Graphics::Holographic::IHolographicCameraPose* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose, 0x17c5dfb1, 0x6e87, 0x5a17, 0xa7,0x91, 0xac,0x07,0xf8,0xee,0x92,0x92)
#endif
#else
typedef struct __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPoseVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        TrustLevel *trustLevel);

    /*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        UINT32 index,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose *This,
        UINT32 start_index,
        UINT32 items_size,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose **items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPoseVtbl;

interface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose {
    CONST_VTBL __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPoseVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > methods ***/
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_QueryInterface(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_AddRef(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_Release(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetIids(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetRuntimeClassName(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetTrustLevel(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<ABI::Windows::Graphics::Holographic::HolographicCameraPose* > methods ***/
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetAt(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,UINT32 index,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_get_Size(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_IndexOf(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetMany(__FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicCameraPose **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_HolographicCameraPose IID___FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose
#define IVectorView_HolographicCameraPoseVtbl __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPoseVtbl
#define IVectorView_HolographicCameraPose __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose
#define IVectorView_HolographicCameraPose_QueryInterface __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_QueryInterface
#define IVectorView_HolographicCameraPose_AddRef __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_AddRef
#define IVectorView_HolographicCameraPose_Release __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_Release
#define IVectorView_HolographicCameraPose_GetIids __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetIids
#define IVectorView_HolographicCameraPose_GetRuntimeClassName __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetRuntimeClassName
#define IVectorView_HolographicCameraPose_GetTrustLevel __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetTrustLevel
#define IVectorView_HolographicCameraPose_GetAt __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetAt
#define IVectorView_HolographicCameraPose_get_Size __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_get_Size
#define IVectorView_HolographicCameraPose_IndexOf __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_IndexOf
#define IVectorView_HolographicCameraPose_GetMany __FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_Windows__CGraphics__CHolographic__CHolographicCameraPose_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > interface
 */
#ifndef ____FIReference_1_HolographicStereoTransform_INTERFACE_DEFINED__
#define ____FIReference_1_HolographicStereoTransform_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIReference_1_HolographicStereoTransform, 0x6e67ce78, 0xcc67, 0x52c0, 0xb6,0x35, 0x99,0x1d,0xb0,0xbf,0xf5,0xca);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("6e67ce78-cc67-52c0-b635-991db0bff5ca")
            IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > : IReference_impl<ABI::Windows::Graphics::Holographic::HolographicStereoTransform >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIReference_1_HolographicStereoTransform, 0x6e67ce78, 0xcc67, 0x52c0, 0xb6,0x35, 0x99,0x1d,0xb0,0xbf,0xf5,0xca)
#endif
#else
typedef struct __FIReference_1_HolographicStereoTransformVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIReference_1_HolographicStereoTransform *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIReference_1_HolographicStereoTransform *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIReference_1_HolographicStereoTransform *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIReference_1_HolographicStereoTransform *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIReference_1_HolographicStereoTransform *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIReference_1_HolographicStereoTransform *This,
        TrustLevel *trustLevel);

    /*** IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __FIReference_1_HolographicStereoTransform *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform *value);

    END_INTERFACE
} __FIReference_1_HolographicStereoTransformVtbl;

interface __FIReference_1_HolographicStereoTransform {
    CONST_VTBL __FIReference_1_HolographicStereoTransformVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIReference_1_HolographicStereoTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIReference_1_HolographicStereoTransform_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIReference_1_HolographicStereoTransform_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIReference_1_HolographicStereoTransform_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIReference_1_HolographicStereoTransform_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIReference_1_HolographicStereoTransform_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > methods ***/
#define __FIReference_1_HolographicStereoTransform_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIReference_1_HolographicStereoTransform_QueryInterface(__FIReference_1_HolographicStereoTransform* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIReference_1_HolographicStereoTransform_AddRef(__FIReference_1_HolographicStereoTransform* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIReference_1_HolographicStereoTransform_Release(__FIReference_1_HolographicStereoTransform* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIReference_1_HolographicStereoTransform_GetIids(__FIReference_1_HolographicStereoTransform* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIReference_1_HolographicStereoTransform_GetRuntimeClassName(__FIReference_1_HolographicStereoTransform* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIReference_1_HolographicStereoTransform_GetTrustLevel(__FIReference_1_HolographicStereoTransform* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IReference<ABI::Windows::Graphics::Holographic::HolographicStereoTransform > methods ***/
static inline HRESULT __FIReference_1_HolographicStereoTransform_get_Value(__FIReference_1_HolographicStereoTransform* This,__x_ABI_CWindows_CGraphics_CHolographic_CHolographicStereoTransform *value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IReference_HolographicStereoTransform IID___FIReference_1_HolographicStereoTransform
#define IReference_HolographicStereoTransformVtbl __FIReference_1_HolographicStereoTransformVtbl
#define IReference_HolographicStereoTransform __FIReference_1_HolographicStereoTransform
#define IReference_HolographicStereoTransform_QueryInterface __FIReference_1_HolographicStereoTransform_QueryInterface
#define IReference_HolographicStereoTransform_AddRef __FIReference_1_HolographicStereoTransform_AddRef
#define IReference_HolographicStereoTransform_Release __FIReference_1_HolographicStereoTransform_Release
#define IReference_HolographicStereoTransform_GetIids __FIReference_1_HolographicStereoTransform_GetIids
#define IReference_HolographicStereoTransform_GetRuntimeClassName __FIReference_1_HolographicStereoTransform_GetRuntimeClassName
#define IReference_HolographicStereoTransform_GetTrustLevel __FIReference_1_HolographicStereoTransform_GetTrustLevel
#define IReference_HolographicStereoTransform_get_Value __FIReference_1_HolographicStereoTransform_get_Value
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIReference_1_HolographicStereoTransform_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable, 0x67aae2f2, 0x42d8, 0x5503, 0x91,0x31, 0xde,0xeb,0x45,0xa6,0xca,0x03);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("67aae2f2-42d8-5503-9131-deeb45a6ca03")
            ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicSpace*, ABI::Windows::Graphics::Holographic::IHolographicSpace* >, IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable, 0x67aae2f2, 0x42d8, 0x5503, 0x91,0x31, 0xde,0xeb,0x45,0xa6,0xca,0x03)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable *This);

    /*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,
        IInspectable *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable {
    CONST_VTBL __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* > methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_QueryInterface(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_AddRef(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Release(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,IInspectable* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Invoke(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_HolographicSpace_IInspectable IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable
#define ITypedEventHandler_HolographicSpace_IInspectableVtbl __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectableVtbl
#define ITypedEventHandler_HolographicSpace_IInspectable __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable
#define ITypedEventHandler_HolographicSpace_IInspectable_QueryInterface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_QueryInterface
#define ITypedEventHandler_HolographicSpace_IInspectable_AddRef __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_AddRef
#define ITypedEventHandler_HolographicSpace_IInspectable_Release __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Release
#define ITypedEventHandler_HolographicSpace_IInspectable_Invoke __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs, 0x71d80b7c, 0x1d27, 0x5102, 0x83,0xd1, 0x4f,0x0e,0xfc,0x7c,0x9d,0x6f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("71d80b7c-1d27-5102-83d1-4f0efc7c9d6f")
            ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicSpace*, ABI::Windows::Graphics::Holographic::IHolographicSpace* >, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs*, ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraAddedEventArgs* > >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs, 0x71d80b7c, 0x1d27, 0x5102, 0x83,0xd1, 0x4f,0x0e,0xfc,0x7c,0x9d,0x6f)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *This);

    /*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs {
    CONST_VTBL __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_QueryInterface(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_AddRef(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Release(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraAddedEventArgs* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Invoke(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraAddedEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgsVtbl __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgsVtbl
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs_QueryInterface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_QueryInterface
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs_AddRef __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_AddRef
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs_Release __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Release
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraAddedEventArgs_Invoke __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraAddedEventArgs_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs, 0xdb68cfc3, 0x0874, 0x502a, 0xa3,0xb9, 0x2b,0x1f,0xe8,0x6c,0x67,0xbe);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("db68cfc3-0874-502a-a3b9-2b1fe86c67be")
            ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicSpace*, ABI::Windows::Graphics::Holographic::IHolographicSpace* >, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs*, ABI::Windows::Graphics::Holographic::IHolographicSpaceCameraRemovedEventArgs* > >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs, 0xdb68cfc3, 0x0874, 0x502a, 0xa3,0xb9, 0x2b,0x1f,0xe8,0x6c,0x67,0xbe)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *This);

    /*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs *This,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,
        __x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs {
    CONST_VTBL __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > methods ***/
#define __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_QueryInterface(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_AddRef(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Release(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::Graphics::Holographic::HolographicSpace*,ABI::Windows::Graphics::Holographic::HolographicSpaceCameraRemovedEventArgs* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Invoke(__FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs* This,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpace *sender,__x_ABI_CWindows_CGraphics_CHolographic_CIHolographicSpaceCameraRemovedEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs IID___FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgsVtbl __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgsVtbl
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs_QueryInterface __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_QueryInterface
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs_AddRef __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_AddRef
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs_Release __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Release
#define ITypedEventHandler_HolographicSpace_HolographicSpaceCameraRemovedEventArgs_Invoke __FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CGraphics__CHolographic__CHolographicSpace_Windows__CGraphics__CHolographic__CHolographicSpaceCameraRemovedEventArgs_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */


/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __windows_graphics_holographic_h__ */
