| /*** Autogenerated by WIDL 6.3 from include/windows.foundation.collections.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_foundation_collections_h__ |
| #define __windows_foundation_collections_h__ |
| |
| /* Forward declarations */ |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| template <class T> |
| struct IEventHandler_impl; |
| |
| template <class T> |
| struct IEventHandler : IEventHandler_impl<T> {}; |
| } |
| } |
| } |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IIterator_impl; |
| |
| template <class T> |
| struct IIterator : IIterator_impl<T> {}; |
| } |
| } |
| } |
| } |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IIterable_impl; |
| |
| template <class T> |
| struct IIterable : IIterable_impl<T> {}; |
| } |
| } |
| } |
| } |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IVectorView_impl; |
| |
| template <class T> |
| struct IVectorView : IVectorView_impl<T> {}; |
| } |
| } |
| } |
| } |
| #endif |
| |
| /* Headers for imported files */ |
| |
| #include <inspectable.h> |
| #include <windowscontracts.h> |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifdef __cplusplus |
| } /* extern "C" */ |
| namespace ABI { namespace Windows { namespace Foundation { namespace Internal { |
| template <class T> struct GetAbiType { typedef T type; }; |
| template <class T> struct GetLogicalType { typedef T type; }; |
| template <class L, class A> struct AggregateType {}; |
| template <class L, class A> struct GetAbiType<AggregateType<L, A> > { typedef A type; }; |
| template <class L, class A> struct GetLogicalType<AggregateType<L, A> > { typedef L type; }; |
| }}}} |
| extern "C" { |
| #endif |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| } /* extern "C" */ |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| template <class T> |
| struct IEventHandler_impl : IUnknown |
| { |
| private: |
| typedef typename Windows::Foundation::Internal::GetAbiType<T>::type T_abi; |
| typedef typename Windows::Foundation::Internal::GetLogicalType<T>::type T_logical; |
| public: |
| typedef T T_complex; |
| virtual HRESULT STDMETHODCALLTYPE Invoke(IInspectable *sender,T_abi args) = 0; |
| }; |
| } |
| } |
| } |
| extern "C" { |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| } /* extern "C" */ |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IIterator_impl : IInspectable |
| { |
| private: |
| typedef typename Windows::Foundation::Internal::GetAbiType<T>::type T_abi; |
| typedef typename Windows::Foundation::Internal::GetLogicalType<T>::type T_logical; |
| public: |
| typedef T T_complex; |
| virtual HRESULT STDMETHODCALLTYPE get_Current(T_abi *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE get_HasCurrent(WINBOOL *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE MoveNext(WINBOOL *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE GetMany(UINT32 count,T_abi *items,UINT32 *value) = 0; |
| }; |
| } |
| } |
| } |
| } |
| extern "C" { |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| } /* extern "C" */ |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IIterable_impl : IInspectable |
| { |
| private: |
| typedef typename Windows::Foundation::Internal::GetAbiType<T>::type T_abi; |
| typedef typename Windows::Foundation::Internal::GetLogicalType<T>::type T_logical; |
| public: |
| typedef T T_complex; |
| virtual HRESULT STDMETHODCALLTYPE First(IIterator<T_logical> **value) = 0; |
| }; |
| } |
| } |
| } |
| } |
| extern "C" { |
| #endif |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| } /* extern "C" */ |
| namespace ABI { |
| namespace Windows { |
| namespace Foundation { |
| namespace Collections { |
| template <class T> |
| struct IVectorView_impl : IInspectable |
| { |
| private: |
| typedef typename Windows::Foundation::Internal::GetAbiType<T>::type T_abi; |
| typedef typename Windows::Foundation::Internal::GetLogicalType<T>::type T_logical; |
| public: |
| typedef T T_complex; |
| virtual HRESULT STDMETHODCALLTYPE GetAt(ULONG index,T_abi *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE get_Size(ULONG *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE IndexOf(T_abi element,ULONG *index,BOOLEAN *value) = 0; |
| virtual HRESULT STDMETHODCALLTYPE GetMany(ULONG start_index,T_abi *items,ULONG *value) = 0; |
| }; |
| } |
| } |
| } |
| } |
| extern "C" { |
| #endif |
| |
| /* Begin additional prototypes for all interfaces */ |
| |
| |
| /* End additional prototypes */ |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* __windows_foundation_collections_h__ */ |