/*** Autogenerated by WIDL 10.8 from include/windows.ui.input.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_ui_input_h__
#define __windows_ui_input_h__

/* Forward declarations */

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPoint __x_ABI_CWindows_CUI_CInput_CIPointerPoint;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint ABI::Windows::UI::Input::IPointerPoint
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPoint;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties ABI::Windows::UI::Input::IPointerPointProperties
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointProperties;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 ABI::Windows::UI::Input::IPointerPointProperties2
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointProperties2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics ABI::Windows::UI::Input::IPointerPointStatics
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointStatics;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform ABI::Windows::UI::Input::IPointerPointTransform
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointTransform;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CPointerPoint_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CPointerPoint_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                class PointerPoint;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CPointerPoint __x_ABI_CWindows_CUI_CInput_CPointerPoint;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CUI_CInput_CPointerPoint_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CUI_CInput_CPointerPointProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CPointerPointProperties_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                class PointerPointProperties;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CPointerPointProperties __x_ABI_CWindows_CUI_CInput_CPointerPointProperties;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CUI_CInput_CPointerPointProperties_FWD_DEFINED__ */

#ifndef ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CUI__CInput__CPointerPoint __FIVectorView_1_Windows__CUI__CInput__CPointerPoint;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::UI::Input::PointerPoint* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
#define ____FIVector_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
typedef interface __FIVector_1_Windows__CUI__CInput__CPointerPoint __FIVector_1_Windows__CUI__CInput__CPointerPoint;
#ifdef __cplusplus
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint ABI::Windows::Foundation::Collections::IVector<ABI::Windows::UI::Input::PointerPoint* >
#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.devices.input.h>
#include <windows.system.h>
#include <windows.ui.core.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CUI_CInput_CPointerUpdateKind __x_ABI_CWindows_CUI_CInput_CPointerUpdateKind;
#endif /* __cplusplus */

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPoint __x_ABI_CWindows_CUI_CInput_CIPointerPoint;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint ABI::Windows::UI::Input::IPointerPoint
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPoint;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties ABI::Windows::UI::Input::IPointerPointProperties
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointProperties;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 ABI::Windows::UI::Input::IPointerPointProperties2
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointProperties2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics ABI::Windows::UI::Input::IPointerPointStatics
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointStatics;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform;
#ifdef __cplusplus
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform ABI::Windows::UI::Input::IPointerPointTransform
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                interface IPointerPointTransform;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CUI__CInput__CPointerPoint __FIVectorView_1_Windows__CUI__CInput__CPointerPoint;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::UI::Input::PointerPoint* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
#define ____FIVector_1_Windows__CUI__CInput__CPointerPoint_FWD_DEFINED__
typedef interface __FIVector_1_Windows__CUI__CInput__CPointerPoint __FIVector_1_Windows__CUI__CInput__CPointerPoint;
#ifdef __cplusplus
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint ABI::Windows::Foundation::Collections::IVector<ABI::Windows::UI::Input::PointerPoint* >
#endif /* __cplusplus */
#endif

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                enum PointerUpdateKind {
                    PointerUpdateKind_Other = 0,
                    PointerUpdateKind_LeftButtonPressed = 1,
                    PointerUpdateKind_LeftButtonReleased = 2,
                    PointerUpdateKind_RightButtonPressed = 3,
                    PointerUpdateKind_RightButtonReleased = 4,
                    PointerUpdateKind_MiddleButtonPressed = 5,
                    PointerUpdateKind_MiddleButtonReleased = 6,
                    PointerUpdateKind_XButton1Pressed = 7,
                    PointerUpdateKind_XButton1Released = 8,
                    PointerUpdateKind_XButton2Pressed = 9,
                    PointerUpdateKind_XButton2Released = 10
                };
            }
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CUI_CInput_CPointerUpdateKind {
    PointerUpdateKind_Other = 0,
    PointerUpdateKind_LeftButtonPressed = 1,
    PointerUpdateKind_LeftButtonReleased = 2,
    PointerUpdateKind_RightButtonPressed = 3,
    PointerUpdateKind_RightButtonReleased = 4,
    PointerUpdateKind_MiddleButtonPressed = 5,
    PointerUpdateKind_MiddleButtonReleased = 6,
    PointerUpdateKind_XButton1Pressed = 7,
    PointerUpdateKind_XButton1Released = 8,
    PointerUpdateKind_XButton2Pressed = 9,
    PointerUpdateKind_XButton2Released = 10
};
#ifdef WIDL_using_Windows_UI_Input
#define PointerUpdateKind __x_ABI_CWindows_CUI_CInput_CPointerUpdateKind
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
/*****************************************************************************
 * IPointerPoint interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CUI_CInput_CIPointerPoint, 0xe995317d, 0x7296, 0x42d9, 0x82,0x33, 0xc5,0xbe,0x73,0xb7,0x4a,0x4a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                MIDL_INTERFACE("e995317d-7296-42d9-8233-c5be73b74a4a")
                IPointerPoint : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_PointerDevice(
                        ABI::Windows::Devices::Input::IPointerDevice **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Position(
                        ABI::Windows::Foundation::Point *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_RawPosition(
                        ABI::Windows::Foundation::Point *value) = 0;

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

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

                    virtual HRESULT STDMETHODCALLTYPE get_Timestamp(
                        UINT64 *value) = 0;

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

                    virtual HRESULT STDMETHODCALLTYPE get_Properties(
                        ABI::Windows::UI::Input::IPointerPointProperties **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CUI_CInput_CIPointerPoint, 0xe995317d, 0x7296, 0x42d9, 0x82,0x33, 0xc5,0xbe,0x73,0xb7,0x4a,0x4a)
#endif
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CIPointerPointVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IPointerPoint methods ***/
    HRESULT (STDMETHODCALLTYPE *get_PointerDevice)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        __x_ABI_CWindows_CDevices_CInput_CIPointerDevice **value);

    HRESULT (STDMETHODCALLTYPE *get_Position)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        __x_ABI_CWindows_CFoundation_CPoint *value);

    HRESULT (STDMETHODCALLTYPE *get_RawPosition)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        __x_ABI_CWindows_CFoundation_CPoint *value);

    HRESULT (STDMETHODCALLTYPE *get_pointer_id)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *get_FrameId)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *get_Timestamp)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        UINT64 *value);

    HRESULT (STDMETHODCALLTYPE *get_IsInContact)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_Properties)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *This,
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties **value);

    END_INTERFACE
} __x_ABI_CWindows_CUI_CInput_CIPointerPointVtbl;

interface __x_ABI_CWindows_CUI_CInput_CIPointerPoint {
    CONST_VTBL __x_ABI_CWindows_CUI_CInput_CIPointerPointVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IPointerPoint methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_PointerDevice(This,value) (This)->lpVtbl->get_PointerDevice(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Position(This,value) (This)->lpVtbl->get_Position(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_RawPosition(This,value) (This)->lpVtbl->get_RawPosition(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_pointer_id(This,value) (This)->lpVtbl->get_pointer_id(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_FrameId(This,value) (This)->lpVtbl->get_FrameId(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Timestamp(This,value) (This)->lpVtbl->get_Timestamp(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_IsInContact(This,value) (This)->lpVtbl->get_IsInContact(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Properties(This,value) (This)->lpVtbl->get_Properties(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_QueryInterface(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPoint_AddRef(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPoint_Release(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetIids(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetRuntimeClassName(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetTrustLevel(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IPointerPoint methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_PointerDevice(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,__x_ABI_CWindows_CDevices_CInput_CIPointerDevice **value) {
    return This->lpVtbl->get_PointerDevice(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Position(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,__x_ABI_CWindows_CFoundation_CPoint *value) {
    return This->lpVtbl->get_Position(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_RawPosition(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,__x_ABI_CWindows_CFoundation_CPoint *value) {
    return This->lpVtbl->get_RawPosition(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_pointer_id(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,UINT32 *value) {
    return This->lpVtbl->get_pointer_id(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_FrameId(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,UINT32 *value) {
    return This->lpVtbl->get_FrameId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Timestamp(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,UINT64 *value) {
    return This->lpVtbl->get_Timestamp(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_IsInContact(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,boolean *value) {
    return This->lpVtbl->get_IsInContact(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Properties(__x_ABI_CWindows_CUI_CInput_CIPointerPoint* This,__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties **value) {
    return This->lpVtbl->get_Properties(This,value);
}
#endif
#ifdef WIDL_using_Windows_UI_Input
#define IID_IPointerPoint IID___x_ABI_CWindows_CUI_CInput_CIPointerPoint
#define IPointerPointVtbl __x_ABI_CWindows_CUI_CInput_CIPointerPointVtbl
#define IPointerPoint __x_ABI_CWindows_CUI_CInput_CIPointerPoint
#define IPointerPoint_QueryInterface __x_ABI_CWindows_CUI_CInput_CIPointerPoint_QueryInterface
#define IPointerPoint_AddRef __x_ABI_CWindows_CUI_CInput_CIPointerPoint_AddRef
#define IPointerPoint_Release __x_ABI_CWindows_CUI_CInput_CIPointerPoint_Release
#define IPointerPoint_GetIids __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetIids
#define IPointerPoint_GetRuntimeClassName __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetRuntimeClassName
#define IPointerPoint_GetTrustLevel __x_ABI_CWindows_CUI_CInput_CIPointerPoint_GetTrustLevel
#define IPointerPoint_get_PointerDevice __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_PointerDevice
#define IPointerPoint_get_Position __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Position
#define IPointerPoint_get_RawPosition __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_RawPosition
#define IPointerPoint_get_pointer_id __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_pointer_id
#define IPointerPoint_get_FrameId __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_FrameId
#define IPointerPoint_get_Timestamp __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Timestamp
#define IPointerPoint_get_IsInContact __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_IsInContact
#define IPointerPoint_get_Properties __x_ABI_CWindows_CUI_CInput_CIPointerPoint_get_Properties
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CUI_CInput_CIPointerPoint_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IPointerPointProperties interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CUI_CInput_CIPointerPointProperties, 0xc79d8a4b, 0xc163, 0x4ee7, 0x80,0x3f, 0x67,0xce,0x79,0xf9,0x97,0x2d);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                MIDL_INTERFACE("c79d8a4b-c163-4ee7-803f-67ce79f9972d")
                IPointerPointProperties : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Pressure(
                        FLOAT *value) = 0;

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

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

                    virtual HRESULT STDMETHODCALLTYPE get_Orientation(
                        FLOAT *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_XTilt(
                        FLOAT *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_YTilt(
                        FLOAT *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Twist(
                        FLOAT *value) = 0;

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

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

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

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

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

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

                    virtual HRESULT STDMETHODCALLTYPE get_MouseWheelDelta(
                        INT32 *value) = 0;

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

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

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

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

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

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

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

                    virtual HRESULT STDMETHODCALLTYPE get_PointerUpdateKind(
                        ABI::Windows::UI::Input::PointerUpdateKind *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE HasUsage(
                        UINT32 usage_page,
                        UINT32 usage_id,
                        boolean *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetUsageValue(
                        UINT32 usage_page,
                        UINT32 usage_id,
                        INT32 *value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties, 0xc79d8a4b, 0xc163, 0x4ee7, 0x80,0x3f, 0x67,0xce,0x79,0xf9,0x97,0x2d)
#endif
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CIPointerPointPropertiesVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IPointerPointProperties methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Pressure)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        FLOAT *value);

    HRESULT (STDMETHODCALLTYPE *get_IsInverted)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsEraser)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_Orientation)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        FLOAT *value);

    HRESULT (STDMETHODCALLTYPE *get_XTilt)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        FLOAT *value);

    HRESULT (STDMETHODCALLTYPE *get_YTilt)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        FLOAT *value);

    HRESULT (STDMETHODCALLTYPE *get_Twist)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        FLOAT *value);

    HRESULT (STDMETHODCALLTYPE *get_ContactRect)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        __x_ABI_CWindows_CFoundation_CRect *value);

    HRESULT (STDMETHODCALLTYPE *get_ContactRectRaw)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        __x_ABI_CWindows_CFoundation_CRect *value);

    HRESULT (STDMETHODCALLTYPE *get_TouchConfidence)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsLeftButtonPressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsRightButtonPressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsMiddleButtonPressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_MouseWheelDelta)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        INT32 *value);

    HRESULT (STDMETHODCALLTYPE *get_IsHorizontalMouseWheel)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsPrimary)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsInRange)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsCanceled)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsBarrelButtonPressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsXButton1Pressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsXButton2Pressed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_PointerUpdateKind)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        __x_ABI_CWindows_CUI_CInput_CPointerUpdateKind *value);

    HRESULT (STDMETHODCALLTYPE *HasUsage)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        UINT32 usage_page,
        UINT32 usage_id,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetUsageValue)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties *This,
        UINT32 usage_page,
        UINT32 usage_id,
        INT32 *value);

    END_INTERFACE
} __x_ABI_CWindows_CUI_CInput_CIPointerPointPropertiesVtbl;

interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties {
    CONST_VTBL __x_ABI_CWindows_CUI_CInput_CIPointerPointPropertiesVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IPointerPointProperties methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Pressure(This,value) (This)->lpVtbl->get_Pressure(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInverted(This,value) (This)->lpVtbl->get_IsInverted(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsEraser(This,value) (This)->lpVtbl->get_IsEraser(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Orientation(This,value) (This)->lpVtbl->get_Orientation(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_XTilt(This,value) (This)->lpVtbl->get_XTilt(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_YTilt(This,value) (This)->lpVtbl->get_YTilt(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Twist(This,value) (This)->lpVtbl->get_Twist(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRect(This,value) (This)->lpVtbl->get_ContactRect(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRectRaw(This,value) (This)->lpVtbl->get_ContactRectRaw(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_TouchConfidence(This,value) (This)->lpVtbl->get_TouchConfidence(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsLeftButtonPressed(This,value) (This)->lpVtbl->get_IsLeftButtonPressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsRightButtonPressed(This,value) (This)->lpVtbl->get_IsRightButtonPressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsMiddleButtonPressed(This,value) (This)->lpVtbl->get_IsMiddleButtonPressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_MouseWheelDelta(This,value) (This)->lpVtbl->get_MouseWheelDelta(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsHorizontalMouseWheel(This,value) (This)->lpVtbl->get_IsHorizontalMouseWheel(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsPrimary(This,value) (This)->lpVtbl->get_IsPrimary(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInRange(This,value) (This)->lpVtbl->get_IsInRange(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsCanceled(This,value) (This)->lpVtbl->get_IsCanceled(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsBarrelButtonPressed(This,value) (This)->lpVtbl->get_IsBarrelButtonPressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton1Pressed(This,value) (This)->lpVtbl->get_IsXButton1Pressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton2Pressed(This,value) (This)->lpVtbl->get_IsXButton2Pressed(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_PointerUpdateKind(This,value) (This)->lpVtbl->get_PointerUpdateKind(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_HasUsage(This,usage_page,usage_id,value) (This)->lpVtbl->HasUsage(This,usage_page,usage_id,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetUsageValue(This,usage_page,usage_id,value) (This)->lpVtbl->GetUsageValue(This,usage_page,usage_id,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_QueryInterface(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_AddRef(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_Release(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetIids(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetRuntimeClassName(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetTrustLevel(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IPointerPointProperties methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Pressure(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,FLOAT *value) {
    return This->lpVtbl->get_Pressure(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInverted(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsInverted(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsEraser(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsEraser(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Orientation(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,FLOAT *value) {
    return This->lpVtbl->get_Orientation(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_XTilt(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,FLOAT *value) {
    return This->lpVtbl->get_XTilt(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_YTilt(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,FLOAT *value) {
    return This->lpVtbl->get_YTilt(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Twist(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,FLOAT *value) {
    return This->lpVtbl->get_Twist(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRect(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,__x_ABI_CWindows_CFoundation_CRect *value) {
    return This->lpVtbl->get_ContactRect(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRectRaw(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,__x_ABI_CWindows_CFoundation_CRect *value) {
    return This->lpVtbl->get_ContactRectRaw(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_TouchConfidence(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_TouchConfidence(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsLeftButtonPressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsLeftButtonPressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsRightButtonPressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsRightButtonPressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsMiddleButtonPressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsMiddleButtonPressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_MouseWheelDelta(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,INT32 *value) {
    return This->lpVtbl->get_MouseWheelDelta(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsHorizontalMouseWheel(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsHorizontalMouseWheel(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsPrimary(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsPrimary(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInRange(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsInRange(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsCanceled(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsCanceled(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsBarrelButtonPressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsBarrelButtonPressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton1Pressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsXButton1Pressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton2Pressed(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,boolean *value) {
    return This->lpVtbl->get_IsXButton2Pressed(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_PointerUpdateKind(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,__x_ABI_CWindows_CUI_CInput_CPointerUpdateKind *value) {
    return This->lpVtbl->get_PointerUpdateKind(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_HasUsage(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,UINT32 usage_page,UINT32 usage_id,boolean *value) {
    return This->lpVtbl->HasUsage(This,usage_page,usage_id,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetUsageValue(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties* This,UINT32 usage_page,UINT32 usage_id,INT32 *value) {
    return This->lpVtbl->GetUsageValue(This,usage_page,usage_id,value);
}
#endif
#ifdef WIDL_using_Windows_UI_Input
#define IID_IPointerPointProperties IID___x_ABI_CWindows_CUI_CInput_CIPointerPointProperties
#define IPointerPointPropertiesVtbl __x_ABI_CWindows_CUI_CInput_CIPointerPointPropertiesVtbl
#define IPointerPointProperties __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties
#define IPointerPointProperties_QueryInterface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_QueryInterface
#define IPointerPointProperties_AddRef __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_AddRef
#define IPointerPointProperties_Release __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_Release
#define IPointerPointProperties_GetIids __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetIids
#define IPointerPointProperties_GetRuntimeClassName __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetRuntimeClassName
#define IPointerPointProperties_GetTrustLevel __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetTrustLevel
#define IPointerPointProperties_get_Pressure __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Pressure
#define IPointerPointProperties_get_IsInverted __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInverted
#define IPointerPointProperties_get_IsEraser __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsEraser
#define IPointerPointProperties_get_Orientation __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Orientation
#define IPointerPointProperties_get_XTilt __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_XTilt
#define IPointerPointProperties_get_YTilt __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_YTilt
#define IPointerPointProperties_get_Twist __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_Twist
#define IPointerPointProperties_get_ContactRect __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRect
#define IPointerPointProperties_get_ContactRectRaw __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_ContactRectRaw
#define IPointerPointProperties_get_TouchConfidence __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_TouchConfidence
#define IPointerPointProperties_get_IsLeftButtonPressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsLeftButtonPressed
#define IPointerPointProperties_get_IsRightButtonPressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsRightButtonPressed
#define IPointerPointProperties_get_IsMiddleButtonPressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsMiddleButtonPressed
#define IPointerPointProperties_get_MouseWheelDelta __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_MouseWheelDelta
#define IPointerPointProperties_get_IsHorizontalMouseWheel __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsHorizontalMouseWheel
#define IPointerPointProperties_get_IsPrimary __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsPrimary
#define IPointerPointProperties_get_IsInRange __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsInRange
#define IPointerPointProperties_get_IsCanceled __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsCanceled
#define IPointerPointProperties_get_IsBarrelButtonPressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsBarrelButtonPressed
#define IPointerPointProperties_get_IsXButton1Pressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton1Pressed
#define IPointerPointProperties_get_IsXButton2Pressed __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_IsXButton2Pressed
#define IPointerPointProperties_get_PointerUpdateKind __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_get_PointerUpdateKind
#define IPointerPointProperties_HasUsage __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_HasUsage
#define IPointerPointProperties_GetUsageValue __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_GetUsageValue
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IPointerPointProperties2 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2, 0x22c3433a, 0xc83b, 0x41c0, 0xa2,0x96, 0x5e,0x23,0x2d,0x64,0xd6,0xaf);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                MIDL_INTERFACE("22c3433a-c83b-41c0-a296-5e232d64d6af")
                IPointerPointProperties2 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_ZDistance(
                        ABI::Windows::Foundation::IReference<FLOAT > **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2, 0x22c3433a, 0xc83b, 0x41c0, 0xa2,0x96, 0x5e,0x23,0x2d,0x64,0xd6,0xaf)
#endif
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2Vtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IPointerPointProperties2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_ZDistance)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 *This,
        __FIReference_1_FLOAT **value);

    END_INTERFACE
} __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2Vtbl;

interface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2 {
    CONST_VTBL __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IPointerPointProperties2 methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_get_ZDistance(This,value) (This)->lpVtbl->get_ZDistance(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_QueryInterface(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_AddRef(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_Release(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetIids(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetRuntimeClassName(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetTrustLevel(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IPointerPointProperties2 methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_get_ZDistance(__x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2* This,__FIReference_1_FLOAT **value) {
    return This->lpVtbl->get_ZDistance(This,value);
}
#endif
#ifdef WIDL_using_Windows_UI_Input
#define IID_IPointerPointProperties2 IID___x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2
#define IPointerPointProperties2Vtbl __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2Vtbl
#define IPointerPointProperties2 __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2
#define IPointerPointProperties2_QueryInterface __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_QueryInterface
#define IPointerPointProperties2_AddRef __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_AddRef
#define IPointerPointProperties2_Release __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_Release
#define IPointerPointProperties2_GetIids __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetIids
#define IPointerPointProperties2_GetRuntimeClassName __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetRuntimeClassName
#define IPointerPointProperties2_GetTrustLevel __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_GetTrustLevel
#define IPointerPointProperties2_get_ZDistance __x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_get_ZDistance
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CUI_CInput_CIPointerPointProperties2_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IPointerPointStatics interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CUI_CInput_CIPointerPointStatics, 0xa506638d, 0x2a1a, 0x413e, 0xbc,0x75, 0x9f,0x38,0x38,0x1c,0xc0,0x69);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                MIDL_INTERFACE("a506638d-2a1a-413e-bc75-9f38381cc069")
                IPointerPointStatics : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE GetCurrentPoint(
                        UINT32 pointer_id,
                        ABI::Windows::UI::Input::IPointerPoint **point) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetIntermediatePoints(
                        UINT32 pointer_id,
                        ABI::Windows::Foundation::Collections::IVector<ABI::Windows::UI::Input::PointerPoint* > **points) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetCurrentPointTransformed(
                        UINT32 pointer_id,
                        ABI::Windows::UI::Input::IPointerPointTransform *transform,
                        ABI::Windows::UI::Input::IPointerPoint **point) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetIntermediatePointsTransformed(
                        UINT32 pointer_id,
                        ABI::Windows::UI::Input::IPointerPointTransform *transform,
                        ABI::Windows::Foundation::Collections::IVector<ABI::Windows::UI::Input::PointerPoint* > **points) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics, 0xa506638d, 0x2a1a, 0x413e, 0xbc,0x75, 0x9f,0x38,0x38,0x1c,0xc0,0x69)
#endif
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CIPointerPointStaticsVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IPointerPointStatics methods ***/
    HRESULT (STDMETHODCALLTYPE *GetCurrentPoint)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics *This,
        UINT32 pointer_id,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **point);

    HRESULT (STDMETHODCALLTYPE *GetIntermediatePoints)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics *This,
        UINT32 pointer_id,
        __FIVector_1_Windows__CUI__CInput__CPointerPoint **points);

    HRESULT (STDMETHODCALLTYPE *GetCurrentPointTransformed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics *This,
        UINT32 pointer_id,
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *transform,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **point);

    HRESULT (STDMETHODCALLTYPE *GetIntermediatePointsTransformed)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics *This,
        UINT32 pointer_id,
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *transform,
        __FIVector_1_Windows__CUI__CInput__CPointerPoint **points);

    END_INTERFACE
} __x_ABI_CWindows_CUI_CInput_CIPointerPointStaticsVtbl;

interface __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics {
    CONST_VTBL __x_ABI_CWindows_CUI_CInput_CIPointerPointStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IPointerPointStatics methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPoint(This,pointer_id,point) (This)->lpVtbl->GetCurrentPoint(This,pointer_id,point)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePoints(This,pointer_id,points) (This)->lpVtbl->GetIntermediatePoints(This,pointer_id,points)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPointTransformed(This,pointer_id,transform,point) (This)->lpVtbl->GetCurrentPointTransformed(This,pointer_id,transform,point)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePointsTransformed(This,pointer_id,transform,points) (This)->lpVtbl->GetIntermediatePointsTransformed(This,pointer_id,transform,points)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_QueryInterface(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_AddRef(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_Release(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIids(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetRuntimeClassName(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetTrustLevel(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IPointerPointStatics methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPoint(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,UINT32 pointer_id,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **point) {
    return This->lpVtbl->GetCurrentPoint(This,pointer_id,point);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePoints(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,UINT32 pointer_id,__FIVector_1_Windows__CUI__CInput__CPointerPoint **points) {
    return This->lpVtbl->GetIntermediatePoints(This,pointer_id,points);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPointTransformed(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,UINT32 pointer_id,__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *transform,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **point) {
    return This->lpVtbl->GetCurrentPointTransformed(This,pointer_id,transform,point);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePointsTransformed(__x_ABI_CWindows_CUI_CInput_CIPointerPointStatics* This,UINT32 pointer_id,__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *transform,__FIVector_1_Windows__CUI__CInput__CPointerPoint **points) {
    return This->lpVtbl->GetIntermediatePointsTransformed(This,pointer_id,transform,points);
}
#endif
#ifdef WIDL_using_Windows_UI_Input
#define IID_IPointerPointStatics IID___x_ABI_CWindows_CUI_CInput_CIPointerPointStatics
#define IPointerPointStaticsVtbl __x_ABI_CWindows_CUI_CInput_CIPointerPointStaticsVtbl
#define IPointerPointStatics __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics
#define IPointerPointStatics_QueryInterface __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_QueryInterface
#define IPointerPointStatics_AddRef __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_AddRef
#define IPointerPointStatics_Release __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_Release
#define IPointerPointStatics_GetIids __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIids
#define IPointerPointStatics_GetRuntimeClassName __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetRuntimeClassName
#define IPointerPointStatics_GetTrustLevel __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetTrustLevel
#define IPointerPointStatics_GetCurrentPoint __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPoint
#define IPointerPointStatics_GetIntermediatePoints __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePoints
#define IPointerPointStatics_GetCurrentPointTransformed __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetCurrentPointTransformed
#define IPointerPointStatics_GetIntermediatePointsTransformed __x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_GetIntermediatePointsTransformed
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CUI_CInput_CIPointerPointStatics_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IPointerPointTransform interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CUI_CInput_CIPointerPointTransform, 0x4d5fe14f, 0xb87c, 0x4028, 0xbc,0x9c, 0x59,0xe9,0x94,0x7f,0xb0,0x56);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Input {
                MIDL_INTERFACE("4d5fe14f-b87c-4028-bc9c-59e9947fb056")
                IPointerPointTransform : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Inverse(
                        ABI::Windows::UI::Input::IPointerPointTransform **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE TryTransform(
                        ABI::Windows::Foundation::Point in_point,
                        ABI::Windows::Foundation::Point *out_point,
                        boolean *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE TransformBounds(
                        ABI::Windows::Foundation::Rect rect,
                        ABI::Windows::Foundation::Rect *value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform, 0x4d5fe14f, 0xb87c, 0x4028, 0xbc,0x9c, 0x59,0xe9,0x94,0x7f,0xb0,0x56)
#endif
#else
typedef struct __x_ABI_CWindows_CUI_CInput_CIPointerPointTransformVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IPointerPointTransform methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Inverse)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *This,
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform **value);

    HRESULT (STDMETHODCALLTYPE *TryTransform)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *This,
        __x_ABI_CWindows_CFoundation_CPoint in_point,
        __x_ABI_CWindows_CFoundation_CPoint *out_point,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *TransformBounds)(
        __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform *This,
        __x_ABI_CWindows_CFoundation_CRect rect,
        __x_ABI_CWindows_CFoundation_CRect *value);

    END_INTERFACE
} __x_ABI_CWindows_CUI_CInput_CIPointerPointTransformVtbl;

interface __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform {
    CONST_VTBL __x_ABI_CWindows_CUI_CInput_CIPointerPointTransformVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IPointerPointTransform methods ***/
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_get_Inverse(This,value) (This)->lpVtbl->get_Inverse(This,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TryTransform(This,in_point,out_point,value) (This)->lpVtbl->TryTransform(This,in_point,out_point,value)
#define __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TransformBounds(This,rect,value) (This)->lpVtbl->TransformBounds(This,rect,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_QueryInterface(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_AddRef(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_Release(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetIids(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetRuntimeClassName(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetTrustLevel(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IPointerPointTransform methods ***/
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_get_Inverse(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform **value) {
    return This->lpVtbl->get_Inverse(This,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TryTransform(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,__x_ABI_CWindows_CFoundation_CPoint in_point,__x_ABI_CWindows_CFoundation_CPoint *out_point,boolean *value) {
    return This->lpVtbl->TryTransform(This,in_point,out_point,value);
}
static inline HRESULT __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TransformBounds(__x_ABI_CWindows_CUI_CInput_CIPointerPointTransform* This,__x_ABI_CWindows_CFoundation_CRect rect,__x_ABI_CWindows_CFoundation_CRect *value) {
    return This->lpVtbl->TransformBounds(This,rect,value);
}
#endif
#ifdef WIDL_using_Windows_UI_Input
#define IID_IPointerPointTransform IID___x_ABI_CWindows_CUI_CInput_CIPointerPointTransform
#define IPointerPointTransformVtbl __x_ABI_CWindows_CUI_CInput_CIPointerPointTransformVtbl
#define IPointerPointTransform __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform
#define IPointerPointTransform_QueryInterface __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_QueryInterface
#define IPointerPointTransform_AddRef __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_AddRef
#define IPointerPointTransform_Release __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_Release
#define IPointerPointTransform_GetIids __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetIids
#define IPointerPointTransform_GetRuntimeClassName __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetRuntimeClassName
#define IPointerPointTransform_GetTrustLevel __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_GetTrustLevel
#define IPointerPointTransform_get_Inverse __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_get_Inverse
#define IPointerPointTransform_TryTransform __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TryTransform
#define IPointerPointTransform_TransformBounds __x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_TransformBounds
#endif /* WIDL_using_Windows_UI_Input */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CUI_CInput_CIPointerPointTransform_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.UI.Input.PointerPoint
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_UI_Input_PointerPoint_DEFINED
#define RUNTIMECLASS_Windows_UI_Input_PointerPoint_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_UI_Input_PointerPoint[] = {'W','i','n','d','o','w','s','.','U','I','.','I','n','p','u','t','.','P','o','i','n','t','e','r','P','o','i','n','t',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_UI_Input_PointerPoint[] = L"Windows.UI.Input.PointerPoint";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_UI_Input_PointerPoint[] = {'W','i','n','d','o','w','s','.','U','I','.','I','n','p','u','t','.','P','o','i','n','t','e','r','P','o','i','n','t',0};
#endif
#endif /* RUNTIMECLASS_Windows_UI_Input_PointerPoint_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.UI.Input.PointerPointProperties
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_UI_Input_PointerPointProperties_DEFINED
#define RUNTIMECLASS_Windows_UI_Input_PointerPointProperties_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_UI_Input_PointerPointProperties[] = {'W','i','n','d','o','w','s','.','U','I','.','I','n','p','u','t','.','P','o','i','n','t','e','r','P','o','i','n','t','P','r','o','p','e','r','t','i','e','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_UI_Input_PointerPointProperties[] = L"Windows.UI.Input.PointerPointProperties";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_UI_Input_PointerPointProperties[] = {'W','i','n','d','o','w','s','.','U','I','.','I','n','p','u','t','.','P','o','i','n','t','e','r','P','o','i','n','t','P','r','o','p','e','r','t','i','e','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_UI_Input_PointerPointProperties_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IVectorView<ABI::Windows::UI::Input::PointerPoint* > interface
 */
#ifndef ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_Windows__CUI__CInput__CPointerPoint, 0xf0f57411, 0x7786, 0x5174, 0x87,0x52, 0x4c,0x5e,0x83,0x4b,0x6d,0xa2);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("f0f57411-7786-5174-8752-4c5e834b6da2")
                IVectorView<ABI::Windows::UI::Input::PointerPoint* > : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::UI::Input::PointerPoint*, ABI::Windows::UI::Input::IPointerPoint* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint, 0xf0f57411, 0x7786, 0x5174, 0x87,0x52, 0x4c,0x5e,0x83,0x4b,0x6d,0xa2)
#endif
#else
typedef struct __FIVectorView_1_Windows__CUI__CInput__CPointerPointVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IVectorView<ABI::Windows::UI::Input::PointerPoint* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 index,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **value);

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

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_Windows__CUI__CInput__CPointerPoint *This,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 start_index,
        UINT32 items_size,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_Windows__CUI__CInput__CPointerPointVtbl;

interface __FIVectorView_1_Windows__CUI__CInput__CPointerPoint {
    CONST_VTBL __FIVectorView_1_Windows__CUI__CInput__CPointerPointVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<ABI::Windows::UI::Input::PointerPoint* > methods ***/
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_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__CUI__CInput__CPointerPoint_QueryInterface(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_AddRef(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_Release(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetIids(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<ABI::Windows::UI::Input::PointerPoint* > methods ***/
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetAt(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 index,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_get_Size(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_IndexOf(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,__x_ABI_CWindows_CUI_CInput_CIPointerPoint *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static inline HRESULT __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetMany(__FIVectorView_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_PointerPoint IID___FIVectorView_1_Windows__CUI__CInput__CPointerPoint
#define IVectorView_PointerPointVtbl __FIVectorView_1_Windows__CUI__CInput__CPointerPointVtbl
#define IVectorView_PointerPoint __FIVectorView_1_Windows__CUI__CInput__CPointerPoint
#define IVectorView_PointerPoint_QueryInterface __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_QueryInterface
#define IVectorView_PointerPoint_AddRef __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_AddRef
#define IVectorView_PointerPoint_Release __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_Release
#define IVectorView_PointerPoint_GetIids __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetIids
#define IVectorView_PointerPoint_GetRuntimeClassName __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName
#define IVectorView_PointerPoint_GetTrustLevel __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel
#define IVectorView_PointerPoint_GetAt __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetAt
#define IVectorView_PointerPoint_get_Size __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_get_Size
#define IVectorView_PointerPoint_IndexOf __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_IndexOf
#define IVectorView_PointerPoint_GetMany __FIVectorView_1_Windows__CUI__CInput__CPointerPoint_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVector<ABI::Windows::UI::Input::PointerPoint* > interface
 */
#ifndef ____FIVector_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__
#define ____FIVector_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVector_1_Windows__CUI__CInput__CPointerPoint, 0xdfa655cf, 0xfde7, 0x5048, 0xb4,0xbf, 0xc9,0x09,0x23,0x1b,0x7e,0xdb);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("dfa655cf-fde7-5048-b4bf-c909231b7edb")
                IVector<ABI::Windows::UI::Input::PointerPoint* > : IVector_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::UI::Input::PointerPoint*, ABI::Windows::UI::Input::IPointerPoint* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVector_1_Windows__CUI__CInput__CPointerPoint, 0xdfa655cf, 0xfde7, 0x5048, 0xb4,0xbf, 0xc9,0x09,0x23,0x1b,0x7e,0xdb)
#endif
#else
typedef struct __FIVector_1_Windows__CUI__CInput__CPointerPointVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IVector<ABI::Windows::UI::Input::PointerPoint* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 index,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **value);

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

    HRESULT (STDMETHODCALLTYPE *GetView)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        __FIVectorView_1_Windows__CUI__CInput__CPointerPoint **value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *SetAt)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 index,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *value);

    HRESULT (STDMETHODCALLTYPE *InsertAt)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 index,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *value);

    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 index);

    HRESULT (STDMETHODCALLTYPE *Append)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint *value);

    HRESULT (STDMETHODCALLTYPE *RemoveAtEnd)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This);

    HRESULT (STDMETHODCALLTYPE *Clear)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 start_index,
        UINT32 items_size,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **items,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *ReplaceAll)(
        __FIVector_1_Windows__CUI__CInput__CPointerPoint *This,
        UINT32 count,
        __x_ABI_CWindows_CUI_CInput_CIPointerPoint **items);

    END_INTERFACE
} __FIVector_1_Windows__CUI__CInput__CPointerPointVtbl;

interface __FIVector_1_Windows__CUI__CInput__CPointerPoint {
    CONST_VTBL __FIVector_1_Windows__CUI__CInput__CPointerPointVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVector<ABI::Windows::UI::Input::PointerPoint* > methods ***/
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetView(This,value) (This)->lpVtbl->GetView(This,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_SetAt(This,index,value) (This)->lpVtbl->SetAt(This,index,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_InsertAt(This,index,value) (This)->lpVtbl->InsertAt(This,index,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_Append(This,value) (This)->lpVtbl->Append(This,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAtEnd(This) (This)->lpVtbl->RemoveAtEnd(This)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_Clear(This) (This)->lpVtbl->Clear(This)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#define __FIVector_1_Windows__CUI__CInput__CPointerPoint_ReplaceAll(This,count,items) (This)->lpVtbl->ReplaceAll(This,count,items)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_QueryInterface(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIVector_1_Windows__CUI__CInput__CPointerPoint_AddRef(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIVector_1_Windows__CUI__CInput__CPointerPoint_Release(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetIids(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVector<ABI::Windows::UI::Input::PointerPoint* > methods ***/
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetAt(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 index,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_get_Size(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetView(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,__FIVectorView_1_Windows__CUI__CInput__CPointerPoint **value) {
    return This->lpVtbl->GetView(This,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_IndexOf(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,__x_ABI_CWindows_CUI_CInput_CIPointerPoint *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_SetAt(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 index,__x_ABI_CWindows_CUI_CInput_CIPointerPoint *value) {
    return This->lpVtbl->SetAt(This,index,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_InsertAt(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 index,__x_ABI_CWindows_CUI_CInput_CIPointerPoint *value) {
    return This->lpVtbl->InsertAt(This,index,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAt(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 index) {
    return This->lpVtbl->RemoveAt(This,index);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_Append(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,__x_ABI_CWindows_CUI_CInput_CIPointerPoint *value) {
    return This->lpVtbl->Append(This,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAtEnd(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->RemoveAtEnd(This);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_Clear(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This) {
    return This->lpVtbl->Clear(This);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetMany(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
static inline HRESULT __FIVector_1_Windows__CUI__CInput__CPointerPoint_ReplaceAll(__FIVector_1_Windows__CUI__CInput__CPointerPoint* This,UINT32 count,__x_ABI_CWindows_CUI_CInput_CIPointerPoint **items) {
    return This->lpVtbl->ReplaceAll(This,count,items);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVector_PointerPoint IID___FIVector_1_Windows__CUI__CInput__CPointerPoint
#define IVector_PointerPointVtbl __FIVector_1_Windows__CUI__CInput__CPointerPointVtbl
#define IVector_PointerPoint __FIVector_1_Windows__CUI__CInput__CPointerPoint
#define IVector_PointerPoint_QueryInterface __FIVector_1_Windows__CUI__CInput__CPointerPoint_QueryInterface
#define IVector_PointerPoint_AddRef __FIVector_1_Windows__CUI__CInput__CPointerPoint_AddRef
#define IVector_PointerPoint_Release __FIVector_1_Windows__CUI__CInput__CPointerPoint_Release
#define IVector_PointerPoint_GetIids __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetIids
#define IVector_PointerPoint_GetRuntimeClassName __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetRuntimeClassName
#define IVector_PointerPoint_GetTrustLevel __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetTrustLevel
#define IVector_PointerPoint_GetAt __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetAt
#define IVector_PointerPoint_get_Size __FIVector_1_Windows__CUI__CInput__CPointerPoint_get_Size
#define IVector_PointerPoint_GetView __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetView
#define IVector_PointerPoint_IndexOf __FIVector_1_Windows__CUI__CInput__CPointerPoint_IndexOf
#define IVector_PointerPoint_SetAt __FIVector_1_Windows__CUI__CInput__CPointerPoint_SetAt
#define IVector_PointerPoint_InsertAt __FIVector_1_Windows__CUI__CInput__CPointerPoint_InsertAt
#define IVector_PointerPoint_RemoveAt __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAt
#define IVector_PointerPoint_Append __FIVector_1_Windows__CUI__CInput__CPointerPoint_Append
#define IVector_PointerPoint_RemoveAtEnd __FIVector_1_Windows__CUI__CInput__CPointerPoint_RemoveAtEnd
#define IVector_PointerPoint_Clear __FIVector_1_Windows__CUI__CInput__CPointerPoint_Clear
#define IVector_PointerPoint_GetMany __FIVector_1_Windows__CUI__CInput__CPointerPoint_GetMany
#define IVector_PointerPoint_ReplaceAll __FIVector_1_Windows__CUI__CInput__CPointerPoint_ReplaceAll
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVector_1_Windows__CUI__CInput__CPointerPoint_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */


/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __windows_ui_input_h__ */
