/*** Autogenerated by WIDL 11.13 from /home/runner/build_wine/wine/include/windows.applicationmodel.background.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_applicationmodel_background_h__
#define __windows_applicationmodel_background_h__

/* Forward declarations */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler ABI::Windows::ApplicationModel::Background::IBackgroundTaskCanceledEventHandler
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskCanceledEventHandler;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler ABI::Windows::ApplicationModel::Background::IBackgroundTaskCompletedEventHandler
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskCompletedEventHandler;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler ABI::Windows::ApplicationModel::Background::IBackgroundTaskProgressEventHandler
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskProgressEventHandler;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs ABI::Windows::ApplicationModel::Background::IBackgroundTaskCompletedEventArgs
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskCompletedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral ABI::Windows::ApplicationModel::Background::IBackgroundTaskDeferral
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskDeferral;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs ABI::Windows::ApplicationModel::Background::IBackgroundTaskProgressEventArgs
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskProgressEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance ABI::Windows::ApplicationModel::Background::IBackgroundTaskInstance
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskInstance;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration2
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration3
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration3;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationGroup;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroupFactory
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationGroupFactory;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationStatics
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationStatics;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationStatics2
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationStatics2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger ABI::Windows::ApplicationModel::Background::IBackgroundTrigger
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTrigger;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCompletedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCompletedEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                class BackgroundTaskCompletedEventArgs;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCompletedEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCompletedEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCompletedEventArgs_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskDeferral_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                class BackgroundTaskDeferral;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskDeferral __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskDeferral;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskDeferral_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskProgressEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskProgressEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                class BackgroundTaskProgressEventArgs;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskProgressEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskProgressEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskProgressEventArgs_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistration_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistration_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                class BackgroundTaskRegistration;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistration __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistration;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistration_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistrationGroup_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistrationGroup_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                class BackgroundTaskRegistrationGroup;
            }
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistrationGroup __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistrationGroup;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskRegistrationGroup_FWD_DEFINED__ */

#ifndef ____FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_FWD_DEFINED__
#define ____FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_FWD_DEFINED__
typedef interface __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs;
#ifdef __cplusplus
#define __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs ABI::Windows::Foundation::IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_FWD_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration;
#ifdef __cplusplus
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_FWD_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration;
#ifdef __cplusplus
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_FWD_DEFINED__
#define ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup ABI::Windows::Foundation::Collections::IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* >
#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.applicationmodel.activation.h>
#include <windows.storage.h>
#include <windows.system.h>

#ifdef __cplusplus
extern "C" {
#endif

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

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason_ENUM_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                enum BackgroundTaskCancellationReason {
                    BackgroundTaskCancellationReason_Abort = 0,
                    BackgroundTaskCancellationReason_Terminating = 1,
                    BackgroundTaskCancellationReason_LoggingOff = 2,
                    BackgroundTaskCancellationReason_ServicingUpdate = 3,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_IdleTask = 4,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_Uninstall = 5,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_ConditionLoss = 6,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_SystemPolicy = 7,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_QuietHoursEntered = 8,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_ExecutionTimeExceeded = 9,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_ResourceRevocation = 10,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                    BackgroundTaskCancellationReason_EnergySaver = 11
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
                };
            }
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason {
    BackgroundTaskCancellationReason_Abort = 0,
    BackgroundTaskCancellationReason_Terminating = 1,
    BackgroundTaskCancellationReason_LoggingOff = 2,
    BackgroundTaskCancellationReason_ServicingUpdate = 3,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_IdleTask = 4,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_Uninstall = 5,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_ConditionLoss = 6,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_SystemPolicy = 7,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_QuietHoursEntered = 8,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_ExecutionTimeExceeded = 9,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_ResourceRevocation = 10,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    BackgroundTaskCancellationReason_EnergySaver = 11
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
};
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define BackgroundTaskCancellationReason __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif /* ____x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason;
#endif /* __cplusplus */

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs ABI::Windows::ApplicationModel::Background::IBackgroundTaskCompletedEventArgs
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskCompletedEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral ABI::Windows::ApplicationModel::Background::IBackgroundTaskDeferral
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskDeferral;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs ABI::Windows::ApplicationModel::Background::IBackgroundTaskProgressEventArgs
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskProgressEventArgs;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance ABI::Windows::ApplicationModel::Background::IBackgroundTaskInstance
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskInstance;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration2
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration3
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistration3;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationGroup;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroupFactory
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationGroupFactory;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationStatics
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationStatics;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationStatics2
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTaskRegistrationStatics2;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger;
#ifdef __cplusplus
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger ABI::Windows::ApplicationModel::Background::IBackgroundTrigger
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                interface IBackgroundTrigger;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_FWD_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration;
#ifdef __cplusplus
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_FWD_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_FWD_DEFINED__
typedef interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration;
#ifdef __cplusplus
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_FWD_DEFINED__
#define ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup ABI::Windows::Foundation::Collections::IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* >
#endif /* __cplusplus */
#endif

/*****************************************************************************
 * IBackgroundTaskCanceledEventHandler interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler, 0xa6c4bac0, 0x51f8, 0x4c57, 0xac,0x3f, 0x15,0x6d,0xd1,0x68,0x0c,0x4f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("a6c4bac0-51f8-4c57-ac3f-156dd1680c4f")
                IBackgroundTaskCanceledEventHandler : public IUnknown
                {
                    virtual HRESULT STDMETHODCALLTYPE Invoke(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskInstance *sender,
                        ABI::Windows::ApplicationModel::Background::BackgroundTaskCancellationReason reason) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler, 0xa6c4bac0, 0x51f8, 0x4c57, 0xac,0x3f, 0x15,0x6d,0xd1,0x68,0x0c,0x4f)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandlerVtbl {
    BEGIN_INTERFACE

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

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

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

    /*** IBackgroundTaskCanceledEventHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *sender,
        __x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason reason);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandlerVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IBackgroundTaskCanceledEventHandler methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Invoke(This,sender,reason) (This)->lpVtbl->Invoke(This,sender,reason)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IBackgroundTaskCanceledEventHandler methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Invoke(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *sender,__x_ABI_CWindows_CApplicationModel_CBackground_CBackgroundTaskCancellationReason reason) {
    return This->lpVtbl->Invoke(This,sender,reason);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskCanceledEventHandler IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler
#define IBackgroundTaskCanceledEventHandlerVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandlerVtbl
#define IBackgroundTaskCanceledEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler
#define IBackgroundTaskCanceledEventHandler_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_QueryInterface
#define IBackgroundTaskCanceledEventHandler_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_AddRef
#define IBackgroundTaskCanceledEventHandler_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Release
#define IBackgroundTaskCanceledEventHandler_Invoke __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler_Invoke
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskCompletedEventHandler interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler, 0x5b38e929, 0xa086, 0x46a7, 0xa6,0x78, 0x43,0x91,0x35,0x82,0x2b,0xcf);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("5b38e929-a086-46a7-a678-439135822bcf")
                IBackgroundTaskCompletedEventHandler : public IUnknown
                {
                    virtual HRESULT STDMETHODCALLTYPE Invoke(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration *sender,
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskCompletedEventArgs *args) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler, 0x5b38e929, 0xa086, 0x46a7, 0xa6,0x78, 0x43,0x91,0x35,0x82,0x2b,0xcf)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandlerVtbl {
    BEGIN_INTERFACE

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

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

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

    /*** IBackgroundTaskCompletedEventHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *sender,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs *args);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandlerVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IBackgroundTaskCompletedEventHandler methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IBackgroundTaskCompletedEventHandler methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Invoke(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *sender,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskCompletedEventHandler IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler
#define IBackgroundTaskCompletedEventHandlerVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandlerVtbl
#define IBackgroundTaskCompletedEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler
#define IBackgroundTaskCompletedEventHandler_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_QueryInterface
#define IBackgroundTaskCompletedEventHandler_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_AddRef
#define IBackgroundTaskCompletedEventHandler_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Release
#define IBackgroundTaskCompletedEventHandler_Invoke __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler_Invoke
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskProgressEventHandler interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler, 0x46e0683c, 0x8a88, 0x4c99, 0x80,0x4c, 0x76,0x89,0x7f,0x62,0x77,0xa6);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("46e0683c-8a88-4c99-804c-76897f6277a6")
                IBackgroundTaskProgressEventHandler : public IUnknown
                {
                    virtual HRESULT STDMETHODCALLTYPE Invoke(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration *sender,
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskProgressEventArgs *args) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler, 0x46e0683c, 0x8a88, 0x4c99, 0x80,0x4c, 0x76,0x89,0x7f,0x62,0x77,0xa6)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandlerVtbl {
    BEGIN_INTERFACE

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

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

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

    /*** IBackgroundTaskProgressEventHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *sender,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs *args);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandlerVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IBackgroundTaskProgressEventHandler methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IBackgroundTaskProgressEventHandler methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Invoke(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *sender,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskProgressEventHandler IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler
#define IBackgroundTaskProgressEventHandlerVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandlerVtbl
#define IBackgroundTaskProgressEventHandler __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler
#define IBackgroundTaskProgressEventHandler_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_QueryInterface
#define IBackgroundTaskProgressEventHandler_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_AddRef
#define IBackgroundTaskProgressEventHandler_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Release
#define IBackgroundTaskProgressEventHandler_Invoke __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler_Invoke
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskCompletedEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs, 0x565d25cf, 0xf209, 0x48f4, 0x99,0x67, 0x2b,0x18,0x4f,0x7b,0xfb,0xf0);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("565d25cf-f209-48f4-9967-2b184f7bfbf0")
                IBackgroundTaskCompletedEventArgs : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_InstanceId(
                        GUID *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE CheckResult(
                        ) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs, 0x565d25cf, 0xf209, 0x48f4, 0x99,0x67, 0x2b,0x18,0x4f,0x7b,0xfb,0xf0)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgsVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskCompletedEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *get_InstanceId)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs *This,
        GUID *value);

    HRESULT (STDMETHODCALLTYPE *CheckResult)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs *This);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgsVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskCompletedEventArgs methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_get_InstanceId(This,value) (This)->lpVtbl->get_InstanceId(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_CheckResult(This) (This)->lpVtbl->CheckResult(This)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskCompletedEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_get_InstanceId(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This,GUID *value) {
    return This->lpVtbl->get_InstanceId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_CheckResult(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs* This) {
    return This->lpVtbl->CheckResult(This);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskCompletedEventArgs IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs
#define IBackgroundTaskCompletedEventArgsVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgsVtbl
#define IBackgroundTaskCompletedEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs
#define IBackgroundTaskCompletedEventArgs_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_QueryInterface
#define IBackgroundTaskCompletedEventArgs_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_AddRef
#define IBackgroundTaskCompletedEventArgs_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_Release
#define IBackgroundTaskCompletedEventArgs_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetIids
#define IBackgroundTaskCompletedEventArgs_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetRuntimeClassName
#define IBackgroundTaskCompletedEventArgs_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_GetTrustLevel
#define IBackgroundTaskCompletedEventArgs_get_InstanceId __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_get_InstanceId
#define IBackgroundTaskCompletedEventArgs_CheckResult __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventArgs_CheckResult
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskDeferral interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral, 0x93cc156d, 0xaf27, 0x4dd3, 0x84,0x6e, 0x24,0xee,0x40,0xca,0xdd,0x25);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("93cc156d-af27-4dd3-846e-24ee40cadd25")
                IBackgroundTaskDeferral : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE Complete(
                        ) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral, 0x93cc156d, 0xaf27, 0x4dd3, 0x84,0x6e, 0x24,0xee,0x40,0xca,0xdd,0x25)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferralVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskDeferral methods ***/
    HRESULT (STDMETHODCALLTYPE *Complete)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral *This);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferralVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferralVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskDeferral methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Complete(This) (This)->lpVtbl->Complete(This)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskDeferral methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Complete(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral* This) {
    return This->lpVtbl->Complete(This);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskDeferral IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral
#define IBackgroundTaskDeferralVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferralVtbl
#define IBackgroundTaskDeferral __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral
#define IBackgroundTaskDeferral_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_QueryInterface
#define IBackgroundTaskDeferral_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_AddRef
#define IBackgroundTaskDeferral_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Release
#define IBackgroundTaskDeferral_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetIids
#define IBackgroundTaskDeferral_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetRuntimeClassName
#define IBackgroundTaskDeferral_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_GetTrustLevel
#define IBackgroundTaskDeferral_Complete __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral_Complete
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskProgressEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs, 0xfb1468ac, 0x8332, 0x4d0a, 0x95,0x32, 0x03,0xea,0xe6,0x84,0xda,0x31);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("fb1468ac-8332-4d0a-9532-03eae684da31")
                IBackgroundTaskProgressEventArgs : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_InstanceId(
                        GUID *value) = 0;

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

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs, 0xfb1468ac, 0x8332, 0x4d0a, 0x95,0x32, 0x03,0xea,0xe6,0x84,0xda,0x31)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgsVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskProgressEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *get_InstanceId)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs *This,
        GUID *value);

    HRESULT (STDMETHODCALLTYPE *get_Progress)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs *This,
        UINT32 *value);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgsVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskProgressEventArgs methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_InstanceId(This,value) (This)->lpVtbl->get_InstanceId(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_Progress(This,value) (This)->lpVtbl->get_Progress(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskProgressEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_InstanceId(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,GUID *value) {
    return This->lpVtbl->get_InstanceId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_Progress(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs* This,UINT32 *value) {
    return This->lpVtbl->get_Progress(This,value);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskProgressEventArgs IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs
#define IBackgroundTaskProgressEventArgsVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgsVtbl
#define IBackgroundTaskProgressEventArgs __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs
#define IBackgroundTaskProgressEventArgs_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_QueryInterface
#define IBackgroundTaskProgressEventArgs_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_AddRef
#define IBackgroundTaskProgressEventArgs_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_Release
#define IBackgroundTaskProgressEventArgs_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetIids
#define IBackgroundTaskProgressEventArgs_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetRuntimeClassName
#define IBackgroundTaskProgressEventArgs_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_GetTrustLevel
#define IBackgroundTaskProgressEventArgs_get_InstanceId __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_InstanceId
#define IBackgroundTaskProgressEventArgs_get_Progress __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventArgs_get_Progress
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskInstance interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance, 0x865bda7a, 0x21d8, 0x4573, 0x8f,0x32, 0x92,0x8a,0x1b,0x06,0x41,0xf6);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("865bda7a-21d8-4573-8f32-928a1b0641f6")
                IBackgroundTaskInstance : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_InstanceId(
                        GUID *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Task(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration **task) = 0;

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

                    virtual HRESULT STDMETHODCALLTYPE put_Progress(
                        UINT32 value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_TriggerDetails(
                        IInspectable **details) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_Canceled(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskCanceledEventHandler *handler,
                        EventRegistrationToken *cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_Canceled(
                        EventRegistrationToken cookie) = 0;

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

                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskDeferral **deferral) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance, 0x865bda7a, 0x21d8, 0x4573, 0x8f,0x32, 0x92,0x8a,0x1b,0x06,0x41,0xf6)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstanceVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskInstance methods ***/
    HRESULT (STDMETHODCALLTYPE *get_InstanceId)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        GUID *value);

    HRESULT (STDMETHODCALLTYPE *get_Task)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **task);

    HRESULT (STDMETHODCALLTYPE *get_Progress)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *put_Progress)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        UINT32 value);

    HRESULT (STDMETHODCALLTYPE *get_TriggerDetails)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        IInspectable **details);

    HRESULT (STDMETHODCALLTYPE *add_Canceled)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_Canceled)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        EventRegistrationToken cookie);

    HRESULT (STDMETHODCALLTYPE *get_SuspendedCount)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *GetDeferral)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral **deferral);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstanceVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstanceVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskInstance methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_InstanceId(This,value) (This)->lpVtbl->get_InstanceId(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Task(This,task) (This)->lpVtbl->get_Task(This,task)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Progress(This,value) (This)->lpVtbl->get_Progress(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_put_Progress(This,value) (This)->lpVtbl->put_Progress(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_TriggerDetails(This,details) (This)->lpVtbl->get_TriggerDetails(This,details)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_add_Canceled(This,handler,cookie) (This)->lpVtbl->add_Canceled(This,handler,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_remove_Canceled(This,cookie) (This)->lpVtbl->remove_Canceled(This,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_SuspendedCount(This,value) (This)->lpVtbl->get_SuspendedCount(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetDeferral(This,deferral) (This)->lpVtbl->GetDeferral(This,deferral)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskInstance methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_InstanceId(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,GUID *value) {
    return This->lpVtbl->get_InstanceId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Task(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **task) {
    return This->lpVtbl->get_Task(This,task);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Progress(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,UINT32 *value) {
    return This->lpVtbl->get_Progress(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_put_Progress(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,UINT32 value) {
    return This->lpVtbl->put_Progress(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_TriggerDetails(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,IInspectable **details) {
    return This->lpVtbl->get_TriggerDetails(This,details);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_add_Canceled(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCanceledEventHandler *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_Canceled(This,handler,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_remove_Canceled(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_Canceled(This,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_SuspendedCount(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,UINT32 *value) {
    return This->lpVtbl->get_SuspendedCount(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetDeferral(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskDeferral **deferral) {
    return This->lpVtbl->GetDeferral(This,deferral);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskInstance IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance
#define IBackgroundTaskInstanceVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstanceVtbl
#define IBackgroundTaskInstance __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance
#define IBackgroundTaskInstance_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_QueryInterface
#define IBackgroundTaskInstance_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_AddRef
#define IBackgroundTaskInstance_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_Release
#define IBackgroundTaskInstance_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetIids
#define IBackgroundTaskInstance_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetRuntimeClassName
#define IBackgroundTaskInstance_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetTrustLevel
#define IBackgroundTaskInstance_get_InstanceId __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_InstanceId
#define IBackgroundTaskInstance_get_Task __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Task
#define IBackgroundTaskInstance_get_Progress __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_Progress
#define IBackgroundTaskInstance_put_Progress __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_put_Progress
#define IBackgroundTaskInstance_get_TriggerDetails __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_TriggerDetails
#define IBackgroundTaskInstance_add_Canceled __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_add_Canceled
#define IBackgroundTaskInstance_remove_Canceled __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_remove_Canceled
#define IBackgroundTaskInstance_get_SuspendedCount __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_get_SuspendedCount
#define IBackgroundTaskInstance_GetDeferral __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskInstance_GetDeferral
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistration interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration, 0x10654cc2, 0xa26e, 0x43bf, 0x8c,0x12, 0x1f,0xb4,0x0d,0xbf,0xbf,0xa0);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("10654cc2-a26e-43bf-8c12-1fb40dbfbfa0")
                IBackgroundTaskRegistration : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_TaskId(
                        GUID *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Name(
                        HSTRING *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_Progress(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskProgressEventHandler *handler,
                        EventRegistrationToken *cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_Progress(
                        EventRegistrationToken cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_Completed(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskCompletedEventHandler *handler,
                        EventRegistrationToken *cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_Completed(
                        EventRegistrationToken cookie) = 0;

                    virtual HRESULT STDMETHODCALLTYPE Unregister(
                        boolean cancel_task) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration, 0x10654cc2, 0xa26e, 0x43bf, 0x8c,0x12, 0x1f,0xb4,0x0d,0xbf,0xbf,0xa0)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistration methods ***/
    HRESULT (STDMETHODCALLTYPE *get_TaskId)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        GUID *value);

    HRESULT (STDMETHODCALLTYPE *get_Name)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *add_Progress)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_Progress)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        EventRegistrationToken cookie);

    HRESULT (STDMETHODCALLTYPE *add_Completed)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_Completed)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        EventRegistrationToken cookie);

    HRESULT (STDMETHODCALLTYPE *Unregister)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration *This,
        boolean cancel_task);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistration methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_TaskId(This,value) (This)->lpVtbl->get_TaskId(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_Name(This,value) (This)->lpVtbl->get_Name(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Progress(This,handler,cookie) (This)->lpVtbl->add_Progress(This,handler,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Progress(This,cookie) (This)->lpVtbl->remove_Progress(This,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Completed(This,handler,cookie) (This)->lpVtbl->add_Completed(This,handler,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Completed(This,cookie) (This)->lpVtbl->remove_Completed(This,cookie)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Unregister(This,cancel_task) (This)->lpVtbl->Unregister(This,cancel_task)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistration methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_TaskId(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,GUID *value) {
    return This->lpVtbl->get_TaskId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_Name(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,HSTRING *value) {
    return This->lpVtbl->get_Name(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Progress(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskProgressEventHandler *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_Progress(This,handler,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Progress(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_Progress(This,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Completed(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskCompletedEventHandler *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_Completed(This,handler,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Completed(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_Completed(This,cookie);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Unregister(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration* This,boolean cancel_task) {
    return This->lpVtbl->Unregister(This,cancel_task);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistration IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration
#define IBackgroundTaskRegistrationVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationVtbl
#define IBackgroundTaskRegistration __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration
#define IBackgroundTaskRegistration_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_QueryInterface
#define IBackgroundTaskRegistration_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_AddRef
#define IBackgroundTaskRegistration_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Release
#define IBackgroundTaskRegistration_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetIids
#define IBackgroundTaskRegistration_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetRuntimeClassName
#define IBackgroundTaskRegistration_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_GetTrustLevel
#define IBackgroundTaskRegistration_get_TaskId __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_TaskId
#define IBackgroundTaskRegistration_get_Name __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_get_Name
#define IBackgroundTaskRegistration_add_Progress __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Progress
#define IBackgroundTaskRegistration_remove_Progress __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Progress
#define IBackgroundTaskRegistration_add_Completed __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_add_Completed
#define IBackgroundTaskRegistration_remove_Completed __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_remove_Completed
#define IBackgroundTaskRegistration_Unregister __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration_Unregister
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistration2 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2, 0x6138c703, 0xbb86, 0x4112, 0xaf,0xc3, 0x7f,0x93,0x9b,0x16,0x6e,0x3b);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("6138c703-bb86-4112-afc3-7f939b166e3b")
                IBackgroundTaskRegistration2 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Trigger(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTrigger **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2, 0x6138c703, 0xbb86, 0x4112, 0xaf,0xc3, 0x7f,0x93,0x9b,0x16,0x6e,0x3b)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2Vtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistration2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Trigger)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger **value);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2Vtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2 {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistration2 methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_get_Trigger(This,value) (This)->lpVtbl->get_Trigger(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistration2 methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_get_Trigger(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger **value) {
    return This->lpVtbl->get_Trigger(This,value);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistration2 IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2
#define IBackgroundTaskRegistration2Vtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2Vtbl
#define IBackgroundTaskRegistration2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2
#define IBackgroundTaskRegistration2_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_QueryInterface
#define IBackgroundTaskRegistration2_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_AddRef
#define IBackgroundTaskRegistration2_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_Release
#define IBackgroundTaskRegistration2_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetIids
#define IBackgroundTaskRegistration2_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetRuntimeClassName
#define IBackgroundTaskRegistration2_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_GetTrustLevel
#define IBackgroundTaskRegistration2_get_Trigger __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration2_get_Trigger
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistration3 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3, 0xfe338195, 0x9423, 0x4d8b, 0x83,0x0d, 0xb1,0xdd,0x2c,0x7b,0xad,0xd5);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("fe338195-9423-4d8b-830d-b1dd2c7badd5")
                IBackgroundTaskRegistration3 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_TaskGroup(
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3, 0xfe338195, 0x9423, 0x4d8b, 0x83,0x0d, 0xb1,0xdd,0x2c,0x7b,0xad,0xd5)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3Vtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistration3 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_TaskGroup)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3Vtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3 {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistration3 methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_get_TaskGroup(This,value) (This)->lpVtbl->get_TaskGroup(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistration3 methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_get_TaskGroup(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value) {
    return This->lpVtbl->get_TaskGroup(This,value);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistration3 IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3
#define IBackgroundTaskRegistration3Vtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3Vtbl
#define IBackgroundTaskRegistration3 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3
#define IBackgroundTaskRegistration3_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_QueryInterface
#define IBackgroundTaskRegistration3_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_AddRef
#define IBackgroundTaskRegistration3_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_Release
#define IBackgroundTaskRegistration3_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetIids
#define IBackgroundTaskRegistration3_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetRuntimeClassName
#define IBackgroundTaskRegistration3_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_GetTrustLevel
#define IBackgroundTaskRegistration3_get_TaskGroup __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration3_get_TaskGroup
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistrationGroup interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup, 0x2ab1919a, 0x871b, 0x4167, 0x8a,0x76, 0x05,0x5c,0xd6,0x7b,0x5b,0x23);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("2ab1919a-871b-4167-8a76-055cd67b5b23")
                IBackgroundTaskRegistrationGroup : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_Id(
                        HSTRING *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_Name(
                        HSTRING *value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE add_BackgroundActivated(
                        ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > *handler,
                        EventRegistrationToken *token) = 0;

                    virtual HRESULT STDMETHODCALLTYPE remove_BackgroundActivated(
                        EventRegistrationToken token) = 0;

                    virtual HRESULT STDMETHODCALLTYPE get_AllTasks(
                        ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup, 0x2ab1919a, 0x871b, 0x4167, 0x8a,0x76, 0x05,0x5c,0xd6,0x7b,0x5b,0x23)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistrationGroup methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Id)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Name)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *add_BackgroundActivated)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *This,
        __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_BackgroundActivated)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *This,
        EventRegistrationToken token);

    HRESULT (STDMETHODCALLTYPE *get_AllTasks)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *This,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **value);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistrationGroup methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Id(This,value) (This)->lpVtbl->get_Id(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Name(This,value) (This)->lpVtbl->get_Name(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_add_BackgroundActivated(This,handler,token) (This)->lpVtbl->add_BackgroundActivated(This,handler,token)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_remove_BackgroundActivated(This,token) (This)->lpVtbl->remove_BackgroundActivated(This,token)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_AllTasks(This,value) (This)->lpVtbl->get_AllTasks(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistrationGroup methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Id(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,HSTRING *value) {
    return This->lpVtbl->get_Id(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Name(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,HSTRING *value) {
    return This->lpVtbl->get_Name(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_add_BackgroundActivated(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_BackgroundActivated(This,handler,token);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_remove_BackgroundActivated(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_BackgroundActivated(This,token);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_AllTasks(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup* This,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **value) {
    return This->lpVtbl->get_AllTasks(This,value);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistrationGroup IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup
#define IBackgroundTaskRegistrationGroupVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupVtbl
#define IBackgroundTaskRegistrationGroup __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup
#define IBackgroundTaskRegistrationGroup_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_QueryInterface
#define IBackgroundTaskRegistrationGroup_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_AddRef
#define IBackgroundTaskRegistrationGroup_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_Release
#define IBackgroundTaskRegistrationGroup_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetIids
#define IBackgroundTaskRegistrationGroup_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetRuntimeClassName
#define IBackgroundTaskRegistrationGroup_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_GetTrustLevel
#define IBackgroundTaskRegistrationGroup_get_Id __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Id
#define IBackgroundTaskRegistrationGroup_get_Name __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_Name
#define IBackgroundTaskRegistrationGroup_add_BackgroundActivated __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_add_BackgroundActivated
#define IBackgroundTaskRegistrationGroup_remove_BackgroundActivated __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_remove_BackgroundActivated
#define IBackgroundTaskRegistrationGroup_get_AllTasks __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup_get_AllTasks
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistrationGroupFactory interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory, 0x83d92b69, 0x44cf, 0x4631, 0x97,0x40, 0x03,0xc7,0xd8,0x74,0x1b,0xc5);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("83d92b69-44cf-4631-9740-03c7d8741bc5")
                IBackgroundTaskRegistrationGroupFactory : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE Create(
                        HSTRING id,
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup **group) = 0;

                    virtual HRESULT STDMETHODCALLTYPE CreateWithName(
                        HSTRING id,
                        HSTRING name,
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup **group) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory, 0x83d92b69, 0x44cf, 0x4631, 0x97,0x40, 0x03,0xc7,0xd8,0x74,0x1b,0xc5)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactoryVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistrationGroupFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *Create)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory *This,
        HSTRING id,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **group);

    HRESULT (STDMETHODCALLTYPE *CreateWithName)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory *This,
        HSTRING id,
        HSTRING name,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **group);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactoryVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistrationGroupFactory methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Create(This,id,group) (This)->lpVtbl->Create(This,id,group)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_CreateWithName(This,id,name,group) (This)->lpVtbl->CreateWithName(This,id,name,group)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistrationGroupFactory methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Create(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,HSTRING id,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **group) {
    return This->lpVtbl->Create(This,id,group);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_CreateWithName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory* This,HSTRING id,HSTRING name,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **group) {
    return This->lpVtbl->CreateWithName(This,id,name,group);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistrationGroupFactory IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory
#define IBackgroundTaskRegistrationGroupFactoryVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactoryVtbl
#define IBackgroundTaskRegistrationGroupFactory __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory
#define IBackgroundTaskRegistrationGroupFactory_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_QueryInterface
#define IBackgroundTaskRegistrationGroupFactory_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_AddRef
#define IBackgroundTaskRegistrationGroupFactory_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Release
#define IBackgroundTaskRegistrationGroupFactory_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetIids
#define IBackgroundTaskRegistrationGroupFactory_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetRuntimeClassName
#define IBackgroundTaskRegistrationGroupFactory_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_GetTrustLevel
#define IBackgroundTaskRegistrationGroupFactory_Create __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_Create
#define IBackgroundTaskRegistrationGroupFactory_CreateWithName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroupFactory_CreateWithName
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistrationStatics interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics, 0x4c542f69, 0xb000, 0x42ba, 0xa0,0x93, 0x6a,0x56,0x3c,0x65,0xe3,0xf8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("4c542f69-b000-42ba-a093-6a563c65e3f8")
                IBackgroundTaskRegistrationStatics : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_AllTasks(
                        ABI::Windows::Foundation::Collections::IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > **tasks) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics, 0x4c542f69, 0xb000, 0x42ba, 0xa0,0x93, 0x6a,0x56,0x3c,0x65,0xe3,0xf8)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStaticsVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistrationStatics methods ***/
    HRESULT (STDMETHODCALLTYPE *get_AllTasks)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics *This,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **tasks);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStaticsVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistrationStatics methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_get_AllTasks(This,tasks) (This)->lpVtbl->get_AllTasks(This,tasks)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistrationStatics methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_get_AllTasks(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics* This,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **tasks) {
    return This->lpVtbl->get_AllTasks(This,tasks);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistrationStatics IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics
#define IBackgroundTaskRegistrationStaticsVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStaticsVtbl
#define IBackgroundTaskRegistrationStatics __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics
#define IBackgroundTaskRegistrationStatics_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_QueryInterface
#define IBackgroundTaskRegistrationStatics_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_AddRef
#define IBackgroundTaskRegistrationStatics_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_Release
#define IBackgroundTaskRegistrationStatics_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetIids
#define IBackgroundTaskRegistrationStatics_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetRuntimeClassName
#define IBackgroundTaskRegistrationStatics_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_GetTrustLevel
#define IBackgroundTaskRegistrationStatics_get_AllTasks __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics_get_AllTasks
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTaskRegistrationStatics2 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2, 0x174b671e, 0xb20d, 0x4fa9, 0xad,0x9a, 0xe9,0x3a,0xd6,0xc7,0x1e,0x01);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("174b671e-b20d-4fa9-ad9a-e93ad6c71e01")
                IBackgroundTaskRegistrationStatics2 : public IInspectable
                {
                    virtual HRESULT STDMETHODCALLTYPE get_AllTaskGroups(
                        ABI::Windows::Foundation::Collections::IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > **value) = 0;

                    virtual HRESULT STDMETHODCALLTYPE GetTaskGroup(
                        HSTRING groupId,
                        ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup **value) = 0;

                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2, 0x174b671e, 0xb20d, 0x4fa9, 0xad,0x9a, 0xe9,0x3a,0xd6,0xc7,0x1e,0x01)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2Vtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IBackgroundTaskRegistrationStatics2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_AllTaskGroups)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 *This,
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **value);

    HRESULT (STDMETHODCALLTYPE *GetTaskGroup)(
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 *This,
        HSTRING groupId,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value);

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2Vtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2 {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IBackgroundTaskRegistrationStatics2 methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_get_AllTaskGroups(This,value) (This)->lpVtbl->get_AllTaskGroups(This,value)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTaskGroup(This,groupId,value) (This)->lpVtbl->GetTaskGroup(This,groupId,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IBackgroundTaskRegistrationStatics2 methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_get_AllTaskGroups(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **value) {
    return This->lpVtbl->get_AllTaskGroups(This,value);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTaskGroup(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2* This,HSTRING groupId,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value) {
    return This->lpVtbl->GetTaskGroup(This,groupId,value);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTaskRegistrationStatics2 IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2
#define IBackgroundTaskRegistrationStatics2Vtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2Vtbl
#define IBackgroundTaskRegistrationStatics2 __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2
#define IBackgroundTaskRegistrationStatics2_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_QueryInterface
#define IBackgroundTaskRegistrationStatics2_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_AddRef
#define IBackgroundTaskRegistrationStatics2_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_Release
#define IBackgroundTaskRegistrationStatics2_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetIids
#define IBackgroundTaskRegistrationStatics2_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetRuntimeClassName
#define IBackgroundTaskRegistrationStatics2_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTrustLevel
#define IBackgroundTaskRegistrationStatics2_get_AllTaskGroups __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_get_AllTaskGroups
#define IBackgroundTaskRegistrationStatics2_GetTaskGroup __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationStatics2_GetTaskGroup
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*****************************************************************************
 * IBackgroundTrigger interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger, 0x84b3a058, 0x6027, 0x4b87, 0x97,0x90, 0xbd,0xf3,0xf7,0x57,0xdb,0xd7);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Background {
                MIDL_INTERFACE("84b3a058-6027-4b87-9790-bdf3f757dbd7")
                IBackgroundTrigger : public IInspectable
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger, 0x84b3a058, 0x6027, 0x4b87, 0x97,0x90, 0xbd,0xf3,0xf7,0x57,0xdb,0xd7)
#endif
#else
typedef struct __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTriggerVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    END_INTERFACE
} __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTriggerVtbl;

interface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger {
    CONST_VTBL __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTriggerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_QueryInterface(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_AddRef(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_Release(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetIids(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetRuntimeClassName(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetTrustLevel(__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
#endif
#ifdef WIDL_using_Windows_ApplicationModel_Background
#define IID_IBackgroundTrigger IID___x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger
#define IBackgroundTriggerVtbl __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTriggerVtbl
#define IBackgroundTrigger __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger
#define IBackgroundTrigger_QueryInterface __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_QueryInterface
#define IBackgroundTrigger_AddRef __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_AddRef
#define IBackgroundTrigger_Release __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_Release
#define IBackgroundTrigger_GetIids __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetIids
#define IBackgroundTrigger_GetRuntimeClassName __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetRuntimeClassName
#define IBackgroundTrigger_GetTrustLevel __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTrigger_GetTrustLevel
#endif /* WIDL_using_Windows_ApplicationModel_Background */
#endif

#endif

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

/*
 * Class Windows.ApplicationModel.Background.BackgroundTaskCompletedEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','C','o','m','p','l','e','t','e','d','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs[] = L"Windows.ApplicationModel.Background.BackgroundTaskCompletedEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','C','o','m','p','l','e','t','e','d','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskCompletedEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.ApplicationModel.Background.BackgroundTaskDeferral
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskDeferral_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskDeferral_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskDeferral[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','D','e','f','e','r','r','a','l',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskDeferral[] = L"Windows.ApplicationModel.Background.BackgroundTaskDeferral";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskDeferral[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','D','e','f','e','r','r','a','l',0};
#endif
#endif /* RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskDeferral_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.ApplicationModel.Background.BackgroundTaskProgressEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','P','r','o','g','r','e','s','s','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs[] = L"Windows.ApplicationModel.Background.BackgroundTaskProgressEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','P','r','o','g','r','e','s','s','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskProgressEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.ApplicationModel.Background.BackgroundTaskRegistration
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistration_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistration_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistration[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','R','e','g','i','s','t','r','a','t','i','o','n',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistration[] = L"Windows.ApplicationModel.Background.BackgroundTaskRegistration";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistration[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','R','e','g','i','s','t','r','a','t','i','o','n',0};
#endif
#endif /* RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistration_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.ApplicationModel.Background.BackgroundTaskRegistrationGroup
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','R','e','g','i','s','t','r','a','t','i','o','n','G','r','o','u','p',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup[] = L"Windows.ApplicationModel.Background.BackgroundTaskRegistrationGroup";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup[] = {'W','i','n','d','o','w','s','.','A','p','p','l','i','c','a','t','i','o','n','M','o','d','e','l','.','B','a','c','k','g','r','o','u','n','d','.','B','a','c','k','g','r','o','u','n','d','T','a','s','k','R','e','g','i','s','t','r','a','t','i','o','n','G','r','o','u','p',0};
#endif
#endif /* RUNTIMECLASS_Windows_ApplicationModel_Background_BackgroundTaskRegistrationGroup_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000 */

/*****************************************************************************
 * IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > interface
 */
#ifndef ____FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__
#define ____FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs, 0x49a07732, 0xe7b8, 0x5c5b, 0x9d,0xe7, 0x22,0xe3,0x3c,0xb9,0x70,0x04);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("49a07732-e7b8-5c5b-9de7-22e33cb97004")
            IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > : IEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs*, ABI::Windows::ApplicationModel::Activation::IBackgroundActivatedEventArgs* > >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs, 0x49a07732, 0xe7b8, 0x5c5b, 0x9d,0xe7, 0x22,0xe3,0x3c,0xb9,0x70,0x04)
#endif
#else
typedef struct __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl {
    BEGIN_INTERFACE

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

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

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

    /*** IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs *This,
        IInspectable *sender,
        __x_ABI_CWindows_CApplicationModel_CActivation_CIBackgroundActivatedEventArgs *args);

    END_INTERFACE
} __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl;

interface __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs {
    CONST_VTBL __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
#define __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface(__FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef(__FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release(__FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IEventHandler<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
static inline HRESULT __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke(__FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This,IInspectable *sender,__x_ABI_CWindows_CApplicationModel_CActivation_CIBackgroundActivatedEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IEventHandler_BackgroundActivatedEventArgs IID___FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs
#define IEventHandler_BackgroundActivatedEventArgsVtbl __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl
#define IEventHandler_BackgroundActivatedEventArgs __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs
#define IEventHandler_BackgroundActivatedEventArgs_QueryInterface __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface
#define IEventHandler_BackgroundActivatedEventArgs_AddRef __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef
#define IEventHandler_BackgroundActivatedEventArgs_Release __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release
#define IEventHandler_BackgroundActivatedEventArgs_Invoke __FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIEventHandler_1_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs, 0xd4f89768, 0x688f, 0x59ec, 0xbf,0x24, 0xc2,0xaf,0x6a,0x31,0x0f,0xa4);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("d4f89768-688f-59ec-bf24-c2af6a310fa4")
            ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*, ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup* >, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs*, ABI::Windows::ApplicationModel::Activation::IBackgroundActivatedEventArgs* > >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs, 0xd4f89768, 0x688f, 0x59ec, 0xbf,0x24, 0xc2,0xaf,0x6a,0x31,0x0f,0xa4)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl {
    BEGIN_INTERFACE

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

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

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

    /*** ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs *This,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *sender,
        __x_ABI_CWindows_CApplicationModel_CActivation_CIBackgroundActivatedEventArgs *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs {
    CONST_VTBL __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
#define __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface(__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef(__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release(__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*,ABI::Windows::ApplicationModel::Activation::BackgroundActivatedEventArgs* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke(__FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs* This,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup *sender,__x_ABI_CWindows_CApplicationModel_CActivation_CIBackgroundActivatedEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs IID___FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgsVtbl __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgsVtbl
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs_QueryInterface __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_QueryInterface
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs_AddRef __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_AddRef
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs_Release __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Release
#define ITypedEventHandler_BackgroundTaskRegistrationGroup_BackgroundActivatedEventArgs_Invoke __FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Windows__CApplicationModel__CActivation__CBackgroundActivatedEventArgs_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > interface
 */
#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_INTERFACE_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration, 0x2c08602f, 0x40b1, 0x5e97, 0xae,0x21, 0x5c,0x04,0xd7,0xfb,0x82,0x9c);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("2c08602f-40b1-5e97-ae21-5c04d7fb829c")
                IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > : IMapView_impl<GUID, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration*, ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration, 0x2c08602f, 0x40b1, 0x5e97, 0xae,0x21, 0x5c,0x04,0xd7,0xfb,0x82,0x9c)
#endif
#else
typedef struct __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration *This,
        GUID key,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration *This,
        GUID key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *Split)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration *This,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **first,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **second);

    END_INTERFACE
} __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationVtbl;

interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration {
    CONST_VTBL __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Split(This,first,second) (This)->lpVtbl->Split(This,first,second)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_QueryInterface(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_AddRef(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Release(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetIids(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetRuntimeClassName(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetTrustLevel(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistration* > methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Lookup(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,GUID key,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_get_Size(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_HasKey(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,GUID key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Split(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration* This,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **first,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration **second) {
    return This->lpVtbl->Split(This,first,second);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapView_GUID_BackgroundTaskRegistration IID___FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration
#define IMapView_GUID_BackgroundTaskRegistrationVtbl __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationVtbl
#define IMapView_GUID_BackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration
#define IMapView_GUID_BackgroundTaskRegistration_QueryInterface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_QueryInterface
#define IMapView_GUID_BackgroundTaskRegistration_AddRef __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_AddRef
#define IMapView_GUID_BackgroundTaskRegistration_Release __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Release
#define IMapView_GUID_BackgroundTaskRegistration_GetIids __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetIids
#define IMapView_GUID_BackgroundTaskRegistration_GetRuntimeClassName __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetRuntimeClassName
#define IMapView_GUID_BackgroundTaskRegistration_GetTrustLevel __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_GetTrustLevel
#define IMapView_GUID_BackgroundTaskRegistration_Lookup __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Lookup
#define IMapView_GUID_BackgroundTaskRegistration_get_Size __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_get_Size
#define IMapView_GUID_BackgroundTaskRegistration_HasKey __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_HasKey
#define IMapView_GUID_BackgroundTaskRegistration_Split __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_Split
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistration_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > interface
 */
#ifndef ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_INTERFACE_DEFINED__
#define ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration, 0x78c880f6, 0xa7dc, 0x5172, 0x89,0xda, 0x77,0x49,0xfc,0x82,0xaa,0x82);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("78c880f6-a7dc-5172-89da-7749fc82aa82")
                IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > : IMapView_impl<GUID, ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration, 0x78c880f6, 0xa7dc, 0x5172, 0x89,0xda, 0x77,0x49,0xfc,0x82,0xaa,0x82)
#endif
#else
typedef struct __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistrationVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration *This,
        GUID key,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration *This,
        GUID key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *Split)(
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration *This,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **first,
        __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **second);

    END_INTERFACE
} __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistrationVtbl;

interface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration {
    CONST_VTBL __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistrationVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > methods ***/
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Split(This,first,second) (This)->lpVtbl->Split(This,first,second)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_QueryInterface(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_AddRef(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Release(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetIids(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetRuntimeClassName(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetTrustLevel(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapView<GUID,ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistration* > methods ***/
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Lookup(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,GUID key,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistration **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_get_Size(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_HasKey(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,GUID key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static inline HRESULT __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Split(__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration* This,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **first,__FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration **second) {
    return This->lpVtbl->Split(This,first,second);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapView_GUID_IBackgroundTaskRegistration IID___FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration
#define IMapView_GUID_IBackgroundTaskRegistrationVtbl __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistrationVtbl
#define IMapView_GUID_IBackgroundTaskRegistration __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration
#define IMapView_GUID_IBackgroundTaskRegistration_QueryInterface __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_QueryInterface
#define IMapView_GUID_IBackgroundTaskRegistration_AddRef __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_AddRef
#define IMapView_GUID_IBackgroundTaskRegistration_Release __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Release
#define IMapView_GUID_IBackgroundTaskRegistration_GetIids __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetIids
#define IMapView_GUID_IBackgroundTaskRegistration_GetRuntimeClassName __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetRuntimeClassName
#define IMapView_GUID_IBackgroundTaskRegistration_GetTrustLevel __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_GetTrustLevel
#define IMapView_GUID_IBackgroundTaskRegistration_Lookup __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Lookup
#define IMapView_GUID_IBackgroundTaskRegistration_get_Size __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_get_Size
#define IMapView_GUID_IBackgroundTaskRegistration_HasKey __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_HasKey
#define IMapView_GUID_IBackgroundTaskRegistration_Split __FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_Split
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapView_2_GUID_Windows__CApplicationModel__CBackground__CIBackgroundTaskRegistration_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > interface
 */
#ifndef ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_INTERFACE_DEFINED__
#define ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup, 0xf6a9dc12, 0x01f7, 0x54f0, 0xa2,0x57, 0xc4,0x04,0x81,0x5b,0x9c,0x1c);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("f6a9dc12-01f7-54f0-a257-c404815b9c1c")
                IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > : IMapView_impl<HSTRING, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup*, ABI::Windows::ApplicationModel::Background::IBackgroundTaskRegistrationGroup* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup, 0xf6a9dc12, 0x01f7, 0x54f0, 0xa2,0x57, 0xc4,0x04,0x81,0x5b,0x9c,0x1c)
#endif
#else
typedef struct __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroupVtbl {
    BEGIN_INTERFACE

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

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

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

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

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

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

    /*** IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup *This,
        HSTRING key,
        __x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup *This,
        HSTRING key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *Split)(
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup *This,
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **first,
        __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **second);

    END_INTERFACE
} __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroupVtbl;

interface __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup {
    CONST_VTBL __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroupVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > methods ***/
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Split(This,first,second) (This)->lpVtbl->Split(This,first,second)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_QueryInterface(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_AddRef(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Release(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetIids(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetRuntimeClassName(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetTrustLevel(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapView<HSTRING,ABI::Windows::ApplicationModel::Background::BackgroundTaskRegistrationGroup* > methods ***/
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Lookup(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,HSTRING key,__x_ABI_CWindows_CApplicationModel_CBackground_CIBackgroundTaskRegistrationGroup **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_get_Size(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_HasKey(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,HSTRING key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static inline HRESULT __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Split(__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup* This,__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **first,__FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup **second) {
    return This->lpVtbl->Split(This,first,second);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapView_HSTRING_BackgroundTaskRegistrationGroup IID___FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup
#define IMapView_HSTRING_BackgroundTaskRegistrationGroupVtbl __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroupVtbl
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_QueryInterface __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_QueryInterface
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_AddRef __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_AddRef
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_Release __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Release
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_GetIids __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetIids
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_GetRuntimeClassName __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetRuntimeClassName
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_GetTrustLevel __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_GetTrustLevel
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_Lookup __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Lookup
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_get_Size __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_get_Size
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_HasKey __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_HasKey
#define IMapView_HSTRING_BackgroundTaskRegistrationGroup_Split __FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_Split
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapView_2_HSTRING_Windows__CApplicationModel__CBackground__CBackgroundTaskRegistrationGroup_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */

ULONG           __RPC_USER HSTRING_UserSize     (ULONG *, ULONG, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserMarshal  (ULONG *, unsigned char *, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *);
void            __RPC_USER HSTRING_UserFree     (ULONG *, HSTRING *);

/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __windows_applicationmodel_background_h__ */
