
#pragma warning( disable: 4049 )  /* more than 64k source lines */

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

/* verify that the <rpcsal.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#endif

#include <rpc.h>
#include <rpcndr.h>

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif /* __RPCNDR_H_VERSION__ */

#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif /*COM_NO_WINDOWS_H*/
#ifndef __windows2Emedia2Eplayback_h__
#define __windows2Emedia2Eplayback_h__
#ifndef __windows2Emedia2Eplayback_p_h__
#define __windows2Emedia2Eplayback_p_h__


#pragma once

//
// Deprecated attribute support
//

#pragma push_macro("DEPRECATED")
#undef DEPRECATED

#if !defined(DISABLE_WINRT_DEPRECATION)
#if defined(__cplusplus)
#if __cplusplus >= 201402
#define DEPRECATED(x) [[deprecated(x)]]
#define DEPRECATEDENUMERATOR(x) [[deprecated(x)]]
#elif defined(_MSC_VER)
#if _MSC_VER >= 1900
#define DEPRECATED(x) [[deprecated(x)]]
#define DEPRECATEDENUMERATOR(x) [[deprecated(x)]]
#else
#define DEPRECATED(x) __declspec(deprecated(x))
#define DEPRECATEDENUMERATOR(x)
#endif // _MSC_VER >= 1900
#else // Not Standard C++ or MSVC, ignore the construct.
#define DEPRECATED(x)
#define DEPRECATEDENUMERATOR(x)
#endif  // C++ deprecation
#else // C - disable deprecation
#define DEPRECATED(x)
#define DEPRECATEDENUMERATOR(x)
#endif
#else // Deprecation is disabled
#define DEPRECATED(x)
#define DEPRECATEDENUMERATOR(x)
#endif  /* DEPRECATED */

// Disable Deprecation for this header, MIDL verifies that cross-type access is acceptable
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
#else
#pragma warning(push)
#pragma warning(disable: 4996)
#endif

// Ensure that the setting of the /ns_prefix command line switch is consistent for all headers.
// If you get an error from the compiler indicating "warning C4005: 'CHECK_NS_PREFIX_STATE': macro redefinition", this
// indicates that you have included two different headers with different settings for the /ns_prefix MIDL command line switch
#if !defined(DISABLE_NS_PREFIX_CHECKS)
#define CHECK_NS_PREFIX_STATE "always"
#endif // !defined(DISABLE_NS_PREFIX_CHECKS)


#pragma push_macro("MIDL_CONST_ID")
#undef MIDL_CONST_ID
#define MIDL_CONST_ID const __declspec(selectany)


//  API Contract Inclusion Definitions
#if !defined(SPECIFIC_API_CONTRACT_DEFINITIONS)
#if !defined(WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION)
#define WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION 0x40000
#endif // defined(WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION)

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

#if !defined(WINDOWS_MEDIA_MEDIACONTROLCONTRACT_VERSION)
#define WINDOWS_MEDIA_MEDIACONTROLCONTRACT_VERSION 0x10000
#endif // defined(WINDOWS_MEDIA_MEDIACONTROLCONTRACT_VERSION)

#if !defined(WINDOWS_MEDIA_PROTECTION_PROTECTIONRENEWALCONTRACT_VERSION)
#define WINDOWS_MEDIA_PROTECTION_PROTECTIONRENEWALCONTRACT_VERSION 0x10000
#endif // defined(WINDOWS_MEDIA_PROTECTION_PROTECTIONRENEWALCONTRACT_VERSION)

#endif // defined(SPECIFIC_API_CONTRACT_DEFINITIONS)


// Header files for imported files
#include "inspectable.h"
#include "AsyncInfo.h"
#include "EventToken.h"
#include "windowscontracts.h"
#include "Windows.Foundation.h"
#include "Windows.Devices.Enumeration.h"
#include "Windows.Foundation.Numerics.h"
#include "Windows.Graphics.DirectX.Direct3D11.h"
#include "Windows.Media.h"
#include "Windows.Media.Audio.h"
#include "Windows.Media.Casting.h"
#include "Windows.Media.Core.h"
#include "Windows.Media.MediaProperties.h"
#include "Windows.Media.Protection.h"
#include "Windows.Storage.h"
#include "Windows.Storage.Streams.h"
#include "Windows.UI.Composition.h"
// Importing Collections header
#include <windows.foundation.collections.h>

#if defined(__cplusplus) && !defined(CINTERFACE)
/* Forward Declarations */
#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IBackgroundMediaPlayerStatics;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics ABI::Windows::Media::Playback::IBackgroundMediaPlayerStatics

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface ICurrentMediaPlaybackItemChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs ABI::Windows::Media::Playback::ICurrentMediaPlaybackItemChangedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface ICurrentMediaPlaybackItemChangedEventArgs2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2 ABI::Windows::Media::Playback::ICurrentMediaPlaybackItemChangedEventArgs2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreak;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak ABI::Windows::Media::Playback::IMediaBreak

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakEndedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs ABI::Windows::Media::Playback::IMediaBreakEndedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakFactory;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory ABI::Windows::Media::Playback::IMediaBreakFactory

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakManager;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager ABI::Windows::Media::Playback::IMediaBreakManager

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakSchedule;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule ABI::Windows::Media::Playback::IMediaBreakSchedule

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakSeekedOverEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs ABI::Windows::Media::Playback::IMediaBreakSeekedOverEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakSkippedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs ABI::Windows::Media::Playback::IMediaBreakSkippedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaBreakStartedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs ABI::Windows::Media::Playback::IMediaBreakStartedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaEnginePlaybackSource;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource ABI::Windows::Media::Playback::IMediaEnginePlaybackSource

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaItemDisplayProperties;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties ABI::Windows::Media::Playback::IMediaItemDisplayProperties

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManager;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager ABI::Windows::Media::Playback::IMediaPlaybackCommandManager

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerCommandBehavior;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerFastForwardReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerFastForwardReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerNextReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerNextReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerPauseReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPauseReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerPlayReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPlayReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerPositionReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPositionReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerPreviousReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPreviousReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerRateReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerRateReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerRewindReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerRewindReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackCommandManagerShuffleReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerShuffleReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItem;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem ABI::Windows::Media::Playback::IMediaPlaybackItem

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItem2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2 ABI::Windows::Media::Playback::IMediaPlaybackItem2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItem3;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3 ABI::Windows::Media::Playback::IMediaPlaybackItem3

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemError;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError ABI::Windows::Media::Playback::IMediaPlaybackItemError

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemFactory;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory ABI::Windows::Media::Playback::IMediaPlaybackItemFactory

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemFactory2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2 ABI::Windows::Media::Playback::IMediaPlaybackItemFactory2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemFailedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackItemFailedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemOpenedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackItemOpenedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackItemStatics;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics ABI::Windows::Media::Playback::IMediaPlaybackItemStatics

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList ABI::Windows::Media::Playback::IMediaPlaybackList

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackList2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2 ABI::Windows::Media::Playback::IMediaPlaybackList2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackList3;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3 ABI::Windows::Media::Playback::IMediaPlaybackList3

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSession;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession ABI::Windows::Media::Playback::IMediaPlaybackSession

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSession2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2 ABI::Windows::Media::Playback::IMediaPlaybackSession2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSession3;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3 ABI::Windows::Media::Playback::IMediaPlaybackSession3

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSessionBufferingStartedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs ABI::Windows::Media::Playback::IMediaPlaybackSessionBufferingStartedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSessionOutputDegradationPolicyState;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState ABI::Windows::Media::Playback::IMediaPlaybackSessionOutputDegradationPolicyState

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSource;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource ABI::Windows::Media::Playback::IMediaPlaybackSource

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackSphericalVideoProjection;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection ABI::Windows::Media::Playback::IMediaPlaybackSphericalVideoProjection

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlaybackTimedMetadataTrackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList ABI::Windows::Media::Playback::IMediaPlaybackTimedMetadataTrackList

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer ABI::Windows::Media::Playback::IMediaPlayer

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2 ABI::Windows::Media::Playback::IMediaPlayer2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer3;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3 ABI::Windows::Media::Playback::IMediaPlayer3

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer4;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4 ABI::Windows::Media::Playback::IMediaPlayer4

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer5;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5 ABI::Windows::Media::Playback::IMediaPlayer5

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer6;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6 ABI::Windows::Media::Playback::IMediaPlayer6

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayer7;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7 ABI::Windows::Media::Playback::IMediaPlayer7

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerDataReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs ABI::Windows::Media::Playback::IMediaPlayerDataReceivedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerEffects;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects ABI::Windows::Media::Playback::IMediaPlayerEffects

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerEffects2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2 ABI::Windows::Media::Playback::IMediaPlayerEffects2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerFailedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs ABI::Windows::Media::Playback::IMediaPlayerFailedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerRateChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs ABI::Windows::Media::Playback::IMediaPlayerRateChangedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerSource;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource ABI::Windows::Media::Playback::IMediaPlayerSource

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerSource2;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2 ABI::Windows::Media::Playback::IMediaPlayerSource2

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IMediaPlayerSurface;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface ABI::Windows::Media::Playback::IMediaPlayerSurface

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IPlaybackMediaMarker;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker ABI::Windows::Media::Playback::IPlaybackMediaMarker

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IPlaybackMediaMarkerFactory;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory ABI::Windows::Media::Playback::IPlaybackMediaMarkerFactory

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IPlaybackMediaMarkerReachedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs ABI::Windows::Media::Playback::IPlaybackMediaMarkerReachedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface IPlaybackMediaMarkerSequence;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence ABI::Windows::Media::Playback::IPlaybackMediaMarkerSequence

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                interface ITimedMetadataPresentationModeChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs ABI::Windows::Media::Playback::ITimedMetadataPresentationModeChangedEventArgs

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__

// Parameterized interface forward declarations (C++)

// Collection interface definitions
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                class AudioTrack;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaTrack;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCore_CIMediaTrack ABI::Windows::Media::Core::IMediaTrack

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterator_1_Windows__CMedia__CCore__CAudioTrack_USE
#define DEF___FIIterator_1_Windows__CMedia__CCore__CAudioTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("138064ef-8693-5303-8a75-eba494d06342"))
IIterator<ABI::Windows::Media::Core::AudioTrack*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::AudioTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Core.AudioTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Core::AudioTrack*> __FIIterator_1_Windows__CMedia__CCore__CAudioTrack_t;
#define __FIIterator_1_Windows__CMedia__CCore__CAudioTrack ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CCore__CAudioTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CCore__CAudioTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterable_1_Windows__CMedia__CCore__CAudioTrack_USE
#define DEF___FIIterable_1_Windows__CMedia__CCore__CAudioTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("b3be50a8-9856-5656-ab6d-cd58f9de0a4f"))
IIterable<ABI::Windows::Media::Core::AudioTrack*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::AudioTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.AudioTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Core::AudioTrack*> __FIIterable_1_Windows__CMedia__CCore__CAudioTrack_t;
#define __FIIterable_1_Windows__CMedia__CCore__CAudioTrack ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CCore__CAudioTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CCore__CAudioTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                class TimedMetadataTrack;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface ITimedMetadataTrack;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack ABI::Windows::Media::Core::ITimedMetadataTrack

#endif // ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#define DEF___FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("859354e5-077b-5d53-b297-1a07b97f09c3"))
IIterator<ABI::Windows::Media::Core::TimedMetadataTrack*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::TimedMetadataTrack*, ABI::Windows::Media::Core::ITimedMetadataTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Core.TimedMetadataTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Core::TimedMetadataTrack*> __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_t;
#define __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#define DEF___FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("150a4454-03bb-5dd1-8153-6a600e851f71"))
IIterable<ABI::Windows::Media::Core::TimedMetadataTrack*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::TimedMetadataTrack*, ABI::Windows::Media::Core::ITimedMetadataTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.TimedMetadataTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Core::TimedMetadataTrack*> __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_t;
#define __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                class VideoTrack;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterator_1_Windows__CMedia__CCore__CVideoTrack_USE
#define DEF___FIIterator_1_Windows__CMedia__CCore__CVideoTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("a7c8d22c-b59d-5d7a-8d70-67f898a0b877"))
IIterator<ABI::Windows::Media::Core::VideoTrack*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::VideoTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Core.VideoTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Core::VideoTrack*> __FIIterator_1_Windows__CMedia__CCore__CVideoTrack_t;
#define __FIIterator_1_Windows__CMedia__CCore__CVideoTrack ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CCore__CVideoTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CCore__CVideoTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterable_1_Windows__CMedia__CCore__CVideoTrack_USE
#define DEF___FIIterable_1_Windows__CMedia__CCore__CVideoTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("84413442-a2e3-5e0f-936d-bc40b0fb2dcd"))
IIterable<ABI::Windows::Media::Core::VideoTrack*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::VideoTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.VideoTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Core::VideoTrack*> __FIIterable_1_Windows__CMedia__CCore__CVideoTrack_t;
#define __FIIterable_1_Windows__CMedia__CCore__CVideoTrack ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CCore__CVideoTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CCore__CVideoTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            typedef struct MediaTimeRange MediaTimeRange;
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#ifndef DEF___FIIterator_1_Windows__CMedia__CMediaTimeRange_USE
#define DEF___FIIterator_1_Windows__CMedia__CMediaTimeRange_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("29b8d190-5e46-5873-afc0-8f2f40fbe8fd"))
IIterator<struct ABI::Windows::Media::MediaTimeRange> : IIterator_impl<struct ABI::Windows::Media::MediaTimeRange>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.MediaTimeRange>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<struct ABI::Windows::Media::MediaTimeRange> __FIIterator_1_Windows__CMedia__CMediaTimeRange_t;
#define __FIIterator_1_Windows__CMedia__CMediaTimeRange ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CMediaTimeRange_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CMediaTimeRange_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#ifndef DEF___FIIterable_1_Windows__CMedia__CMediaTimeRange_USE
#define DEF___FIIterable_1_Windows__CMedia__CMediaTimeRange_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("268204e2-9d52-5e7b-a54b-869c63defc8e"))
IIterable<struct ABI::Windows::Media::MediaTimeRange> : IIterable_impl<struct ABI::Windows::Media::MediaTimeRange>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.MediaTimeRange>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<struct ABI::Windows::Media::MediaTimeRange> __FIIterable_1_Windows__CMedia__CMediaTimeRange_t;
#define __FIIterable_1_Windows__CMedia__CMediaTimeRange ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CMediaTimeRange_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CMediaTimeRange_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreak;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#define DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("9efd8746-f93c-524f-9f95-4b598acf8d25"))
IIterator<ABI::Windows::Media::Playback::MediaBreak*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreak*, ABI::Windows::Media::Playback::IMediaBreak*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Playback.MediaBreak>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Playback::MediaBreak*> __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_t;
#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#define DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("04f000ec-c727-5dc0-9f7c-245c75c92f2f"))
IIterable<ABI::Windows::Media::Playback::MediaBreak*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreak*, ABI::Windows::Media::Playback::IMediaBreak*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.MediaBreak>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Playback::MediaBreak*> __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_t;
#define __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackItem;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("ab074059-8c08-53e7-9654-02d2598fff55"))
IIterator<ABI::Windows::Media::Playback::MediaPlaybackItem*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("8b8ab4a4-0253-56e9-a232-94e335aefa8f"))
IIterable<ABI::Windows::Media::Playback::MediaPlaybackItem*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class PlaybackMediaMarker;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE
#define DEF___FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("28607d6b-daa4-5eef-9f81-cc08a8297182"))
IIterator<ABI::Windows::Media::Playback::PlaybackMediaMarker*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::PlaybackMediaMarker*, ABI::Windows::Media::Playback::IPlaybackMediaMarker*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterator`1<Windows.Media.Playback.PlaybackMediaMarker>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterator<ABI::Windows::Media::Playback::PlaybackMediaMarker*> __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_t;
#define __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE
#define DEF___FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("deeccfe9-6c01-576f-95f2-93515ae40ebf"))
IIterable<ABI::Windows::Media::Playback::PlaybackMediaMarker*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::PlaybackMediaMarker*, ABI::Windows::Media::Playback::IPlaybackMediaMarker*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.PlaybackMediaMarker>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IIterable<ABI::Windows::Media::Playback::PlaybackMediaMarker*> __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_t;
#define __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("b6a4c9fe-c73d-5eba-b5ab-6f8deaca30b9"))
IVectorView<ABI::Windows::Media::Playback::MediaPlaybackItem*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("e1504f46-c4a6-5a29-8fc9-a934d12d7242"))
IVector<ABI::Windows::Media::Playback::MediaPlaybackItem*> : IVector_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVector`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVector<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("891bddde-6bf3-5d1f-80ab-5a342a16a0bb"))
VectorChangedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackItem*> : VectorChangedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.VectorChangedEventHandler`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef VectorChangedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#define DEF___FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("fabf4843-39eb-5c3d-a12b-fca189b46e8e"))
IObservableVector<ABI::Windows::Media::Playback::MediaPlaybackItem*> : IObservableVector_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IObservableVector`1<Windows.Media.Playback.MediaPlaybackItem>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IObservableVector<ABI::Windows::Media::Playback::MediaPlaybackItem*> __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t;
#define __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem ABI::Windows::Foundation::Collections::__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_USE
#define DEF___FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("e71ffa4a-14a7-5068-891c-6e717af8bf8d"))
IVectorView<ABI::Windows::Media::Core::AudioTrack*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::AudioTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.AudioTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<ABI::Windows::Media::Core::AudioTrack*> __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_t;
#define __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#define DEF___FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("0313ae7a-2803-5d45-b5a1-a0fc5cd55e7c"))
IVectorView<ABI::Windows::Media::Core::TimedMetadataTrack*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::TimedMetadataTrack*, ABI::Windows::Media::Core::ITimedMetadataTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.TimedMetadataTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<ABI::Windows::Media::Core::TimedMetadataTrack*> __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_t;
#define __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_USE
#define DEF___FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("200c6224-0b43-54fb-995f-fd8688bf24de"))
IVectorView<ABI::Windows::Media::Core::VideoTrack*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::VideoTrack*, ABI::Windows::Media::Core::IMediaTrack*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.VideoTrack>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<ABI::Windows::Media::Core::VideoTrack*> __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_t;
#define __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CMediaTimeRange_USE
#define DEF___FIVectorView_1_Windows__CMedia__CMediaTimeRange_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("2628205b-a57a-5179-92e6-9b6e13cb8d0d"))
IVectorView<struct ABI::Windows::Media::MediaTimeRange> : IVectorView_impl<struct ABI::Windows::Media::MediaTimeRange>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.MediaTimeRange>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<struct ABI::Windows::Media::MediaTimeRange> __FIVectorView_1_Windows__CMedia__CMediaTimeRange_t;
#define __FIVectorView_1_Windows__CMedia__CMediaTimeRange ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CMediaTimeRange_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CMediaTimeRange_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#define DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("c296f3f9-1268-59a2-b7c3-2f588ed4a017"))
IVectorView<ABI::Windows::Media::Playback::MediaBreak*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreak*, ABI::Windows::Media::Playback::IMediaBreak*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.Collections.IVectorView`1<Windows.Media.Playback.MediaBreak>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IVectorView<ABI::Windows::Media::Playback::MediaBreak*> __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_t;
#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_t
/* Collections */ } /* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlayerDataReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_USE
#define DEF___FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("078fc818-19f5-5b8a-ac82-25193bea56ee"))
IEventHandler<ABI::Windows::Media::Playback::MediaPlayerDataReceivedEventArgs*> : IEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayerDataReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlayerDataReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.EventHandler`1<Windows.Media.Playback.MediaPlayerDataReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IEventHandler<ABI::Windows::Media::Playback::MediaPlayerDataReceivedEventArgs*> __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_t;
#define __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs ABI::Windows::Foundation::__FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000


#ifndef DEF___FIReference_1_UINT32_USE
#define DEF___FIReference_1_UINT32_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("513ef3af-e784-5325-a91e-97c2b8111cf3"))
IReference<UINT32> : IReference_impl<UINT32>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.IReference`1<UInt32>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IReference<UINT32> __FIReference_1_UINT32_t;
#define __FIReference_1_UINT32 ABI::Windows::Foundation::__FIReference_1_UINT32_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIReference_1_UINT32_USE */


namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct TimeSpan TimeSpan;
        } /* Foundation */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000

#ifndef DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#define DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("604d0c4c-91de-5c2a-935f-362f13eaf800"))
IReference<struct ABI::Windows::Foundation::TimeSpan> : IReference_impl<struct ABI::Windows::Foundation::TimeSpan>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.IReference`1<Windows.Foundation.TimeSpan>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef IReference<struct ABI::Windows::Foundation::TimeSpan> __FIReference_1_Windows__CFoundation__CTimeSpan_t;
#define __FIReference_1_Windows__CFoundation__CTimeSpan ABI::Windows::Foundation::__FIReference_1_Windows__CFoundation__CTimeSpan_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE */

#endif // WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakManager;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakEndedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("04afafa9-d83a-5ccb-8cab-82c9d92a19ab"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakEndedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::IMediaBreakManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakEndedEventArgs*, ABI::Windows::Media::Playback::IMediaBreakEndedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaBreakManager, Windows.Media.Playback.MediaBreakEndedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakEndedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakSeekedOverEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("a6954c30-99dc-5f84-b482-7d0692c0277b"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakSeekedOverEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::IMediaBreakManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakSeekedOverEventArgs*, ABI::Windows::Media::Playback::IMediaBreakSeekedOverEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaBreakManager, Windows.Media.Playback.MediaBreakSeekedOverEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakSeekedOverEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakSkippedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("c530fa5d-1a56-582a-a254-1b1ae17b8d2d"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakSkippedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::IMediaBreakManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakSkippedEventArgs*, ABI::Windows::Media::Playback::IMediaBreakSkippedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaBreakManager, Windows.Media.Playback.MediaBreakSkippedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakSkippedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakStartedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("4bf2cca1-cd9d-5d88-9e47-1881201bb72d"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakStartedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::IMediaBreakManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakStartedEventArgs*, ABI::Windows::Media::Playback::IMediaBreakStartedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaBreakManager, Windows.Media.Playback.MediaBreakStartedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakManager*, ABI::Windows::Media::Playback::MediaBreakStartedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaBreakSchedule;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3c57acbf-ca07-586a-8adb-8047dc9165a6"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakSchedule*, IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaBreakSchedule*, ABI::Windows::Media::Playback::IMediaBreakSchedule*>, IInspectable*>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaBreakSchedule, Object>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaBreakSchedule*, IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManager;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("824845b8-c5df-560b-a722-c15b25d4463a"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerFastForwardReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("d7cd6ce3-516f-5b34-beaf-3ee90b622872"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerFastForwardReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerFastForwardReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerFastForwardReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerFastForwardReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerNextReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("ce41af40-93a6-52bf-9cad-4d5fffd10ee0"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerNextReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerNextReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerNextReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerNextReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerPauseReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("79eb2ad3-0781-5f64-b0cd-31e1145d109f"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPauseReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPauseReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPauseReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPauseReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerPlayReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("76d59f7c-edf3-5dde-9529-6f806bdb1fcb"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPlayReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPlayReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPlayReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPlayReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerPositionReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("d863b1c4-7442-53c4-94d2-20d8973df585"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPositionReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPositionReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPositionReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPositionReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerPreviousReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("25726db4-8913-5967-90eb-10f09f30dd33"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPreviousReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPreviousReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerPreviousReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerPreviousReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerRateReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3f8a8ea1-ff9a-5613-9846-33799f6b8c8a"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRateReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRateReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerRateReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRateReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerRewindReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3c37e026-8d0b-5d73-a650-9f18abbc353d"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRewindReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRewindReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerRewindReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerRewindReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerShuffleReceivedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("6c972f91-f626-5799-ba86-5e941f0202c8"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerShuffleReceivedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManager*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerShuffleReceivedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerShuffleReceivedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManager, Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManager*, ABI::Windows::Media::Playback::MediaPlaybackCommandManagerShuffleReceivedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackCommandManagerCommandBehavior;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("2675973a-eb2d-56a1-82a0-340b0ff041e6"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerCommandBehavior*, IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerCommandBehavior*, ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior*>, IInspectable*>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior, Object>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackCommandManagerCommandBehavior*, IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                interface IVectorChangedEventArgs;
            } /* Collections */
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs ABI::Windows::Foundation::Collections::IVectorChangedEventArgs

#endif // ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("2dd51918-4525-5be5-a6c1-409bc72863a6"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Foundation::Collections::IVectorChangedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Media::Playback::IMediaPlaybackItem*>, ABI::Windows::Foundation::Collections::IVectorChangedEventArgs*>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackItem, Windows.Foundation.Collections.IVectorChangedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackItem*, ABI::Windows::Foundation::Collections::IVectorChangedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_USE */

#endif // WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class CurrentMediaPlaybackItemChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("404c5f9d-250d-5f8c-9627-6b4105c32d09"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::CurrentMediaPlaybackItemChangedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::IMediaPlaybackList*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::CurrentMediaPlaybackItemChangedEventArgs*, ABI::Windows::Media::Playback::ICurrentMediaPlaybackItemChangedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackList, Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::CurrentMediaPlaybackItemChangedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackItemFailedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("23319e7d-34b1-57b7-97e5-844948ba4719"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::MediaPlaybackItemFailedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::IMediaPlaybackList*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItemFailedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackItemFailedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackList, Windows.Media.Playback.MediaPlaybackItemFailedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::MediaPlaybackItemFailedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackItemOpenedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("6732bbef-3311-5f83-9c9d-82a5cf3cd82a"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::MediaPlaybackItemOpenedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::IMediaPlaybackList*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackItemOpenedEventArgs*, ABI::Windows::Media::Playback::IMediaPlaybackItemOpenedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackList, Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackList*, ABI::Windows::Media::Playback::MediaPlaybackItemOpenedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackSession;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("7c70f38d-2aa1-5522-a6d6-34b52b988ae7"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackSession*, IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackSession*, ABI::Windows::Media::Playback::IMediaPlaybackSession*>, IInspectable*>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackSession, Object>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackSession*, IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackTimedMetadataTrackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class TimedMetadataPresentationModeChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("40213c85-bf23-5f78-b9c4-e03f3be2b41c"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackTimedMetadataTrackList*, ABI::Windows::Media::Playback::TimedMetadataPresentationModeChangedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlaybackTimedMetadataTrackList*, __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::TimedMetadataPresentationModeChangedEventArgs*, ABI::Windows::Media::Playback::ITimedMetadataPresentationModeChangedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList, Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlaybackTimedMetadataTrackList*, ABI::Windows::Media::Playback::TimedMetadataPresentationModeChangedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlayer;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("f1a6a51e-d078-5c40-ba3f-348870ba5c87"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::IMediaPlayer*>, IInspectable*>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlayer, Object>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_USE */

#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlayerFailedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("362c45a7-3a0a-5e27-99ce-cff6d1b770e1"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::MediaPlayerFailedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::IMediaPlayer*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayerFailedEventArgs*, ABI::Windows::Media::Playback::IMediaPlayerFailedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlayer, Windows.Media.Playback.MediaPlayerFailedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::MediaPlayerFailedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlayerRateChangedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("ba51d31a-5688-5d4d-af42-122070b1eefa"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::MediaPlayerRateChangedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::IMediaPlayer*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayerRateChangedEventArgs*, ABI::Windows::Media::Playback::IMediaPlayerRateChangedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlayer, Windows.Media.Playback.MediaPlayerRateChangedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::MediaPlayerRateChangedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class PlaybackMediaMarkerReachedEventArgs;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_USE
#if !defined(RO_NO_TEMPLATE_NAME)
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("67a4f43c-c254-57f0-a39d-a475a342d21d"))
ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::PlaybackMediaMarkerReachedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::IMediaPlayer*>, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Playback::PlaybackMediaMarkerReachedEventArgs*, ABI::Windows::Media::Playback::IPlaybackMediaMarkerReachedEventArgs*>>
{
    static const wchar_t* z_get_rc_name_impl()
    {
        return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Playback.MediaPlayer, Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs>";
    }
};
// Define a typedef for the parameterized interface specialization's mangled name.
// This allows code which uses the mangled name for the parameterized interface to access the
// correct parameterized interface specialization.
typedef ITypedEventHandler<ABI::Windows::Media::Playback::MediaPlayer*, ABI::Windows::Media::Playback::PlaybackMediaMarkerReachedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_t;
#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_t
/* Foundation */ } /* Windows */ } /* ABI */ }

#endif // !defined(RO_NO_TEMPLATE_NAME)
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_USE */

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

namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace Enumeration {
                class DeviceInformation;
            } /* Enumeration */
        } /* Devices */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace Enumeration {
                interface IDeviceInformation;
            } /* Enumeration */
        } /* Devices */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation ABI::Windows::Devices::Enumeration::IDeviceInformation

#endif // ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                interface IPropertySet;
            } /* Collections */
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet ABI::Windows::Foundation::Collections::IPropertySet

#endif // ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                class ValueSet;
            } /* Collections */
        } /* Foundation */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Foundation {
            class Deferral;
        } /* Foundation */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferral;
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CIDeferral ABI::Windows::Foundation::IDeferral

#endif // ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IClosable;
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CIClosable ABI::Windows::Foundation::IClosable

#endif // ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IPropertyValue;
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CIPropertyValue ABI::Windows::Foundation::IPropertyValue

#endif // ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Numerics {
                typedef struct Quaternion Quaternion;
            } /* Numerics */
        } /* Foundation */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct Rect Rect;
        } /* Foundation */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct Size Size;
        } /* Foundation */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Foundation {
            class Uri;
        } /* Foundation */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClass;
        } /* Foundation */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass ABI::Windows::Foundation::IUriRuntimeClass

#endif // ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Graphics {
            namespace DirectX {
                namespace Direct3D11 {
                    interface IDirect3DSurface;
                } /* Direct3D11 */
            } /* DirectX */
        } /* Graphics */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface

#endif // ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Audio {
                class AudioStateMonitor;
            } /* Audio */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Audio {
                interface IAudioStateMonitor;
            } /* Audio */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor ABI::Windows::Media::Audio::IAudioStateMonitor

#endif // ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Casting {
                class CastingSource;
            } /* Casting */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Casting {
                interface ICastingSource;
            } /* Casting */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCasting_CICastingSource ABI::Windows::Media::Casting::ICastingSource

#endif // ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaSource;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCore_CIMediaSource ABI::Windows::Media::Core::IMediaSource

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface ISingleSelectMediaTrackList;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList ABI::Windows::Media::Core::ISingleSelectMediaTrackList

#endif // ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                class MediaSource;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaSource2;
            } /* Core */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CCore_CIMediaSource2 ABI::Windows::Media::Core::IMediaSource2

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            typedef enum MediaPlaybackAutoRepeatMode : int MediaPlaybackAutoRepeatMode;
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            typedef enum MediaPlaybackType : int MediaPlaybackType;
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace MediaProperties {
                typedef enum MediaRotation : int MediaRotation;
            } /* MediaProperties */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace MediaProperties {
                typedef enum SphericalVideoFrameFormat : int SphericalVideoFrameFormat;
            } /* MediaProperties */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace MediaProperties {
                typedef enum StereoscopicVideoPackingMode : int StereoscopicVideoPackingMode;
            } /* MediaProperties */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            class MediaTimelineController;
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            interface IMediaTimelineController;
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CIMediaTimelineController ABI::Windows::Media::IMediaTimelineController

#endif // ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            class MusicDisplayProperties;
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            interface IMusicDisplayProperties;
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CIMusicDisplayProperties ABI::Windows::Media::IMusicDisplayProperties

#endif // ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Protection {
                class MediaProtectionManager;
            } /* Protection */
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Protection {
                interface IMediaProtectionManager;
            } /* Protection */
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager ABI::Windows::Media::Protection::IMediaProtectionManager

#endif // ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            class SystemMediaTransportControls;
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            interface ISystemMediaTransportControls;
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CISystemMediaTransportControls ABI::Windows::Media::ISystemMediaTransportControls

#endif // ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            class VideoDisplayProperties;
        } /* Media */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Media {
            interface IVideoDisplayProperties;
        } /* Media */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CMedia_CIVideoDisplayProperties ABI::Windows::Media::IVideoDisplayProperties

#endif // ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Storage {
            interface IStorageFile;
        } /* Storage */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CStorage_CIStorageFile ABI::Windows::Storage::IStorageFile

#endif // ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Storage {
            namespace Streams {
                interface IRandomAccessStream;
            } /* Streams */
        } /* Storage */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream ABI::Windows::Storage::Streams::IRandomAccessStream

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Storage {
            namespace Streams {
                class RandomAccessStreamReference;
            } /* Streams */
        } /* Storage */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace Storage {
            namespace Streams {
                interface IRandomAccessStreamReference;
            } /* Streams */
        } /* Storage */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference ABI::Windows::Storage::Streams::IRandomAccessStreamReference

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Composition {
                class Compositor;
            } /* Composition */
        } /* UI */
    } /* Windows */
} /* ABI */

#ifndef ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Composition {
                interface ICompositor;
            } /* Composition */
        } /* UI */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CUI_CComposition_CICompositor ABI::Windows::UI::Composition::ICompositor

#endif // ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__
namespace ABI {
    namespace Windows {
        namespace UI {
            namespace Composition {
                interface ICompositionSurface;
            } /* Composition */
        } /* UI */
    } /* Windows */
} /* ABI */
#define __x_ABI_CWindows_CUI_CComposition_CICompositionSurface ABI::Windows::UI::Composition::ICompositionSurface

#endif // ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum AutoLoadedDisplayPropertyKind : int AutoLoadedDisplayPropertyKind;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaBreakInsertionMethod : int MediaBreakInsertionMethod;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaCommandEnablingRule : int MediaCommandEnablingRule;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlaybackItemChangedReason : int MediaPlaybackItemChangedReason;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlaybackItemErrorCode : int MediaPlaybackItemErrorCode;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlaybackSessionVideoConstrictionReason : int MediaPlaybackSessionVideoConstrictionReason;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlaybackState : int MediaPlaybackState;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlayerAudioCategory : int MediaPlayerAudioCategory;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlayerAudioDeviceType : int MediaPlayerAudioDeviceType;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlayerError : int MediaPlayerError;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum MediaPlayerState : int MediaPlayerState;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum SphericalVideoProjectionMode : int SphericalVideoProjectionMode;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum StereoscopicVideoRenderMode : int StereoscopicVideoRenderMode;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                typedef enum TimedMetadataTrackPresentationMode : int TimedMetadataTrackPresentationMode;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaItemDisplayProperties;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackAudioTrackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackItemError;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackSessionOutputDegradationPolicyState;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackSphericalVideoProjection;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlaybackVideoTrackList;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class MediaPlayerSurface;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                class PlaybackMediaMarkerSequence;
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

/*
 *
 * Struct Windows.Media.Playback.AutoLoadedDisplayPropertyKind
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum AutoLoadedDisplayPropertyKind : int
                {
                    AutoLoadedDisplayPropertyKind_None = 0,
                    AutoLoadedDisplayPropertyKind_MusicOrVideo = 1,
                    AutoLoadedDisplayPropertyKind_Music = 2,
                    AutoLoadedDisplayPropertyKind_Video = 3,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.FailedMediaStreamKind
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum FailedMediaStreamKind : int
                {
                    FailedMediaStreamKind_Unknown = 0,
                    FailedMediaStreamKind_Audio = 1,
                    FailedMediaStreamKind_Video = 2,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaBreakInsertionMethod
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaBreakInsertionMethod : int
                {
                    MediaBreakInsertionMethod_Interrupt = 0,
                    MediaBreakInsertionMethod_Replace = 1,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaCommandEnablingRule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaCommandEnablingRule : int
                {
                    MediaCommandEnablingRule_Auto = 0,
                    MediaCommandEnablingRule_Always = 1,
                    MediaCommandEnablingRule_Never = 2,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackItemChangedReason
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlaybackItemChangedReason : int
                {
                    MediaPlaybackItemChangedReason_InitialItem = 0,
                    MediaPlaybackItemChangedReason_EndOfStream = 1,
                    MediaPlaybackItemChangedReason_Error = 2,
                    MediaPlaybackItemChangedReason_AppRequested = 3,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackItemErrorCode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlaybackItemErrorCode : int
                {
                    MediaPlaybackItemErrorCode_None = 0,
                    MediaPlaybackItemErrorCode_Aborted = 1,
                    MediaPlaybackItemErrorCode_NetworkError = 2,
                    MediaPlaybackItemErrorCode_DecodeError = 3,
                    MediaPlaybackItemErrorCode_SourceNotSupportedError = 4,
                    MediaPlaybackItemErrorCode_EncryptionError = 5,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackSessionVideoConstrictionReason
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlaybackSessionVideoConstrictionReason : int
                {
                    MediaPlaybackSessionVideoConstrictionReason_None = 0,
                    MediaPlaybackSessionVideoConstrictionReason_VirtualMachine = 1,
                    MediaPlaybackSessionVideoConstrictionReason_UnsupportedDisplayAdapter = 2,
                    MediaPlaybackSessionVideoConstrictionReason_UnsignedDriver = 3,
                    MediaPlaybackSessionVideoConstrictionReason_FrameServerEnabled = 4,
                    MediaPlaybackSessionVideoConstrictionReason_OutputProtectionFailed = 5,
                    MediaPlaybackSessionVideoConstrictionReason_Unknown = 6,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlaybackState : int
                {
                    MediaPlaybackState_None = 0,
                    MediaPlaybackState_Opening = 1,
                    MediaPlaybackState_Buffering = 2,
                    MediaPlaybackState_Playing = 3,
                    MediaPlaybackState_Paused = 4,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerAudioCategory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlayerAudioCategory : int
                {
                    MediaPlayerAudioCategory_Other = 0,
                    MediaPlayerAudioCategory_Communications = 3,
                    MediaPlayerAudioCategory_Alerts = 4,
                    MediaPlayerAudioCategory_SoundEffects = 5,
                    MediaPlayerAudioCategory_GameEffects = 6,
                    MediaPlayerAudioCategory_GameMedia = 7,
                    MediaPlayerAudioCategory_GameChat = 8,
                    MediaPlayerAudioCategory_Speech = 9,
                    MediaPlayerAudioCategory_Movie = 10,
                    MediaPlayerAudioCategory_Media = 11,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerAudioDeviceType
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlayerAudioDeviceType : int
                {
                    MediaPlayerAudioDeviceType_Console = 0,
                    MediaPlayerAudioDeviceType_Multimedia = 1,
                    MediaPlayerAudioDeviceType_Communications = 2,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum MediaPlayerError : int
                {
                    MediaPlayerError_Unknown = 0,
                    MediaPlayerError_Aborted = 1,
                    MediaPlayerError_NetworkError = 2,
                    MediaPlayerError_DecodingError = 3,
                    MediaPlayerError_SourceNotSupported = 4,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                DEPRECATED("Use MediaPlaybackState instead of MediaPlayerState.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                MediaPlayerState : int
                {
                    MediaPlayerState_Closed = 0,
                    MediaPlayerState_Opening = 1,
                    MediaPlayerState_Buffering = 2,
                    MediaPlayerState_Playing = 3,
                    MediaPlayerState_Paused = 4,
                    MediaPlayerState_Stopped = 5,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.SphericalVideoProjectionMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum SphericalVideoProjectionMode : int
                {
                    SphericalVideoProjectionMode_Spherical = 0,
                    SphericalVideoProjectionMode_Flat = 1,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.StereoscopicVideoRenderMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum StereoscopicVideoRenderMode : int
                {
                    StereoscopicVideoRenderMode_Mono = 0,
                    StereoscopicVideoRenderMode_Stereo = 1,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.TimedMetadataTrackPresentationMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                enum TimedMetadataTrackPresentationMode : int
                {
                    TimedMetadataTrackPresentationMode_Disabled = 0,
                    TimedMetadataTrackPresentationMode_Hidden = 1,
                    TimedMetadataTrackPresentationMode_ApplicationPresented = 2,
                    TimedMetadataTrackPresentationMode_PlatformPresented = 3,
                };
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IBackgroundMediaPlayerStatics
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.BackgroundMediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IBackgroundMediaPlayerStatics[] = L"Windows.Media.Playback.IBackgroundMediaPlayerStatics";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("856ddbc1-55f7-471f-a0f2-68ac4c904592")
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                IBackgroundMediaPlayerStatics : public IInspectable
                {
                public:
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE get_Current(
                        ABI::Windows::Media::Playback::IMediaPlayer** player
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE add_MessageReceivedFromBackground(
                        __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE remove_MessageReceivedFromBackground(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE add_MessageReceivedFromForeground(
                        __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE remove_MessageReceivedFromForeground(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE SendMessageToBackground(
                        ABI::Windows::Foundation::Collections::IPropertySet* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE SendMessageToForeground(
                        ABI::Windows::Foundation::Collections::IPropertySet* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE IsMediaPlaying(
                        boolean* isMediaPlaying
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
                    virtual HRESULT STDMETHODCALLTYPE Shutdown(void) = 0;
                };

                MIDL_CONST_ID IID& IID_IBackgroundMediaPlayerStatics = __uuidof(IBackgroundMediaPlayerStatics);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ICurrentMediaPlaybackItemChangedEventArgs[] = L"Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("1743a892-5c43-4a15-967a-572d2d0f26c6")
                ICurrentMediaPlaybackItemChangedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_NewItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_OldItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_ICurrentMediaPlaybackItemChangedEventArgs = __uuidof(ICurrentMediaPlaybackItemChangedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ICurrentMediaPlaybackItemChangedEventArgs2[] = L"Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("1d80a51e-996e-40a9-be48-e66ec90b2b7d")
                ICurrentMediaPlaybackItemChangedEventArgs2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Reason(
                        ABI::Windows::Media::Playback::MediaPlaybackItemChangedReason* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_ICurrentMediaPlaybackItemChangedEventArgs2 = __uuidof(ICurrentMediaPlaybackItemChangedEventArgs2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreak
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreak
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreak[] = L"Windows.Media.Playback.IMediaBreak";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("714be270-0def-4ebc-a489-6b34930e1558")
                IMediaBreak : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackList(
                        ABI::Windows::Media::Playback::IMediaPlaybackList** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PresentationPosition(
                        __FIReference_1_Windows__CFoundation__CTimeSpan** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_InsertionMethod(
                        ABI::Windows::Media::Playback::MediaBreakInsertionMethod* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CustomProperties(
                        ABI::Windows::Foundation::Collections::IPropertySet** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CanStart(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_CanStart(
                        boolean value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreak = __uuidof(IMediaBreak);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakEndedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakEndedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakEndedEventArgs[] = L"Windows.Media.Playback.IMediaBreakEndedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("32b93276-1c5d-4fee-8732-236dc3a88580")
                IMediaBreakEndedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_MediaBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakEndedEventArgs = __uuidof(IMediaBreakEndedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreak
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakFactory[] = L"Windows.Media.Playback.IMediaBreakFactory";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("4516e002-18e0-4079-8b5f-d33495c15d2e")
                IMediaBreakFactory : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE Create(
                        ABI::Windows::Media::Playback::MediaBreakInsertionMethod insertionMethod,
                        ABI::Windows::Media::Playback::IMediaBreak** result
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE CreateWithPresentationPosition(
                        ABI::Windows::Media::Playback::MediaBreakInsertionMethod insertionMethod,
                        ABI::Windows::Foundation::TimeSpan presentationPosition,
                        ABI::Windows::Media::Playback::IMediaBreak** result
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakFactory = __uuidof(IMediaBreakFactory);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakManager
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakManager[] = L"Windows.Media.Playback.IMediaBreakManager";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("a854ddb1-feb4-4d9b-9d97-0fdbe58e5e39")
                IMediaBreakManager : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_BreaksSeekedOver(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BreaksSeekedOver(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BreakStarted(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BreakStarted(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BreakEnded(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BreakEnded(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BreakSkipped(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BreakSkipped(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CurrentBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackSession(
                        ABI::Windows::Media::Playback::IMediaPlaybackSession** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE PlayBreak(
                        ABI::Windows::Media::Playback::IMediaBreak* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE SkipCurrentBreak(void) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakManager = __uuidof(IMediaBreakManager);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSchedule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSchedule
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSchedule[] = L"Windows.Media.Playback.IMediaBreakSchedule";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("a19a5813-98b6-41d8-83da-f971d22b7bba")
                IMediaBreakSchedule : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_ScheduleChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_ScheduleChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE InsertMidrollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak* mediaBreak
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE RemoveMidrollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak* mediaBreak
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MidrollBreaks(
                        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_PrerollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PrerollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_PostrollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PostrollBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakSchedule = __uuidof(IMediaBreakSchedule);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSeekedOverEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSeekedOverEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSeekedOverEventArgs[] = L"Windows.Media.Playback.IMediaBreakSeekedOverEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("e5aa6746-0606-4492-b9d3-c3c8fde0a4ea")
                IMediaBreakSeekedOverEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_SeekedOverBreaks(
                        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_OldPosition(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NewPosition(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakSeekedOverEventArgs = __uuidof(IMediaBreakSeekedOverEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSkippedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSkippedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSkippedEventArgs[] = L"Windows.Media.Playback.IMediaBreakSkippedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("6ee94c05-2f54-4a3e-a3ab-24c3b270b4a3")
                IMediaBreakSkippedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_MediaBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakSkippedEventArgs = __uuidof(IMediaBreakSkippedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakStartedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakStartedEventArgs[] = L"Windows.Media.Playback.IMediaBreakStartedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("a87efe71-dfd4-454a-956e-0a4a648395f8")
                IMediaBreakStartedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_MediaBreak(
                        ABI::Windows::Media::Playback::IMediaBreak** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaBreakStartedEventArgs = __uuidof(IMediaBreakStartedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaEnginePlaybackSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaEnginePlaybackSource[] = L"Windows.Media.Playback.IMediaEnginePlaybackSource";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("5c1d0ba7-3856-48b9-8dc6-244bf107bf8c")
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                IMediaEnginePlaybackSource : public IInspectable
                {
                public:
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_CurrentItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE SetPlaybackSource(
                        ABI::Windows::Media::Playback::IMediaPlaybackSource* source
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaEnginePlaybackSource = __uuidof(IMediaEnginePlaybackSource);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaItemDisplayProperties
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaItemDisplayProperties
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaItemDisplayProperties[] = L"Windows.Media.Playback.IMediaItemDisplayProperties";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("1e3c1b48-7097-4384-a217-c1291dfa8c16")
                IMediaItemDisplayProperties : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Type(
                        ABI::Windows::Media::MediaPlaybackType* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Type(
                        ABI::Windows::Media::MediaPlaybackType value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MusicProperties(
                        ABI::Windows::Media::IMusicDisplayProperties** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_VideoProperties(
                        ABI::Windows::Media::IVideoDisplayProperties** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Thumbnail(
                        ABI::Windows::Storage::Streams::IRandomAccessStreamReference** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Thumbnail(
                        ABI::Windows::Storage::Streams::IRandomAccessStreamReference* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE ClearAll(void) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaItemDisplayProperties = __uuidof(IMediaItemDisplayProperties);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManager
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManager[] = L"Windows.Media.Playback.IMediaPlaybackCommandManager";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("5acee5a6-5cb6-4a5a-8521-cc86b1c1ed37")
                IMediaPlaybackCommandManager : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_IsEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsEnabled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MediaPlayer(
                        ABI::Windows::Media::Playback::IMediaPlayer** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlayBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PauseBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NextBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PreviousBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_FastForwardBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_RewindBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ShuffleBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AutoRepeatModeBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PositionBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_RateBehavior(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManagerCommandBehavior** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PlayReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PlayReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PauseReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PauseReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_NextReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_NextReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PreviousReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PreviousReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_FastForwardReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_FastForwardReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_RewindReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_RewindReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_ShuffleReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_ShuffleReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_AutoRepeatModeReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_AutoRepeatModeReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PositionReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PositionReceived(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_RateReceived(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_RateReceived(
                        EventRegistrationToken token
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManager = __uuidof(IMediaPlaybackCommandManager);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("3d6f4f23-5230-4411-a0e9-bad94c2a045c")
                IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AutoRepeatMode(
                        ABI::Windows::Media::MediaPlaybackAutoRepeatMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerCommandBehavior[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("786c1e78-ce78-4a10-afd6-843fcbb90c2e")
                IMediaPlaybackCommandManagerCommandBehavior : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_CommandManager(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManager** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_EnablingRule(
                        ABI::Windows::Media::Playback::MediaCommandEnablingRule* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_EnablingRule(
                        ABI::Windows::Media::Playback::MediaCommandEnablingRule value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_IsEnabledChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_IsEnabledChanged(
                        EventRegistrationToken token
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerCommandBehavior = __uuidof(IMediaPlaybackCommandManagerCommandBehavior);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerFastForwardReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("30f064d9-b491-4d0a-bc21-3098bd1332e9")
                IMediaPlaybackCommandManagerFastForwardReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerFastForwardReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerFastForwardReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerNextReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("e1504433-a2b0-45d4-b9de-5f42ac14a839")
                IMediaPlaybackCommandManagerNextReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerNextReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerNextReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPauseReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("5ceccd1c-c25c-4221-b16c-c3c98ce012d6")
                IMediaPlaybackCommandManagerPauseReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerPauseReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerPauseReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPlayReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("9af0004e-578b-4c56-a006-16159d888a48")
                IMediaPlaybackCommandManagerPlayReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerPlayReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerPlayReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPositionReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("5591a754-d627-4bdd-a90d-86a015b24902")
                IMediaPlaybackCommandManagerPositionReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Position(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerPositionReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerPositionReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPreviousReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("525e3081-4632-4f76-99b1-d771623f6287")
                IMediaPlaybackCommandManagerPreviousReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerPreviousReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerPreviousReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerRateReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("18ea3939-4a16-4169-8b05-3eb9f5ff78eb")
                IMediaPlaybackCommandManagerRateReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackRate(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerRateReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerRateReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerRewindReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("9f085947-a3c0-425d-aaef-97ba7898b141")
                IMediaPlaybackCommandManagerRewindReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerRewindReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerRewindReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerShuffleReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("50a05cef-63ee-4a96-b7b5-fee08b9ff90c")
                IMediaPlaybackCommandManagerShuffleReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Handled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Handled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsShuffleRequested(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                        ABI::Windows::Foundation::IDeferral** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackCommandManagerShuffleReceivedEventArgs = __uuidof(IMediaPlaybackCommandManagerShuffleReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem[] = L"Windows.Media.Playback.IMediaPlaybackItem";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("047097d2-e4af-48ab-b283-6929e674ece2")
                IMediaPlaybackItem : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_AudioTracksChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_AudioTracksChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_VideoTracksChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_VideoTracksChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_TimedMetadataTracksChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_TimedMetadataTracksChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Source(
                        ABI::Windows::Media::Core::IMediaSource2** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AudioTracks(
                        __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_VideoTracks(
                        __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_TimedMetadataTracks(
                        __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItem = __uuidof(IMediaPlaybackItem);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItem
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem2[] = L"Windows.Media.Playback.IMediaPlaybackItem2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("d859d171-d7ef-4b81-ac1f-f40493cbb091")
                IMediaPlaybackItem2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_BreakSchedule(
                        ABI::Windows::Media::Playback::IMediaBreakSchedule** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_StartTime(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_DurationLimit(
                        __FIReference_1_Windows__CFoundation__CTimeSpan** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CanSkip(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_CanSkip(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetDisplayProperties(
                        ABI::Windows::Media::Playback::IMediaItemDisplayProperties** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE ApplyDisplayProperties(
                        ABI::Windows::Media::Playback::IMediaItemDisplayProperties* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItem2 = __uuidof(IMediaPlaybackItem2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItem2
 *     Windows.Media.Playback.IMediaPlaybackItem
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem3[] = L"Windows.Media.Playback.IMediaPlaybackItem3";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("0d328220-b80a-4d09-9ff8-f87094a1c831")
                IMediaPlaybackItem3 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_IsDisabledInPlaybackList(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsDisabledInPlaybackList(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_TotalDownloadProgress(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AutoLoadedDisplayProperties(
                        ABI::Windows::Media::Playback::AutoLoadedDisplayPropertyKind* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AutoLoadedDisplayProperties(
                        ABI::Windows::Media::Playback::AutoLoadedDisplayPropertyKind value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItem3 = __uuidof(IMediaPlaybackItem3);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemError
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemError[] = L"Windows.Media.Playback.IMediaPlaybackItemError";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("69fbef2b-dcd6-4df9-a450-dbf4c6f1c2c2")
                IMediaPlaybackItemError : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_ErrorCode(
                        ABI::Windows::Media::Playback::MediaPlaybackItemErrorCode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ExtendedError(
                        HRESULT* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemError = __uuidof(IMediaPlaybackItemError);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFactory[] = L"Windows.Media.Playback.IMediaPlaybackItemFactory";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("7133fce1-1769-4ff9-a7c1-38d2c4d42360")
                IMediaPlaybackItemFactory : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE Create(
                        ABI::Windows::Media::Core::IMediaSource2* source,
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemFactory = __uuidof(IMediaPlaybackItemFactory);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFactory2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItemFactory
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFactory2[] = L"Windows.Media.Playback.IMediaPlaybackItemFactory2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("d77cdf3a-b947-4972-b35d-adfb931a71e6")
                IMediaPlaybackItemFactory2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE CreateWithStartTime(
                        ABI::Windows::Media::Core::IMediaSource2* source,
                        ABI::Windows::Foundation::TimeSpan startTime,
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** result
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE CreateWithStartTimeAndDurationLimit(
                        ABI::Windows::Media::Core::IMediaSource2* source,
                        ABI::Windows::Foundation::TimeSpan startTime,
                        ABI::Windows::Foundation::TimeSpan durationLimit,
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** result
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemFactory2 = __uuidof(IMediaPlaybackItemFactory2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemFailedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFailedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("7703134a-e9a7-47c3-862c-c656d30683d4")
                IMediaPlaybackItemFailedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Item(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Error(
                        ABI::Windows::Media::Playback::IMediaPlaybackItemError** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemFailedEventArgs = __uuidof(IMediaPlaybackItemFailedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemOpenedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("cbd9bd82-3037-4fbe-ae8f-39fc39edf4ef")
                IMediaPlaybackItemOpenedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Item(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemOpenedEventArgs = __uuidof(IMediaPlaybackItemOpenedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemStatics
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemStatics[] = L"Windows.Media.Playback.IMediaPlaybackItemStatics";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("4b1be7f4-4345-403c-8a67-f5de91df4c86")
                IMediaPlaybackItemStatics : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE FindFromMediaSource(
                        ABI::Windows::Media::Core::IMediaSource2* source,
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackItemStatics = __uuidof(IMediaPlaybackItemStatics);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList[] = L"Windows.Media.Playback.IMediaPlaybackList";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("7f77ee9c-dc42-4e26-a98d-7850df8ec925")
                IMediaPlaybackList : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_ItemFailed(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_ItemFailed(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_CurrentItemChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_CurrentItemChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_ItemOpened(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_ItemOpened(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Items(
                        __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AutoRepeatEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AutoRepeatEnabled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ShuffleEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_ShuffleEnabled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CurrentItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CurrentItemIndex(
                        UINT32* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE MoveNext(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** item
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE MovePrevious(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** item
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE MoveTo(
                        UINT32 itemIndex,
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** item
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackList = __uuidof(IMediaPlaybackList);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackList
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList2[] = L"Windows.Media.Playback.IMediaPlaybackList2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("0e09b478-600a-4274-a14b-0b6723d0f48b")
                IMediaPlaybackList2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_MaxPrefetchTime(
                        __FIReference_1_Windows__CFoundation__CTimeSpan** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_MaxPrefetchTime(
                        __FIReference_1_Windows__CFoundation__CTimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_StartingItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_StartingItem(
                        ABI::Windows::Media::Playback::IMediaPlaybackItem* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ShuffledItems(
                        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE SetShuffledItems(
                        __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackList2 = __uuidof(IMediaPlaybackList2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackList2
 *     Windows.Media.Playback.IMediaPlaybackList
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList3[] = L"Windows.Media.Playback.IMediaPlaybackList3";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("dd24bba9-bc47-4463-aa90-c18b7e5ffde1")
                IMediaPlaybackList3 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_MaxPlayedItemsToKeepOpen(
                        __FIReference_1_UINT32** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_MaxPlayedItemsToKeepOpen(
                        __FIReference_1_UINT32* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackList3 = __uuidof(IMediaPlaybackList3);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession[] = L"Windows.Media.Playback.IMediaPlaybackSession";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("c32b683d-0407-41ba-8946-8b345a5a5435")
                IMediaPlaybackSession : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_PlaybackStateChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PlaybackStateChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PlaybackRateChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PlaybackRateChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_SeekCompleted(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_SeekCompleted(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BufferingStarted(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferingStarted(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BufferingEnded(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferingEnded(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_BufferingProgressChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferingProgressChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_DownloadProgressChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_DownloadProgressChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_NaturalDurationChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_NaturalDurationChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PositionChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PositionChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_NaturalVideoSizeChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_NaturalVideoSizeChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MediaPlayer(
                        ABI::Windows::Media::Playback::IMediaPlayer** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NaturalDuration(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Position(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Position(
                        ABI::Windows::Foundation::TimeSpan value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackState(
                        ABI::Windows::Media::Playback::MediaPlaybackState* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CanSeek(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CanPause(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsProtected(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackRate(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_PlaybackRate(
                        DOUBLE value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_BufferingProgress(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_DownloadProgress(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NaturalVideoHeight(
                        UINT32* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NaturalVideoWidth(
                        UINT32* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NormalizedSourceRect(
                        ABI::Windows::Foundation::Rect* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_NormalizedSourceRect(
                        ABI::Windows::Foundation::Rect value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_StereoscopicVideoPackingMode(
                        ABI::Windows::Media::MediaProperties::StereoscopicVideoPackingMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_StereoscopicVideoPackingMode(
                        ABI::Windows::Media::MediaProperties::StereoscopicVideoPackingMode value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSession = __uuidof(IMediaPlaybackSession);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession2[] = L"Windows.Media.Playback.IMediaPlaybackSession2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("f8ba7c79-1fc8-4097-ad70-c0fa18cc0050")
                IMediaPlaybackSession2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_BufferedRangesChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferedRangesChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_PlayedRangesChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PlayedRangesChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_SeekableRangesChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_SeekableRangesChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_SupportedPlaybackRatesChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_SupportedPlaybackRatesChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_SphericalVideoProjection(
                        ABI::Windows::Media::Playback::IMediaPlaybackSphericalVideoProjection** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsMirroring(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsMirroring(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetBufferedRanges(
                        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetPlayedRanges(
                        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetSeekableRanges(
                        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE IsSupportedPlaybackRateRange(
                        DOUBLE rate1,
                        DOUBLE rate2,
                        boolean* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSession2 = __uuidof(IMediaPlaybackSession2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession3[] = L"Windows.Media.Playback.IMediaPlaybackSession3";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("7ba2b41a-a3e2-405f-b77b-a4812c238b66")
                IMediaPlaybackSession3 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackRotation(
                        ABI::Windows::Media::MediaProperties::MediaRotation* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_PlaybackRotation(
                        ABI::Windows::Media::MediaProperties::MediaRotation value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetOutputDegradationPolicyState(
                        ABI::Windows::Media::Playback::IMediaPlaybackSessionOutputDegradationPolicyState** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSession3 = __uuidof(IMediaPlaybackSession3);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSessionBufferingStartedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("cd6aafed-74e2-43b5-b115-76236c33791a")
                IMediaPlaybackSessionBufferingStartedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_IsPlaybackInterruption(
                        boolean* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSessionBufferingStartedEventArgs = __uuidof(IMediaPlaybackSessionBufferingStartedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSessionOutputDegradationPolicyState[] = L"Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("558e727d-f633-49f9-965a-abaa1db709be")
                IMediaPlaybackSessionOutputDegradationPolicyState : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_VideoConstrictionReason(
                        ABI::Windows::Media::Playback::MediaPlaybackSessionVideoConstrictionReason* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSessionOutputDegradationPolicyState = __uuidof(IMediaPlaybackSessionOutputDegradationPolicyState);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSource[] = L"Windows.Media.Playback.IMediaPlaybackSource";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("ef9dc2bc-9317-4696-b051-2bad643177b5")
                IMediaPlaybackSource : public IInspectable
                {
                public:
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSource = __uuidof(IMediaPlaybackSource);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSphericalVideoProjection
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSphericalVideoProjection[] = L"Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("d405b37c-6f0e-4661-b8ee-d487ba9752d5")
                IMediaPlaybackSphericalVideoProjection : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_IsEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsEnabled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_FrameFormat(
                        ABI::Windows::Media::MediaProperties::SphericalVideoFrameFormat* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_FrameFormat(
                        ABI::Windows::Media::MediaProperties::SphericalVideoFrameFormat value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_HorizontalFieldOfViewInDegrees(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_HorizontalFieldOfViewInDegrees(
                        DOUBLE value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ViewOrientation(
                        ABI::Windows::Foundation::Numerics::Quaternion* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_ViewOrientation(
                        ABI::Windows::Foundation::Numerics::Quaternion value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ProjectionMode(
                        ABI::Windows::Media::Playback::SphericalVideoProjectionMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_ProjectionMode(
                        ABI::Windows::Media::Playback::SphericalVideoProjectionMode value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackSphericalVideoProjection = __uuidof(IMediaPlaybackSphericalVideoProjection);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackTimedMetadataTrackList[] = L"Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("72b41319-bbfb-46a3-9372-9c9c744b9438")
                IMediaPlaybackTimedMetadataTrackList : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_PresentationModeChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_PresentationModeChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetPresentationMode(
                        UINT32 index,
                        ABI::Windows::Media::Playback::TimedMetadataTrackPresentationMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE SetPresentationMode(
                        UINT32 index,
                        ABI::Windows::Media::Playback::TimedMetadataTrackPresentationMode value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlaybackTimedMetadataTrackList = __uuidof(IMediaPlaybackTimedMetadataTrackList);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer[] = L"Windows.Media.Playback.IMediaPlayer";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("381a83cb-6fff-499b-8d64-2885dfc1249e")
                IMediaPlayer : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_AutoPlay(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AutoPlay(
                        boolean value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.NaturalDuration instead of NaturalDuration.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_NaturalDuration(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_Position(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE put_Position(
                        ABI::Windows::Foundation::TimeSpan value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.BufferingProgress instead of BufferingProgress.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_BufferingProgress(
                        DOUBLE* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.State instead of CurrentState.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_CurrentState(
                        ABI::Windows::Media::Playback::MediaPlayerState* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.CanSeek instead of CanSeek.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_CanSeek(
                        boolean* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.CanPause instead of CanPause.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_CanPause(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsLoopingEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsLoopingEnabled(
                        boolean value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.IsProtected instead of IsProtected.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_IsProtected(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsMuted(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsMuted(
                        boolean value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackRate(
                        DOUBLE* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE put_PlaybackRate(
                        DOUBLE value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Volume(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Volume(
                        DOUBLE value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackMediaMarkers(
                        ABI::Windows::Media::Playback::IPlaybackMediaMarkerSequence** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_MediaOpened(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_MediaOpened(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_MediaEnded(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_MediaEnded(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_MediaFailed(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_MediaFailed(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE add_CurrentStateChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE remove_CurrentStateChanged(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE add_PlaybackMediaMarkerReached(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE remove_PlaybackMediaMarkerReached(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE add_MediaPlayerRateChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE remove_MediaPlayerRateChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_VolumeChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_VolumeChanged(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE add_SeekCompleted(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE remove_SeekCompleted(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE add_BufferingStarted(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferingStarted(
                        EventRegistrationToken token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE add_BufferingEnded(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
                    virtual HRESULT STDMETHODCALLTYPE remove_BufferingEnded(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE Play(void) = 0;
                    virtual HRESULT STDMETHODCALLTYPE Pause(void) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use Source instead of SetUriSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE SetUriSource(
                        ABI::Windows::Foundation::IUriRuntimeClass* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer = __uuidof(IMediaPlayer);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer2[] = L"Windows.Media.Playback.IMediaPlayer2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("3c841218-2123-4fc5-9082-2f883f77bdf5")
                IMediaPlayer2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_SystemMediaTransportControls(
                        ABI::Windows::Media::ISystemMediaTransportControls** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AudioCategory(
                        ABI::Windows::Media::Playback::MediaPlayerAudioCategory* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AudioCategory(
                        ABI::Windows::Media::Playback::MediaPlayerAudioCategory value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AudioDeviceType(
                        ABI::Windows::Media::Playback::MediaPlayerAudioDeviceType* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AudioDeviceType(
                        ABI::Windows::Media::Playback::MediaPlayerAudioDeviceType value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer2 = __uuidof(IMediaPlayer2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer3[] = L"Windows.Media.Playback.IMediaPlayer3";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("ee0660da-031b-4feb-bd9b-92e0a0a8d299")
                IMediaPlayer3 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_IsMutedChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_IsMutedChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE add_SourceChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_SourceChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AudioBalance(
                        DOUBLE* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AudioBalance(
                        DOUBLE value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_RealTimePlayback(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_RealTimePlayback(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_StereoscopicVideoRenderMode(
                        ABI::Windows::Media::Playback::StereoscopicVideoRenderMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_StereoscopicVideoRenderMode(
                        ABI::Windows::Media::Playback::StereoscopicVideoRenderMode value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_BreakManager(
                        ABI::Windows::Media::Playback::IMediaBreakManager** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_CommandManager(
                        ABI::Windows::Media::Playback::IMediaPlaybackCommandManager** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_AudioDevice(
                        ABI::Windows::Devices::Enumeration::IDeviceInformation** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_AudioDevice(
                        ABI::Windows::Devices::Enumeration::IDeviceInformation* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_TimelineController(
                        ABI::Windows::Media::IMediaTimelineController** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_TimelineController(
                        ABI::Windows::Media::IMediaTimelineController* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_TimelineControllerPositionOffset(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_TimelineControllerPositionOffset(
                        ABI::Windows::Foundation::TimeSpan value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackSession(
                        ABI::Windows::Media::Playback::IMediaPlaybackSession** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE StepForwardOneFrame(void) = 0;
                    virtual HRESULT STDMETHODCALLTYPE StepBackwardOneFrame(void) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetAsCastingSource(
                        ABI::Windows::Media::Casting::ICastingSource** returnValue
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer3 = __uuidof(IMediaPlayer3);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer4
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer4[] = L"Windows.Media.Playback.IMediaPlayer4";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("80035db0-7448-4770-afcf-2a57450914c5")
                IMediaPlayer4 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE SetSurfaceSize(
                        ABI::Windows::Foundation::Size size
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE GetSurface(
                        ABI::Windows::UI::Composition::ICompositor* compositor,
                        ABI::Windows::Media::Playback::IMediaPlayerSurface** result
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer4 = __uuidof(IMediaPlayer4);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer5
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer5[] = L"Windows.Media.Playback.IMediaPlayer5";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("cfe537fd-f86a-4446-bf4d-c8e792b7b4b3")
                IMediaPlayer5 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_VideoFrameAvailable(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_VideoFrameAvailable(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_IsVideoFrameServerEnabled(
                        boolean* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_IsVideoFrameServerEnabled(
                        boolean value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE CopyFrameToVideoSurface(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destination
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE CopyFrameToVideoSurfaceWithTargetRectangle(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destination,
                        ABI::Windows::Foundation::Rect targetRectangle
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE CopyFrameToStereoscopicVideoSurfaces(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destinationLeftEye,
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destinationRightEye
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer5 = __uuidof(IMediaPlayer5);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer6
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer6[] = L"Windows.Media.Playback.IMediaPlayer6";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("e0caa086-ae65-414c-b010-8bc55f00e692")
                IMediaPlayer6 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE add_SubtitleFrameChanged(
                        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* handler,
                        EventRegistrationToken* token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE remove_SubtitleFrameChanged(
                        EventRegistrationToken token
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE RenderSubtitlesToSurface(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destination,
                        boolean* result
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE RenderSubtitlesToSurfaceWithTargetRectangle(
                        ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface* destination,
                        ABI::Windows::Foundation::Rect targetRectangle,
                        boolean* result
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer6 = __uuidof(IMediaPlayer6);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer7
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer7[] = L"Windows.Media.Playback.IMediaPlayer7";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("5d1dc478-4500-4531-b3f4-777a71491f7f")
                IMediaPlayer7 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_AudioStateMonitor(
                        ABI::Windows::Media::Audio::IAudioStateMonitor** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayer7 = __uuidof(IMediaPlayer7);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerDataReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerDataReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("c75a9405-c801-412a-835b-83fc0e622a8e")
                IMediaPlayerDataReceivedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Data(
                        ABI::Windows::Foundation::Collections::IPropertySet** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerDataReceivedEventArgs = __uuidof(IMediaPlayerDataReceivedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerEffects
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerEffects[] = L"Windows.Media.Playback.IMediaPlayerEffects";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("85a1deda-cab6-4cc0-8be3-6035f4de2591")
                IMediaPlayerEffects : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE AddAudioEffect(
                        HSTRING activatableClassId,
                        boolean effectOptional,
                        ABI::Windows::Foundation::Collections::IPropertySet* configuration
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE RemoveAllEffects(void) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerEffects = __uuidof(IMediaPlayerEffects);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerEffects2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerEffects2[] = L"Windows.Media.Playback.IMediaPlayerEffects2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("fa419a79-1bbe-46c5-ae1f-8ee69fb3c2c7")
                IMediaPlayerEffects2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE AddVideoEffect(
                        HSTRING activatableClassId,
                        boolean effectOptional,
                        ABI::Windows::Foundation::Collections::IPropertySet* effectConfiguration
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerEffects2 = __uuidof(IMediaPlayerEffects2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerFailedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerFailedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerFailedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("2744e9b9-a7e3-4f16-bac4-7914ebc08301")
                IMediaPlayerFailedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Error(
                        ABI::Windows::Media::Playback::MediaPlayerError* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ExtendedErrorCode(
                        HRESULT* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_ErrorMessage(
                        HSTRING* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerFailedEventArgs = __uuidof(IMediaPlayerFailedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerRateChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerRateChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerRateChangedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerRateChangedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("40600d58-3b61-4bb2-989f-fc65608b6cab")
                IMediaPlayerRateChangedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_NewRate(
                        DOUBLE* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerRateChangedEventArgs = __uuidof(IMediaPlayerRateChangedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSource[] = L"Windows.Media.Playback.IMediaPlayerSource";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("bd4f8897-1423-4c3e-82c5-0fb1af94f715")
                IMediaPlayerSource : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_ProtectionManager(
                        ABI::Windows::Media::Protection::IMediaProtectionManager** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_ProtectionManager(
                        ABI::Windows::Media::Protection::IMediaProtectionManager* value
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use Source instead of SetFileSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE SetFileSource(
                        ABI::Windows::Storage::IStorageFile* file
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use Source instead of SetStreamSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE SetStreamSource(
                        ABI::Windows::Storage::Streams::IRandomAccessStream* stream
                        ) = 0;
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    DEPRECATED("Use Source instead of SetMediaSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
                    virtual HRESULT STDMETHODCALLTYPE SetMediaSource(
                        ABI::Windows::Media::Core::IMediaSource* source
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerSource = __uuidof(IMediaPlayerSource);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSource2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSource2[] = L"Windows.Media.Playback.IMediaPlayerSource2";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("82449b9f-7322-4c0b-b03b-3e69a48260c5")
                IMediaPlayerSource2 : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Source(
                        ABI::Windows::Media::Playback::IMediaPlaybackSource** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE put_Source(
                        ABI::Windows::Media::Playback::IMediaPlaybackSource* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerSource2 = __uuidof(IMediaPlayerSource2);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSurface
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerSurface
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSurface[] = L"Windows.Media.Playback.IMediaPlayerSurface";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("0ed653bc-b736-49c3-830b-764a3845313a")
                IMediaPlayerSurface : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_CompositionSurface(
                        ABI::Windows::UI::Composition::ICompositionSurface** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Compositor(
                        ABI::Windows::UI::Composition::ICompositor** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MediaPlayer(
                        ABI::Windows::Media::Playback::IMediaPlayer** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IMediaPlayerSurface = __uuidof(IMediaPlayerSurface);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarker
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarker
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarker[] = L"Windows.Media.Playback.IPlaybackMediaMarker";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("c4d22f5c-3c1c-4444-b6b9-778b0422d41a")
                IPlaybackMediaMarker : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Time(
                        ABI::Windows::Foundation::TimeSpan* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_MediaMarkerType(
                        HSTRING* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_Text(
                        HSTRING* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IPlaybackMediaMarker = __uuidof(IPlaybackMediaMarker);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarker
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerFactory[] = L"Windows.Media.Playback.IPlaybackMediaMarkerFactory";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("8c530a78-e0ae-4e1a-a8c8-e23f982a937b")
                IPlaybackMediaMarkerFactory : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE CreateFromTime(
                        ABI::Windows::Foundation::TimeSpan value,
                        ABI::Windows::Media::Playback::IPlaybackMediaMarker** marker
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE Create(
                        ABI::Windows::Foundation::TimeSpan value,
                        HSTRING mediaMarketType,
                        HSTRING text,
                        ABI::Windows::Media::Playback::IPlaybackMediaMarker** marker
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IPlaybackMediaMarkerFactory = __uuidof(IPlaybackMediaMarkerFactory);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerReachedEventArgs[] = L"Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("578cd1b9-90e2-4e60-abc4-8740b01f6196")
                IPlaybackMediaMarkerReachedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_PlaybackMediaMarker(
                        ABI::Windows::Media::Playback::IPlaybackMediaMarker** value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_IPlaybackMediaMarkerReachedEventArgs = __uuidof(IPlaybackMediaMarkerReachedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerSequence
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarkerSequence
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.PlaybackMediaMarker>
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerSequence[] = L"Windows.Media.Playback.IPlaybackMediaMarkerSequence";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("f2810cee-638b-46cf-8817-1d111fe9d8c4")
                IPlaybackMediaMarkerSequence : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Size(
                        UINT32* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE Insert(
                        ABI::Windows::Media::Playback::IPlaybackMediaMarker* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE Clear(void) = 0;
                };

                MIDL_CONST_ID IID& IID_IPlaybackMediaMarkerSequence = __uuidof(IPlaybackMediaMarkerSequence);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ITimedMetadataPresentationModeChangedEventArgs[] = L"Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs";
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Playback {
                MIDL_INTERFACE("d1636099-65df-45ae-8cef-dc0b53fdc2bb")
                ITimedMetadataPresentationModeChangedEventArgs : public IInspectable
                {
                public:
                    virtual HRESULT STDMETHODCALLTYPE get_Track(
                        ABI::Windows::Media::Core::ITimedMetadataTrack** value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_OldPresentationMode(
                        ABI::Windows::Media::Playback::TimedMetadataTrackPresentationMode* value
                        ) = 0;
                    virtual HRESULT STDMETHODCALLTYPE get_NewPresentationMode(
                        ABI::Windows::Media::Playback::TimedMetadataTrackPresentationMode* value
                        ) = 0;
                };

                MIDL_CONST_ID IID& IID_ITimedMetadataPresentationModeChangedEventArgs = __uuidof(ITimedMetadataPresentationModeChangedEventArgs);
            } /* Playback */
        } /* Media */
    } /* Windows */
} /* ABI */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.BackgroundMediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass contains static methods.
 *   Static Methods exist on the Windows.Media.Playback.IBackgroundMediaPlayerStatics interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_BackgroundMediaPlayer_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_BackgroundMediaPlayer_DEFINED
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_BackgroundMediaPlayer[] = L"Windows.Media.Playback.BackgroundMediaPlayer";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs ** Default Interface **
 *    Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs[] = L"Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaBreak
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IMediaBreakFactory interface starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreak ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreak_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreak_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreak[] = L"Windows.Media.Playback.MediaBreak";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakEndedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakEndedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakEndedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakEndedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakEndedEventArgs[] = L"Windows.Media.Playback.MediaBreakEndedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakManager ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakManager_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakManager_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakManager[] = L"Windows.Media.Playback.MediaBreakManager";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSchedule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSchedule ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSchedule_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSchedule_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSchedule[] = L"Windows.Media.Playback.MediaBreakSchedule";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSeekedOverEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSeekedOverEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSeekedOverEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSeekedOverEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSeekedOverEventArgs[] = L"Windows.Media.Playback.MediaBreakSeekedOverEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSkippedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSkippedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSkippedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSkippedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSkippedEventArgs[] = L"Windows.Media.Playback.MediaBreakSkippedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakStartedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakStartedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakStartedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakStartedEventArgs[] = L"Windows.Media.Playback.MediaBreakStartedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaItemDisplayProperties
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaItemDisplayProperties ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaItemDisplayProperties_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaItemDisplayProperties_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaItemDisplayProperties[] = L"Windows.Media.Playback.MediaItemDisplayProperties";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackAudioTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.AudioTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.AudioTrack>
 *    Windows.Media.Core.ISingleSelectMediaTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackAudioTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackAudioTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackAudioTrackList[] = L"Windows.Media.Playback.MediaPlaybackAudioTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManager ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManager_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManager_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManager[] = L"Windows.Media.Playback.MediaPlaybackCommandManager";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItem
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IMediaPlaybackItemFactory interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *   Type can be activated via the Windows.Media.Playback.IMediaPlaybackItemFactory2 interface starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * RuntimeClass contains static methods.
 *   Static Methods exist on the Windows.Media.Playback.IMediaPlaybackItemStatics interface starting with version 2.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItem ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSource
 *    Windows.Media.Playback.IMediaPlaybackItem2
 *    Windows.Media.Playback.IMediaPlaybackItem3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItem_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItem_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItem[] = L"Windows.Media.Playback.MediaPlaybackItem";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemError ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemError_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemError_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemError[] = L"Windows.Media.Playback.MediaPlaybackItemError";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackItemFailedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via RoActivateInstance starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackList ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSource
 *    Windows.Media.Playback.IMediaPlaybackList2
 *    Windows.Media.Playback.IMediaPlaybackList3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackList[] = L"Windows.Media.Playback.MediaPlaybackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSession
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSession ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSession2
 *    Windows.Media.Playback.IMediaPlaybackSession3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSession_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSession_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSession[] = L"Windows.Media.Playback.MediaPlaybackSession";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState[] = L"Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSphericalVideoProjection
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection[] = L"Windows.Media.Playback.MediaPlaybackSphericalVideoProjection";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.TimedMetadataTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.TimedMetadataTrack>
 *    Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList[] = L"Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackVideoTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.VideoTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.VideoTrack>
 *    Windows.Media.Core.ISingleSelectMediaTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackVideoTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackVideoTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackVideoTrackList[] = L"Windows.Media.Playback.MediaPlaybackVideoTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via RoActivateInstance starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayer ** Default Interface **
 *    Windows.Media.Playback.IMediaPlayerSource
 *    Windows.Media.Playback.IMediaPlayerSource2
 *    Windows.Media.Playback.IMediaPlayer2
 *    Windows.Media.Playback.IMediaPlayerEffects
 *    Windows.Foundation.IClosable
 *    Windows.Media.Playback.IMediaPlayer3
 *    Windows.Media.Playback.IMediaPlayer4
 *    Windows.Media.Playback.IMediaPlayerEffects2
 *    Windows.Media.Playback.IMediaPlayer5
 *    Windows.Media.Playback.IMediaPlayer6
 *    Windows.Media.Playback.IMediaPlayer7
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayer_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayer_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayer[] = L"Windows.Media.Playback.MediaPlayer";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerDataReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlayerDataReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerFailedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerFailedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerFailedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerFailedEventArgs[] = L"Windows.Media.Playback.MediaPlayerFailedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerRateChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerRateChangedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerRateChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerRateChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerRateChangedEventArgs[] = L"Windows.Media.Playback.MediaPlayerRateChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerSurface
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerSurface ** Default Interface **
 *    Windows.Foundation.IClosable
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerSurface_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerSurface_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerSurface[] = L"Windows.Media.Playback.MediaPlayerSurface";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarker
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IPlaybackMediaMarkerFactory interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarker ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarker_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarker_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarker[] = L"Windows.Media.Playback.PlaybackMediaMarker";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs[] = L"Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarkerSequence
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarkerSequence ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.PlaybackMediaMarker>
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerSequence_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerSequence_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarkerSequence[] = L"Windows.Media.Playback.PlaybackMediaMarkerSequence";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs[] = L"Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#else // !defined(__cplusplus)
/* Forward Declarations */
#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2 __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2 __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs;

#endif // ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaTrack __x_ABI_CWindows_CMedia_CCore_CIMediaTrack;

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaTrack_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterator_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CCore__CAudioTrack __FIIterator_1_Windows__CMedia__CCore__CAudioTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CCore__CAudioTrack;

typedef struct __FIIterator_1_Windows__CMedia__CCore__CAudioTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CCore__CAudioTrack* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CCore__CAudioTrackVtbl;

interface __FIIterator_1_Windows__CMedia__CCore__CAudioTrack
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CCore__CAudioTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CCore__CAudioTrack_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CAudioTrack_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CAudioTrack_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CAudioTrack_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterable_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CCore__CAudioTrack __FIIterable_1_Windows__CMedia__CCore__CAudioTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CCore__CAudioTrack;

typedef struct __FIIterable_1_Windows__CMedia__CCore__CAudioTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CCore__CAudioTrack* This,
        __FIIterator_1_Windows__CMedia__CCore__CAudioTrack** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CCore__CAudioTrackVtbl;

interface __FIIterable_1_Windows__CMedia__CCore__CAudioTrack
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CCore__CAudioTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CCore__CAudioTrack_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack;

#endif // ____x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack;

typedef struct __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl;

interface __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack;

typedef struct __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        __FIIterator_1_Windows__CMedia__CCore__CTimedMetadataTrack** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl;

interface __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterator_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CCore__CVideoTrack __FIIterator_1_Windows__CMedia__CCore__CVideoTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CCore__CVideoTrack;

typedef struct __FIIterator_1_Windows__CMedia__CCore__CVideoTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CCore__CVideoTrack* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CCore__CVideoTrackVtbl;

interface __FIIterator_1_Windows__CMedia__CCore__CVideoTrack
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CCore__CVideoTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CCore__CVideoTrack_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CVideoTrack_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CVideoTrack_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CCore__CVideoTrack_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterable_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CCore__CVideoTrack __FIIterable_1_Windows__CMedia__CCore__CVideoTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CCore__CVideoTrack;

typedef struct __FIIterable_1_Windows__CMedia__CCore__CVideoTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CCore__CVideoTrack* This,
        __FIIterator_1_Windows__CMedia__CCore__CVideoTrack** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CCore__CVideoTrackVtbl;

interface __FIIterable_1_Windows__CMedia__CCore__CVideoTrack
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CCore__CVideoTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CCore__CVideoTrack_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

typedef struct __x_ABI_CWindows_CMedia_CMediaTimeRange __x_ABI_CWindows_CMedia_CMediaTimeRange;

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____FIIterator_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CMediaTimeRange __FIIterator_1_Windows__CMedia__CMediaTimeRange;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CMediaTimeRange;

typedef struct __FIIterator_1_Windows__CMedia__CMediaTimeRangeVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        struct __x_ABI_CWindows_CMedia_CMediaTimeRange* result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CMediaTimeRange* This,
        UINT32 itemsLength,
        struct __x_ABI_CWindows_CMedia_CMediaTimeRange* items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CMediaTimeRangeVtbl;

interface __FIIterator_1_Windows__CMedia__CMediaTimeRange
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CMediaTimeRangeVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CMediaTimeRange_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CMediaTimeRange_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CMediaTimeRange_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CMediaTimeRange_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____FIIterable_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CMediaTimeRange __FIIterable_1_Windows__CMedia__CMediaTimeRange;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CMediaTimeRange;

typedef struct __FIIterable_1_Windows__CMedia__CMediaTimeRangeVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CMediaTimeRange* This,
        __FIIterator_1_Windows__CMedia__CMediaTimeRange** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CMediaTimeRangeVtbl;

interface __FIIterable_1_Windows__CMedia__CMediaTimeRange
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CMediaTimeRangeVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CMediaTimeRange_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak;

typedef struct __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreakVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreakVtbl;

interface __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreakVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak;

typedef struct __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreakVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        __FIIterator_1_Windows__CMedia__CPlayback__CMediaBreak** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreakVtbl;

interface __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreakVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __FIIterator_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__)
#define ____FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__

typedef interface __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker;

typedef struct __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Current)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker** items,
        UINT32* result);

    END_INTERFACE
} __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl;

interface __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker
{
    CONST_VTBL struct __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_get_Current(This, result) \
    ((This)->lpVtbl->get_Current(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_get_HasCurrent(This, result) \
    ((This)->lpVtbl->get_HasCurrent(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_MoveNext(This, result) \
    ((This)->lpVtbl->MoveNext(This, result))

#define __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_GetMany(This, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__)
#define ____FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__

typedef interface __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker;

typedef struct __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* First)(__FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker* This,
        __FIIterator_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker** result);

    END_INTERFACE
} __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl;

interface __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker
{
    CONST_VTBL struct __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarkerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_First(This, result) \
    ((This)->lpVtbl->First(This, result))

#endif /* COBJMACROS */

#endif // ____FIIterable_1_Windows__CMedia__CPlayback__CPlaybackMediaMarker_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* GetView)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* SetAt)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value);
    HRESULT (STDMETHODCALLTYPE* InsertAt)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAt)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 index);
    HRESULT (STDMETHODCALLTYPE* Append)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAtEnd)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* Clear)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** items,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* ReplaceAll)(__FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** items);

    END_INTERFACE
} __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetView(This, result) \
    ((This)->lpVtbl->GetView(This, result))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_SetAt(This, index, value) \
    ((This)->lpVtbl->SetAt(This, index, value))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_InsertAt(This, index, value) \
    ((This)->lpVtbl->InsertAt(This, index, value))

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

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_Append(This, value) \
    ((This)->lpVtbl->Append(This, value))

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

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

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#define __FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_ReplaceAll(This, itemsLength, items) \
    ((This)->lpVtbl->ReplaceAll(This, itemsLength, items))

#endif /* COBJMACROS */

#endif // ____FIVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

typedef interface __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* sender,
        __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs* event);

    END_INTERFACE
} __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_Invoke(This, sender, event) \
    ((This)->lpVtbl->Invoke(This, sender, event))

#endif /* COBJMACROS */

#endif // ____FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__

typedef interface __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem;

typedef struct __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_VectorChanged)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        __FVectorChangedEventHandler_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* vhnd,
        EventRegistrationToken* result);
    HRESULT (STDMETHODCALLTYPE* remove_VectorChanged)(__FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* This,
        EventRegistrationToken token);

    END_INTERFACE
} __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl;

interface __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem
{
    CONST_VTBL struct __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_add_VectorChanged(This, vhnd, result) \
    ((This)->lpVtbl->add_VectorChanged(This, vhnd, result))

#define __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_remove_VectorChanged(This, token) \
    ((This)->lpVtbl->remove_VectorChanged(This, token))

#endif /* COBJMACROS */

#endif // ____FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CCore__CAudioTrack;

typedef struct __FIVectorView_1_Windows__CMedia__CCore__CAudioTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CCore__CAudioTrack* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CCore__CAudioTrackVtbl;

interface __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CCore__CAudioTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CCore__CAudioTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack;

typedef struct __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl;

interface __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CCore__CVideoTrack;

typedef struct __FIVectorView_1_Windows__CMedia__CCore__CVideoTrackVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CCore__CVideoTrack* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CCore_CIMediaTrack** items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CCore__CVideoTrackVtbl;

interface __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CCore__CVideoTrackVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CCore__CVideoTrack_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____FIVectorView_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CMediaTimeRange __FIVectorView_1_Windows__CMedia__CMediaTimeRange;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CMediaTimeRange;

typedef struct __FIVectorView_1_Windows__CMedia__CMediaTimeRangeVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        UINT32 index,
        struct __x_ABI_CWindows_CMedia_CMediaTimeRange* result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        struct __x_ABI_CWindows_CMedia_CMediaTimeRange value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CMediaTimeRange* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        struct __x_ABI_CWindows_CMedia_CMediaTimeRange* items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CMediaTimeRangeVtbl;

interface __FIVectorView_1_Windows__CMedia__CMediaTimeRange
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CMediaTimeRangeVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CMediaTimeRange_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CMediaTimeRange_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CMediaTimeRange_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CMediaTimeRange_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CMediaTimeRange_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__)
#define ____FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__

typedef interface __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak;

typedef struct __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreakVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* GetAt)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        UINT32 index,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** items,
        UINT32* result);

    END_INTERFACE
} __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreakVtbl;

interface __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak
{
    CONST_VTBL struct __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreakVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_GetAt(This, index, result) \
    ((This)->lpVtbl->GetAt(This, index, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_get_Size(This, result) \
    ((This)->lpVtbl->get_Size(This, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_IndexOf(This, value, index, result) \
    ((This)->lpVtbl->IndexOf(This, value, index, result))

#define __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_GetMany(This, startIndex, itemsLength, items, result) \
    ((This)->lpVtbl->GetMany(This, startIndex, itemsLength, items, result))

#endif /* COBJMACROS */

#endif // ____FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs;

typedef struct __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* This,
        IInspectable* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* args);

    END_INTERFACE
} __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgsVtbl;

interface __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs
{
    CONST_VTBL struct __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if !defined(____FIReference_1_UINT32_INTERFACE_DEFINED__)
#define ____FIReference_1_UINT32_INTERFACE_DEFINED__

typedef interface __FIReference_1_UINT32 __FIReference_1_UINT32;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIReference_1_UINT32;

typedef struct __FIReference_1_UINT32Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIReference_1_UINT32* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIReference_1_UINT32* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIReference_1_UINT32* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIReference_1_UINT32* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIReference_1_UINT32* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIReference_1_UINT32* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__FIReference_1_UINT32* This,
        UINT32* result);

    END_INTERFACE
} __FIReference_1_UINT32Vtbl;

interface __FIReference_1_UINT32
{
    CONST_VTBL struct __FIReference_1_UINT32Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIReference_1_UINT32_get_Value(This, result) \
    ((This)->lpVtbl->get_Value(This, result))

#endif /* COBJMACROS */

#endif // ____FIReference_1_UINT32_INTERFACE_DEFINED__

typedef struct __x_ABI_CWindows_CFoundation_CTimeSpan __x_ABI_CWindows_CFoundation_CTimeSpan;

#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#if !defined(____FIReference_1_Windows__CFoundation__CTimeSpan_INTERFACE_DEFINED__)
#define ____FIReference_1_Windows__CFoundation__CTimeSpan_INTERFACE_DEFINED__

typedef interface __FIReference_1_Windows__CFoundation__CTimeSpan __FIReference_1_Windows__CFoundation__CTimeSpan;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FIReference_1_Windows__CFoundation__CTimeSpan;

typedef struct __FIReference_1_Windows__CFoundation__CTimeSpanVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FIReference_1_Windows__CFoundation__CTimeSpan* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FIReference_1_Windows__CFoundation__CTimeSpan* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FIReference_1_Windows__CFoundation__CTimeSpan* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__FIReference_1_Windows__CFoundation__CTimeSpan* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__FIReference_1_Windows__CFoundation__CTimeSpan* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__FIReference_1_Windows__CFoundation__CTimeSpan* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__FIReference_1_Windows__CFoundation__CTimeSpan* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* result);

    END_INTERFACE
} __FIReference_1_Windows__CFoundation__CTimeSpanVtbl;

interface __FIReference_1_Windows__CFoundation__CTimeSpan
{
    CONST_VTBL struct __FIReference_1_Windows__CFoundation__CTimeSpanVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __FIReference_1_Windows__CFoundation__CTimeSpan_get_Value(This, result) \
    ((This)->lpVtbl->get_Value(This, result))

#endif /* COBJMACROS */

#endif // ____FIReference_1_Windows__CFoundation__CTimeSpan_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectableVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* sender,
        IInspectable* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectableVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* sender,
        IInspectable* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs;

#endif // ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_FWD_DEFINED__

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* sender,
        __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectableVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* sender,
        IInspectable* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* This,
        __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectableVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* sender,
        IInspectable* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__)
#define ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__

typedef interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs;

//  Declare the parameterized interface IID.
EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs;

typedef struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* Invoke)(__FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* sender,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs
{
    CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

#define __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_Invoke(This, sender, args) \
    ((This)->lpVtbl->Invoke(This, sender, args))

#endif /* COBJMACROS */

#endif // ____FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#ifndef ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation;

#endif // ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet;

#endif // ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferral __x_ABI_CWindows_CFoundation_CIDeferral;

#endif // ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIClosable __x_ABI_CWindows_CFoundation_CIClosable;

#endif // ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIPropertyValue __x_ABI_CWindows_CFoundation_CIPropertyValue;

#endif // ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__

typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CQuaternion __x_ABI_CWindows_CFoundation_CNumerics_CQuaternion;

typedef struct __x_ABI_CWindows_CFoundation_CRect __x_ABI_CWindows_CFoundation_CRect;

typedef struct __x_ABI_CWindows_CFoundation_CSize __x_ABI_CWindows_CFoundation_CSize;

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass;

#endif // ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface;

#endif // ____x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor __x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor;

#endif // ____x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCasting_CICastingSource __x_ABI_CWindows_CMedia_CCasting_CICastingSource;

#endif // ____x_ABI_CWindows_CMedia_CCasting_CICastingSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaSource __x_ABI_CWindows_CMedia_CCore_CIMediaSource;

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList __x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList;

#endif // ____x_ABI_CWindows_CMedia_CCore_CISingleSelectMediaTrackList_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaSource2 __x_ABI_CWindows_CMedia_CCore_CIMediaSource2;

#endif // ____x_ABI_CWindows_CMedia_CCore_CIMediaSource2_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CMedia_CMediaPlaybackAutoRepeatMode __x_ABI_CWindows_CMedia_CMediaPlaybackAutoRepeatMode;

typedef enum __x_ABI_CWindows_CMedia_CMediaPlaybackType __x_ABI_CWindows_CMedia_CMediaPlaybackType;

typedef enum __x_ABI_CWindows_CMedia_CMediaProperties_CMediaRotation __x_ABI_CWindows_CMedia_CMediaProperties_CMediaRotation;

typedef enum __x_ABI_CWindows_CMedia_CMediaProperties_CSphericalVideoFrameFormat __x_ABI_CWindows_CMedia_CMediaProperties_CSphericalVideoFrameFormat;

typedef enum __x_ABI_CWindows_CMedia_CMediaProperties_CStereoscopicVideoPackingMode __x_ABI_CWindows_CMedia_CMediaProperties_CStereoscopicVideoPackingMode;

#ifndef ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CIMediaTimelineController __x_ABI_CWindows_CMedia_CIMediaTimelineController;

#endif // ____x_ABI_CWindows_CMedia_CIMediaTimelineController_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CIMusicDisplayProperties __x_ABI_CWindows_CMedia_CIMusicDisplayProperties;

#endif // ____x_ABI_CWindows_CMedia_CIMusicDisplayProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager;

#endif // ____x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CISystemMediaTransportControls __x_ABI_CWindows_CMedia_CISystemMediaTransportControls;

#endif // ____x_ABI_CWindows_CMedia_CISystemMediaTransportControls_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CIVideoDisplayProperties __x_ABI_CWindows_CMedia_CIVideoDisplayProperties;

#endif // ____x_ABI_CWindows_CMedia_CIVideoDisplayProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CStorage_CIStorageFile __x_ABI_CWindows_CStorage_CIStorageFile;

#endif // ____x_ABI_CWindows_CStorage_CIStorageFile_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream;

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference;

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CComposition_CICompositor __x_ABI_CWindows_CUI_CComposition_CICompositor;

#endif // ____x_ABI_CWindows_CUI_CComposition_CICompositor_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__
#define ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CUI_CComposition_CICompositionSurface __x_ABI_CWindows_CUI_CComposition_CICompositionSurface;

#endif // ____x_ABI_CWindows_CUI_CComposition_CICompositionSurface_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CAutoLoadedDisplayPropertyKind __x_ABI_CWindows_CMedia_CPlayback_CAutoLoadedDisplayPropertyKind;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaCommandEnablingRule __x_ABI_CWindows_CMedia_CPlayback_CMediaCommandEnablingRule;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemChangedReason __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemChangedReason;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemErrorCode __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemErrorCode;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackSessionVideoConstrictionReason __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackSessionVideoConstrictionReason;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackState __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackState;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioCategory __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioCategory;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioDeviceType __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioDeviceType;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerError __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerError;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerState __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerState;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CSphericalVideoProjectionMode __x_ABI_CWindows_CMedia_CPlayback_CSphericalVideoProjectionMode;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CStereoscopicVideoRenderMode __x_ABI_CWindows_CMedia_CPlayback_CStereoscopicVideoRenderMode;

typedef enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode;

/*
 *
 * Struct Windows.Media.Playback.AutoLoadedDisplayPropertyKind
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
enum __x_ABI_CWindows_CMedia_CPlayback_CAutoLoadedDisplayPropertyKind
{
    AutoLoadedDisplayPropertyKind_None = 0,
    AutoLoadedDisplayPropertyKind_MusicOrVideo = 1,
    AutoLoadedDisplayPropertyKind_Music = 2,
    AutoLoadedDisplayPropertyKind_Video = 3,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.FailedMediaStreamKind
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CFailedMediaStreamKind
{
    FailedMediaStreamKind_Unknown = 0,
    FailedMediaStreamKind_Audio = 1,
    FailedMediaStreamKind_Video = 2,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaBreakInsertionMethod
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod
{
    MediaBreakInsertionMethod_Interrupt = 0,
    MediaBreakInsertionMethod_Replace = 1,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaCommandEnablingRule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaCommandEnablingRule
{
    MediaCommandEnablingRule_Auto = 0,
    MediaCommandEnablingRule_Always = 1,
    MediaCommandEnablingRule_Never = 2,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackItemChangedReason
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemChangedReason
{
    MediaPlaybackItemChangedReason_InitialItem = 0,
    MediaPlaybackItemChangedReason_EndOfStream = 1,
    MediaPlaybackItemChangedReason_Error = 2,
    MediaPlaybackItemChangedReason_AppRequested = 3,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackItemErrorCode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemErrorCode
{
    MediaPlaybackItemErrorCode_None = 0,
    MediaPlaybackItemErrorCode_Aborted = 1,
    MediaPlaybackItemErrorCode_NetworkError = 2,
    MediaPlaybackItemErrorCode_DecodeError = 3,
    MediaPlaybackItemErrorCode_SourceNotSupportedError = 4,
    MediaPlaybackItemErrorCode_EncryptionError = 5,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackSessionVideoConstrictionReason
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackSessionVideoConstrictionReason
{
    MediaPlaybackSessionVideoConstrictionReason_None = 0,
    MediaPlaybackSessionVideoConstrictionReason_VirtualMachine = 1,
    MediaPlaybackSessionVideoConstrictionReason_UnsupportedDisplayAdapter = 2,
    MediaPlaybackSessionVideoConstrictionReason_UnsignedDriver = 3,
    MediaPlaybackSessionVideoConstrictionReason_FrameServerEnabled = 4,
    MediaPlaybackSessionVideoConstrictionReason_OutputProtectionFailed = 5,
    MediaPlaybackSessionVideoConstrictionReason_Unknown = 6,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Struct Windows.Media.Playback.MediaPlaybackState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackState
{
    MediaPlaybackState_None = 0,
    MediaPlaybackState_Opening = 1,
    MediaPlaybackState_Buffering = 2,
    MediaPlaybackState_Playing = 3,
    MediaPlaybackState_Paused = 4,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerAudioCategory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioCategory
{
    MediaPlayerAudioCategory_Other = 0,
    MediaPlayerAudioCategory_Communications = 3,
    MediaPlayerAudioCategory_Alerts = 4,
    MediaPlayerAudioCategory_SoundEffects = 5,
    MediaPlayerAudioCategory_GameEffects = 6,
    MediaPlayerAudioCategory_GameMedia = 7,
    MediaPlayerAudioCategory_GameChat = 8,
    MediaPlayerAudioCategory_Speech = 9,
    MediaPlayerAudioCategory_Movie = 10,
    MediaPlayerAudioCategory_Media = 11,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerAudioDeviceType
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioDeviceType
{
    MediaPlayerAudioDeviceType_Console = 0,
    MediaPlayerAudioDeviceType_Multimedia = 1,
    MediaPlayerAudioDeviceType_Communications = 2,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerError
{
    MediaPlayerError_Unknown = 0,
    MediaPlayerError_Aborted = 1,
    MediaPlayerError_NetworkError = 2,
    MediaPlayerError_DecodingError = 3,
    MediaPlayerError_SourceNotSupported = 4,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.MediaPlayerState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
DEPRECATED("Use MediaPlaybackState instead of MediaPlayerState.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
__x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerState
{
    MediaPlayerState_Closed = 0,
    MediaPlayerState_Opening = 1,
    MediaPlayerState_Buffering = 2,
    MediaPlayerState_Playing = 3,
    MediaPlayerState_Paused = 4,
    MediaPlayerState_Stopped = 5,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Struct Windows.Media.Playback.SphericalVideoProjectionMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
enum __x_ABI_CWindows_CMedia_CPlayback_CSphericalVideoProjectionMode
{
    SphericalVideoProjectionMode_Spherical = 0,
    SphericalVideoProjectionMode_Flat = 1,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Struct Windows.Media.Playback.StereoscopicVideoRenderMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
enum __x_ABI_CWindows_CMedia_CPlayback_CStereoscopicVideoRenderMode
{
    StereoscopicVideoRenderMode_Mono = 0,
    StereoscopicVideoRenderMode_Stereo = 1,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Struct Windows.Media.Playback.TimedMetadataTrackPresentationMode
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode
{
    TimedMetadataTrackPresentationMode_Disabled = 0,
    TimedMetadataTrackPresentationMode_Hidden = 1,
    TimedMetadataTrackPresentationMode_ApplicationPresented = 2,
    TimedMetadataTrackPresentationMode_PlatformPresented = 3,
};
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IBackgroundMediaPlayerStatics
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.BackgroundMediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IBackgroundMediaPlayerStatics[] = L"Windows.Media.Playback.IBackgroundMediaPlayerStatics";
typedef struct
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStaticsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        TrustLevel* trustLevel);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer** player);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* add_MessageReceivedFromBackground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* remove_MessageReceivedFromBackground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* add_MessageReceivedFromForeground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        __FIEventHandler_1_Windows__CMedia__CPlayback__CMediaPlayerDataReceivedEventArgs* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* remove_MessageReceivedFromForeground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* SendMessageToBackground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* SendMessageToForeground)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* IsMediaPlaying)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This,
        boolean* isMediaPlaying);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    HRESULT (STDMETHODCALLTYPE* Shutdown)(__x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics* This);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStaticsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_get_Current(This, player) \
    ((This)->lpVtbl->get_Current(This, player))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_add_MessageReceivedFromBackground(This, value, token) \
    ((This)->lpVtbl->add_MessageReceivedFromBackground(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_remove_MessageReceivedFromBackground(This, token) \
    ((This)->lpVtbl->remove_MessageReceivedFromBackground(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_add_MessageReceivedFromForeground(This, value, token) \
    ((This)->lpVtbl->add_MessageReceivedFromForeground(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_remove_MessageReceivedFromForeground(This, token) \
    ((This)->lpVtbl->remove_MessageReceivedFromForeground(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_SendMessageToBackground(This, value) \
    ((This)->lpVtbl->SendMessageToBackground(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_SendMessageToForeground(This, value) \
    ((This)->lpVtbl->SendMessageToForeground(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_IsMediaPlaying(This, isMediaPlaying) \
    ((This)->lpVtbl->IsMediaPlaying(This, isMediaPlaying))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
    DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#define __x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_Shutdown(This) \
    ((This)->lpVtbl->Shutdown(This))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIBackgroundMediaPlayerStatics_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ICurrentMediaPlaybackItemChangedEventArgs[] = L"Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_NewItem)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* get_OldItem)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_get_NewItem(This, value) \
    ((This)->lpVtbl->get_NewItem(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_get_OldItem(This, value) \
    ((This)->lpVtbl->get_OldItem(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ICurrentMediaPlaybackItemChangedEventArgs2[] = L"Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Reason)(__x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemChangedReason* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_get_Reason(This, value) \
    ((This)->lpVtbl->get_Reason(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CICurrentMediaPlaybackItemChangedEventArgs2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreak
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreak
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreak[] = L"Windows.Media.Playback.IMediaBreak";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackList)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList** value);
    HRESULT (STDMETHODCALLTYPE* get_PresentationPosition)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        __FIReference_1_Windows__CFoundation__CTimeSpan** value);
    HRESULT (STDMETHODCALLTYPE* get_InsertionMethod)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod* value);
    HRESULT (STDMETHODCALLTYPE* get_CustomProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet** value);
    HRESULT (STDMETHODCALLTYPE* get_CanStart)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_CanStart)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* This,
        boolean value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_get_PlaybackList(This, value) \
    ((This)->lpVtbl->get_PlaybackList(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_get_PresentationPosition(This, value) \
    ((This)->lpVtbl->get_PresentationPosition(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_get_InsertionMethod(This, value) \
    ((This)->lpVtbl->get_InsertionMethod(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_get_CustomProperties(This, value) \
    ((This)->lpVtbl->get_CustomProperties(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_get_CanStart(This, value) \
    ((This)->lpVtbl->get_CanStart(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_put_CanStart(This, value) \
    ((This)->lpVtbl->put_CanStart(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakEndedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakEndedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakEndedEventArgs[] = L"Windows.Media.Playback.IMediaBreakEndedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_MediaBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_get_MediaBreak(This, value) \
    ((This)->lpVtbl->get_MediaBreak(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakEndedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreak
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakFactory[] = L"Windows.Media.Playback.IMediaBreakFactory";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactoryVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod insertionMethod,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithPresentationPosition)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaBreakInsertionMethod insertionMethod,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan presentationPosition,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** result);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactoryVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_Create(This, insertionMethod, result) \
    ((This)->lpVtbl->Create(This, insertionMethod, result))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_CreateWithPresentationPosition(This, insertionMethod, presentationPosition, result) \
    ((This)->lpVtbl->CreateWithPresentationPosition(This, insertionMethod, presentationPosition, result))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakManager
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakManager[] = L"Windows.Media.Playback.IMediaBreakManager";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManagerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_BreaksSeekedOver)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSeekedOverEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BreaksSeekedOver)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BreakStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakStartedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BreakStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BreakEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakEndedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BreakEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BreakSkipped)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakManager_Windows__CMedia__CPlayback__CMediaBreakSkippedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BreakSkipped)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_CurrentBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackSession)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession** value);
    HRESULT (STDMETHODCALLTYPE* PlayBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* value);
    HRESULT (STDMETHODCALLTYPE* SkipCurrentBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager* This);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManagerVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManagerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_add_BreaksSeekedOver(This, handler, token) \
    ((This)->lpVtbl->add_BreaksSeekedOver(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_remove_BreaksSeekedOver(This, token) \
    ((This)->lpVtbl->remove_BreaksSeekedOver(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_add_BreakStarted(This, handler, token) \
    ((This)->lpVtbl->add_BreakStarted(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_remove_BreakStarted(This, token) \
    ((This)->lpVtbl->remove_BreakStarted(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_add_BreakEnded(This, handler, token) \
    ((This)->lpVtbl->add_BreakEnded(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_remove_BreakEnded(This, token) \
    ((This)->lpVtbl->remove_BreakEnded(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_add_BreakSkipped(This, handler, token) \
    ((This)->lpVtbl->add_BreakSkipped(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_remove_BreakSkipped(This, token) \
    ((This)->lpVtbl->remove_BreakSkipped(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_get_CurrentBreak(This, value) \
    ((This)->lpVtbl->get_CurrentBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_get_PlaybackSession(This, value) \
    ((This)->lpVtbl->get_PlaybackSession(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_PlayBreak(This, value) \
    ((This)->lpVtbl->PlayBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_SkipCurrentBreak(This) \
    ((This)->lpVtbl->SkipCurrentBreak(This))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSchedule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSchedule
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSchedule[] = L"Windows.Media.Playback.IMediaBreakSchedule";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakScheduleVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_ScheduleChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaBreakSchedule_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ScheduleChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* InsertMidrollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* mediaBreak);
    HRESULT (STDMETHODCALLTYPE* RemoveMidrollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* mediaBreak);
    HRESULT (STDMETHODCALLTYPE* get_MidrollBreaks)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak** value);
    HRESULT (STDMETHODCALLTYPE* put_PrerollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* value);
    HRESULT (STDMETHODCALLTYPE* get_PrerollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);
    HRESULT (STDMETHODCALLTYPE* put_PostrollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak* value);
    HRESULT (STDMETHODCALLTYPE* get_PostrollBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackItem)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakScheduleVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakScheduleVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_add_ScheduleChanged(This, handler, token) \
    ((This)->lpVtbl->add_ScheduleChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_remove_ScheduleChanged(This, token) \
    ((This)->lpVtbl->remove_ScheduleChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_InsertMidrollBreak(This, mediaBreak) \
    ((This)->lpVtbl->InsertMidrollBreak(This, mediaBreak))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_RemoveMidrollBreak(This, mediaBreak) \
    ((This)->lpVtbl->RemoveMidrollBreak(This, mediaBreak))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_get_MidrollBreaks(This, value) \
    ((This)->lpVtbl->get_MidrollBreaks(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_put_PrerollBreak(This, value) \
    ((This)->lpVtbl->put_PrerollBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_get_PrerollBreak(This, value) \
    ((This)->lpVtbl->get_PrerollBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_put_PostrollBreak(This, value) \
    ((This)->lpVtbl->put_PostrollBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_get_PostrollBreak(This, value) \
    ((This)->lpVtbl->get_PostrollBreak(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_get_PlaybackItem(This, value) \
    ((This)->lpVtbl->get_PlaybackItem(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSeekedOverEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSeekedOverEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSeekedOverEventArgs[] = L"Windows.Media.Playback.IMediaBreakSeekedOverEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_SeekedOverBreaks)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaBreak** value);
    HRESULT (STDMETHODCALLTYPE* get_OldPosition)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* get_NewPosition)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_get_SeekedOverBreaks(This, value) \
    ((This)->lpVtbl->get_SeekedOverBreaks(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_get_OldPosition(This, value) \
    ((This)->lpVtbl->get_OldPosition(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_get_NewPosition(This, value) \
    ((This)->lpVtbl->get_NewPosition(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSeekedOverEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakSkippedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakSkippedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakSkippedEventArgs[] = L"Windows.Media.Playback.IMediaBreakSkippedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_MediaBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_get_MediaBreak(This, value) \
    ((This)->lpVtbl->get_MediaBreak(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSkippedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaBreakStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaBreakStartedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaBreakStartedEventArgs[] = L"Windows.Media.Playback.IMediaBreakStartedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_MediaBreak)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreak** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_get_MediaBreak(This, value) \
    ((This)->lpVtbl->get_MediaBreak(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakStartedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaEnginePlaybackSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaEnginePlaybackSource[] = L"Windows.Media.Playback.IMediaEnginePlaybackSource";
typedef struct
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSourceVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        TrustLevel* trustLevel);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_CurrentItem)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* SetPlaybackSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* source);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSourceVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSourceVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_get_CurrentItem(This, value) \
    ((This)->lpVtbl->get_CurrentItem(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use MediaPlayer instead of MediaEngine. For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_SetPlaybackSource(This, source) \
    ((This)->lpVtbl->SetPlaybackSource(This, source))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaEnginePlaybackSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaItemDisplayProperties
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaItemDisplayProperties
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaItemDisplayProperties[] = L"Windows.Media.Playback.IMediaItemDisplayProperties";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayPropertiesVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Type)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        enum __x_ABI_CWindows_CMedia_CMediaPlaybackType* value);
    HRESULT (STDMETHODCALLTYPE* put_Type)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        enum __x_ABI_CWindows_CMedia_CMediaPlaybackType value);
    HRESULT (STDMETHODCALLTYPE* get_MusicProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        __x_ABI_CWindows_CMedia_CIMusicDisplayProperties** value);
    HRESULT (STDMETHODCALLTYPE* get_VideoProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        __x_ABI_CWindows_CMedia_CIVideoDisplayProperties** value);
    HRESULT (STDMETHODCALLTYPE* get_Thumbnail)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference** value);
    HRESULT (STDMETHODCALLTYPE* put_Thumbnail)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This,
        __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference* value);
    HRESULT (STDMETHODCALLTYPE* ClearAll)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* This);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayPropertiesVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayPropertiesVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_get_Type(This, value) \
    ((This)->lpVtbl->get_Type(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_put_Type(This, value) \
    ((This)->lpVtbl->put_Type(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_get_MusicProperties(This, value) \
    ((This)->lpVtbl->get_MusicProperties(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_get_VideoProperties(This, value) \
    ((This)->lpVtbl->get_VideoProperties(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_get_Thumbnail(This, value) \
    ((This)->lpVtbl->get_Thumbnail(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_put_Thumbnail(This, value) \
    ((This)->lpVtbl->put_Thumbnail(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_ClearAll(This) \
    ((This)->lpVtbl->ClearAll(This))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManager
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManager[] = L"Windows.Media.Playback.IMediaPlaybackCommandManager";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_IsEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_MediaPlayer)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer** value);
    HRESULT (STDMETHODCALLTYPE* get_PlayBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_PauseBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_NextBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_PreviousBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_FastForwardBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_RewindBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_ShuffleBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_AutoRepeatModeBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_PositionBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* get_RateBehavior)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior** value);
    HRESULT (STDMETHODCALLTYPE* add_PlayReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPlayReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PlayReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PauseReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPauseReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PauseReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_NextReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerNextReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_NextReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PreviousReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPreviousReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PreviousReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_FastForwardReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerFastForwardReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_FastForwardReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_RewindReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRewindReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_RewindReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_ShuffleReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerShuffleReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ShuffleReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_AutoRepeatModeReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_AutoRepeatModeReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PositionReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerPositionReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PositionReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_RateReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManager_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerRateReceivedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_RateReceived)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager* This,
        EventRegistrationToken token);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_IsEnabled(This, value) \
    ((This)->lpVtbl->get_IsEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_put_IsEnabled(This, value) \
    ((This)->lpVtbl->put_IsEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_MediaPlayer(This, value) \
    ((This)->lpVtbl->get_MediaPlayer(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_PlayBehavior(This, value) \
    ((This)->lpVtbl->get_PlayBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_PauseBehavior(This, value) \
    ((This)->lpVtbl->get_PauseBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_NextBehavior(This, value) \
    ((This)->lpVtbl->get_NextBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_PreviousBehavior(This, value) \
    ((This)->lpVtbl->get_PreviousBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_FastForwardBehavior(This, value) \
    ((This)->lpVtbl->get_FastForwardBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_RewindBehavior(This, value) \
    ((This)->lpVtbl->get_RewindBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_ShuffleBehavior(This, value) \
    ((This)->lpVtbl->get_ShuffleBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_AutoRepeatModeBehavior(This, value) \
    ((This)->lpVtbl->get_AutoRepeatModeBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_PositionBehavior(This, value) \
    ((This)->lpVtbl->get_PositionBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_get_RateBehavior(This, value) \
    ((This)->lpVtbl->get_RateBehavior(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_PlayReceived(This, handler, token) \
    ((This)->lpVtbl->add_PlayReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_PlayReceived(This, token) \
    ((This)->lpVtbl->remove_PlayReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_PauseReceived(This, handler, token) \
    ((This)->lpVtbl->add_PauseReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_PauseReceived(This, token) \
    ((This)->lpVtbl->remove_PauseReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_NextReceived(This, handler, token) \
    ((This)->lpVtbl->add_NextReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_NextReceived(This, token) \
    ((This)->lpVtbl->remove_NextReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_PreviousReceived(This, handler, token) \
    ((This)->lpVtbl->add_PreviousReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_PreviousReceived(This, token) \
    ((This)->lpVtbl->remove_PreviousReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_FastForwardReceived(This, handler, token) \
    ((This)->lpVtbl->add_FastForwardReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_FastForwardReceived(This, token) \
    ((This)->lpVtbl->remove_FastForwardReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_RewindReceived(This, handler, token) \
    ((This)->lpVtbl->add_RewindReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_RewindReceived(This, token) \
    ((This)->lpVtbl->remove_RewindReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_ShuffleReceived(This, handler, token) \
    ((This)->lpVtbl->add_ShuffleReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_ShuffleReceived(This, token) \
    ((This)->lpVtbl->remove_ShuffleReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_AutoRepeatModeReceived(This, handler, token) \
    ((This)->lpVtbl->add_AutoRepeatModeReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_AutoRepeatModeReceived(This, token) \
    ((This)->lpVtbl->remove_AutoRepeatModeReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_PositionReceived(This, handler, token) \
    ((This)->lpVtbl->add_PositionReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_PositionReceived(This, token) \
    ((This)->lpVtbl->remove_PositionReceived(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_add_RateReceived(This, handler, token) \
    ((This)->lpVtbl->add_RateReceived(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_remove_RateReceived(This, token) \
    ((This)->lpVtbl->remove_RateReceived(This, token))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_AutoRepeatMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        enum __x_ABI_CWindows_CMedia_CMediaPlaybackAutoRepeatMode* value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_get_AutoRepeatMode(This, value) \
    ((This)->lpVtbl->get_AutoRepeatMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerCommandBehavior[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehaviorVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_CommandManager)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager** value);
    HRESULT (STDMETHODCALLTYPE* get_IsEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_EnablingRule)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaCommandEnablingRule* value);
    HRESULT (STDMETHODCALLTYPE* put_EnablingRule)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaCommandEnablingRule value);
    HRESULT (STDMETHODCALLTYPE* add_IsEnabledChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackCommandManagerCommandBehavior_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_IsEnabledChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior* This,
        EventRegistrationToken token);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehaviorVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehaviorVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_get_CommandManager(This, value) \
    ((This)->lpVtbl->get_CommandManager(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_get_IsEnabled(This, value) \
    ((This)->lpVtbl->get_IsEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_get_EnablingRule(This, value) \
    ((This)->lpVtbl->get_EnablingRule(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_put_EnablingRule(This, value) \
    ((This)->lpVtbl->put_EnablingRule(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_add_IsEnabledChanged(This, handler, token) \
    ((This)->lpVtbl->add_IsEnabledChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_remove_IsEnabledChanged(This, token) \
    ((This)->lpVtbl->remove_IsEnabledChanged(This, token))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerCommandBehavior_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerFastForwardReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerFastForwardReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerNextReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerNextReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPauseReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPauseReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPlayReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPlayReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPositionReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_Position)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_get_Position(This, value) \
    ((This)->lpVtbl->get_Position(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPositionReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerPreviousReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerPreviousReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerRateReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_get_PlaybackRate(This, value) \
    ((This)->lpVtbl->get_PlaybackRate(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRateReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerRewindReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerRewindReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackCommandManagerShuffleReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Handled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_IsShuffleRequested)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_get_Handled(This, value) \
    ((This)->lpVtbl->get_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_put_Handled(This, value) \
    ((This)->lpVtbl->put_Handled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_get_IsShuffleRequested(This, value) \
    ((This)->lpVtbl->get_IsShuffleRequested(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_GetDeferral(This, value) \
    ((This)->lpVtbl->GetDeferral(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManagerShuffleReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem[] = L"Windows.Media.Playback.IMediaPlaybackItem";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_AudioTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_AudioTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_VideoTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_VideoTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_TimedMetadataTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackItem___F__CIVectorChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_TimedMetadataTracksChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_Source)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource2** value);
    HRESULT (STDMETHODCALLTYPE* get_AudioTracks)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FIVectorView_1_Windows__CMedia__CCore__CAudioTrack** value);
    HRESULT (STDMETHODCALLTYPE* get_VideoTracks)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FIVectorView_1_Windows__CMedia__CCore__CVideoTrack** value);
    HRESULT (STDMETHODCALLTYPE* get_TimedMetadataTracks)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* This,
        __FIVectorView_1_Windows__CMedia__CCore__CTimedMetadataTrack** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_add_AudioTracksChanged(This, handler, token) \
    ((This)->lpVtbl->add_AudioTracksChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_remove_AudioTracksChanged(This, token) \
    ((This)->lpVtbl->remove_AudioTracksChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_add_VideoTracksChanged(This, handler, token) \
    ((This)->lpVtbl->add_VideoTracksChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_remove_VideoTracksChanged(This, token) \
    ((This)->lpVtbl->remove_VideoTracksChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_add_TimedMetadataTracksChanged(This, handler, token) \
    ((This)->lpVtbl->add_TimedMetadataTracksChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_remove_TimedMetadataTracksChanged(This, token) \
    ((This)->lpVtbl->remove_TimedMetadataTracksChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_get_Source(This, value) \
    ((This)->lpVtbl->get_Source(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_get_AudioTracks(This, value) \
    ((This)->lpVtbl->get_AudioTracks(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_get_VideoTracks(This, value) \
    ((This)->lpVtbl->get_VideoTracks(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_get_TimedMetadataTracks(This, value) \
    ((This)->lpVtbl->get_TimedMetadataTracks(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItem
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem2[] = L"Windows.Media.Playback.IMediaPlaybackItem2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_BreakSchedule)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakSchedule** value);
    HRESULT (STDMETHODCALLTYPE* get_StartTime)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* get_DurationLimit)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        __FIReference_1_Windows__CFoundation__CTimeSpan** value);
    HRESULT (STDMETHODCALLTYPE* get_CanSkip)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_CanSkip)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetDisplayProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties** value);
    HRESULT (STDMETHODCALLTYPE* ApplyDisplayProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaItemDisplayProperties* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_get_BreakSchedule(This, value) \
    ((This)->lpVtbl->get_BreakSchedule(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_get_StartTime(This, value) \
    ((This)->lpVtbl->get_StartTime(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_get_DurationLimit(This, value) \
    ((This)->lpVtbl->get_DurationLimit(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_get_CanSkip(This, value) \
    ((This)->lpVtbl->get_CanSkip(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_put_CanSkip(This, value) \
    ((This)->lpVtbl->put_CanSkip(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_GetDisplayProperties(This, value) \
    ((This)->lpVtbl->GetDisplayProperties(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_ApplyDisplayProperties(This, value) \
    ((This)->lpVtbl->ApplyDisplayProperties(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItem3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItem2
 *     Windows.Media.Playback.IMediaPlaybackItem
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItem3[] = L"Windows.Media.Playback.IMediaPlaybackItem3";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_IsDisabledInPlaybackList)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsDisabledInPlaybackList)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_TotalDownloadProgress)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* get_AutoLoadedDisplayProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CAutoLoadedDisplayPropertyKind* value);
    HRESULT (STDMETHODCALLTYPE* put_AutoLoadedDisplayProperties)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CAutoLoadedDisplayPropertyKind value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_get_IsDisabledInPlaybackList(This, value) \
    ((This)->lpVtbl->get_IsDisabledInPlaybackList(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_put_IsDisabledInPlaybackList(This, value) \
    ((This)->lpVtbl->put_IsDisabledInPlaybackList(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_get_TotalDownloadProgress(This, value) \
    ((This)->lpVtbl->get_TotalDownloadProgress(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_get_AutoLoadedDisplayProperties(This, value) \
    ((This)->lpVtbl->get_AutoLoadedDisplayProperties(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_put_AutoLoadedDisplayProperties(This, value) \
    ((This)->lpVtbl->put_AutoLoadedDisplayProperties(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemError
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemError[] = L"Windows.Media.Playback.IMediaPlaybackItemError";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemErrorVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_ErrorCode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackItemErrorCode* value);
    HRESULT (STDMETHODCALLTYPE* get_ExtendedError)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError* This,
        HRESULT* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemErrorVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemErrorVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_get_ErrorCode(This, value) \
    ((This)->lpVtbl->get_ErrorCode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_get_ExtendedError(This, value) \
    ((This)->lpVtbl->get_ExtendedError(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFactory[] = L"Windows.Media.Playback.IMediaPlaybackItemFactory";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactoryVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource2* source,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactoryVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_Create(This, source, value) \
    ((This)->lpVtbl->Create(This, source, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFactory2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackItemFactory
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFactory2[] = L"Windows.Media.Playback.IMediaPlaybackItemFactory2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* CreateWithStartTime)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource2* source,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan startTime,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithStartTimeAndDurationLimit)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource2* source,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan startTime,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan durationLimit,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** result);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_CreateWithStartTime(This, source, startTime, result) \
    ((This)->lpVtbl->CreateWithStartTime(This, source, startTime, result))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_CreateWithStartTimeAndDurationLimit(This, source, startTime, durationLimit, result) \
    ((This)->lpVtbl->CreateWithStartTimeAndDurationLimit(This, source, startTime, durationLimit, result))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFactory2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemFailedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemFailedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Item)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* get_Error)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemError** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_get_Item(This, value) \
    ((This)->lpVtbl->get_Item(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_get_Error(This, value) \
    ((This)->lpVtbl->get_Error(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemFailedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemOpenedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Item)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_get_Item(This, value) \
    ((This)->lpVtbl->get_Item(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemOpenedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackItemStatics
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackItem
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackItemStatics[] = L"Windows.Media.Playback.IMediaPlaybackItemStatics";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStaticsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* FindFromMediaSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource2* source,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStaticsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_FindFromMediaSource(This, source, value) \
    ((This)->lpVtbl->FindFromMediaSource(This, source, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItemStatics_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList[] = L"Windows.Media.Playback.IMediaPlaybackList";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackListVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_ItemFailed)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemFailedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ItemFailed)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_CurrentItemChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CCurrentMediaPlaybackItemChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_CurrentItemChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_ItemOpened)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackList_Windows__CMedia__CPlayback__CMediaPlaybackItemOpenedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ItemOpened)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_Items)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __FIObservableVector_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* get_AutoRepeatEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_AutoRepeatEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_ShuffleEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_ShuffleEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_CurrentItem)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* get_CurrentItemIndex)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** item);
    HRESULT (STDMETHODCALLTYPE* MovePrevious)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** item);
    HRESULT (STDMETHODCALLTYPE* MoveTo)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList* This,
        UINT32 itemIndex,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** item);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackListVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackListVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_add_ItemFailed(This, handler, token) \
    ((This)->lpVtbl->add_ItemFailed(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_remove_ItemFailed(This, token) \
    ((This)->lpVtbl->remove_ItemFailed(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_add_CurrentItemChanged(This, handler, token) \
    ((This)->lpVtbl->add_CurrentItemChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_remove_CurrentItemChanged(This, token) \
    ((This)->lpVtbl->remove_CurrentItemChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_add_ItemOpened(This, handler, token) \
    ((This)->lpVtbl->add_ItemOpened(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_remove_ItemOpened(This, token) \
    ((This)->lpVtbl->remove_ItemOpened(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_get_Items(This, value) \
    ((This)->lpVtbl->get_Items(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_get_AutoRepeatEnabled(This, value) \
    ((This)->lpVtbl->get_AutoRepeatEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_put_AutoRepeatEnabled(This, value) \
    ((This)->lpVtbl->put_AutoRepeatEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_get_ShuffleEnabled(This, value) \
    ((This)->lpVtbl->get_ShuffleEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_put_ShuffleEnabled(This, value) \
    ((This)->lpVtbl->put_ShuffleEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_get_CurrentItem(This, value) \
    ((This)->lpVtbl->get_CurrentItem(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_get_CurrentItemIndex(This, value) \
    ((This)->lpVtbl->get_CurrentItemIndex(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_MoveNext(This, item) \
    ((This)->lpVtbl->MoveNext(This, item))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_MovePrevious(This, item) \
    ((This)->lpVtbl->MovePrevious(This, item))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_MoveTo(This, itemIndex, item) \
    ((This)->lpVtbl->MoveTo(This, itemIndex, item))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackList
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList2[] = L"Windows.Media.Playback.IMediaPlaybackList2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_MaxPrefetchTime)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __FIReference_1_Windows__CFoundation__CTimeSpan** value);
    HRESULT (STDMETHODCALLTYPE* put_MaxPrefetchTime)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __FIReference_1_Windows__CFoundation__CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* get_StartingItem)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* put_StartingItem)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackItem* value);
    HRESULT (STDMETHODCALLTYPE* get_ShuffledItems)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __FIVectorView_1_Windows__CMedia__CPlayback__CMediaPlaybackItem** value);
    HRESULT (STDMETHODCALLTYPE* SetShuffledItems)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2* This,
        __FIIterable_1_Windows__CMedia__CPlayback__CMediaPlaybackItem* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_get_MaxPrefetchTime(This, value) \
    ((This)->lpVtbl->get_MaxPrefetchTime(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_put_MaxPrefetchTime(This, value) \
    ((This)->lpVtbl->put_MaxPrefetchTime(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_get_StartingItem(This, value) \
    ((This)->lpVtbl->get_StartingItem(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_put_StartingItem(This, value) \
    ((This)->lpVtbl->put_StartingItem(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_get_ShuffledItems(This, value) \
    ((This)->lpVtbl->get_ShuffledItems(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_SetShuffledItems(This, value) \
    ((This)->lpVtbl->SetShuffledItems(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackList3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackList
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Media.Playback.IMediaPlaybackList2
 *     Windows.Media.Playback.IMediaPlaybackList
 *     Windows.Media.Playback.IMediaPlaybackSource
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackList3[] = L"Windows.Media.Playback.IMediaPlaybackList3";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_MaxPlayedItemsToKeepOpen)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        __FIReference_1_UINT32** value);
    HRESULT (STDMETHODCALLTYPE* put_MaxPlayedItemsToKeepOpen)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3* This,
        __FIReference_1_UINT32* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_get_MaxPlayedItemsToKeepOpen(This, value) \
    ((This)->lpVtbl->get_MaxPlayedItemsToKeepOpen(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_put_MaxPlayedItemsToKeepOpen(This, value) \
    ((This)->lpVtbl->put_MaxPlayedItemsToKeepOpen(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackList3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession[] = L"Windows.Media.Playback.IMediaPlaybackSession";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_PlaybackStateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PlaybackStateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PlaybackRateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PlaybackRateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_SeekCompleted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SeekCompleted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BufferingStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BufferingStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BufferingEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BufferingEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_BufferingProgressChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BufferingProgressChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_DownloadProgressChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_DownloadProgressChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_NaturalDurationChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_NaturalDurationChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PositionChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PositionChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_NaturalVideoSizeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_NaturalVideoSizeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_MediaPlayer)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer** value);
    HRESULT (STDMETHODCALLTYPE* get_NaturalDuration)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* get_Position)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* put_Position)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackState)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackState* value);
    HRESULT (STDMETHODCALLTYPE* get_CanSeek)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_CanPause)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_IsProtected)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* put_PlaybackRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        DOUBLE value);
    HRESULT (STDMETHODCALLTYPE* get_BufferingProgress)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* get_DownloadProgress)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* get_NaturalVideoHeight)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* get_NaturalVideoWidth)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* get_NormalizedSourceRect)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        struct __x_ABI_CWindows_CFoundation_CRect* value);
    HRESULT (STDMETHODCALLTYPE* put_NormalizedSourceRect)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        struct __x_ABI_CWindows_CFoundation_CRect value);
    HRESULT (STDMETHODCALLTYPE* get_StereoscopicVideoPackingMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CStereoscopicVideoPackingMode* value);
    HRESULT (STDMETHODCALLTYPE* put_StereoscopicVideoPackingMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CStereoscopicVideoPackingMode value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_PlaybackStateChanged(This, value, token) \
    ((This)->lpVtbl->add_PlaybackStateChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_PlaybackStateChanged(This, token) \
    ((This)->lpVtbl->remove_PlaybackStateChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_PlaybackRateChanged(This, value, token) \
    ((This)->lpVtbl->add_PlaybackRateChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_PlaybackRateChanged(This, token) \
    ((This)->lpVtbl->remove_PlaybackRateChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_SeekCompleted(This, value, token) \
    ((This)->lpVtbl->add_SeekCompleted(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_SeekCompleted(This, token) \
    ((This)->lpVtbl->remove_SeekCompleted(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_BufferingStarted(This, value, token) \
    ((This)->lpVtbl->add_BufferingStarted(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_BufferingStarted(This, token) \
    ((This)->lpVtbl->remove_BufferingStarted(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_BufferingEnded(This, value, token) \
    ((This)->lpVtbl->add_BufferingEnded(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_BufferingEnded(This, token) \
    ((This)->lpVtbl->remove_BufferingEnded(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_BufferingProgressChanged(This, value, token) \
    ((This)->lpVtbl->add_BufferingProgressChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_BufferingProgressChanged(This, token) \
    ((This)->lpVtbl->remove_BufferingProgressChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_DownloadProgressChanged(This, value, token) \
    ((This)->lpVtbl->add_DownloadProgressChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_DownloadProgressChanged(This, token) \
    ((This)->lpVtbl->remove_DownloadProgressChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_NaturalDurationChanged(This, value, token) \
    ((This)->lpVtbl->add_NaturalDurationChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_NaturalDurationChanged(This, token) \
    ((This)->lpVtbl->remove_NaturalDurationChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_PositionChanged(This, value, token) \
    ((This)->lpVtbl->add_PositionChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_PositionChanged(This, token) \
    ((This)->lpVtbl->remove_PositionChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_add_NaturalVideoSizeChanged(This, value, token) \
    ((This)->lpVtbl->add_NaturalVideoSizeChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_remove_NaturalVideoSizeChanged(This, token) \
    ((This)->lpVtbl->remove_NaturalVideoSizeChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_MediaPlayer(This, value) \
    ((This)->lpVtbl->get_MediaPlayer(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_NaturalDuration(This, value) \
    ((This)->lpVtbl->get_NaturalDuration(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_Position(This, value) \
    ((This)->lpVtbl->get_Position(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_put_Position(This, value) \
    ((This)->lpVtbl->put_Position(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_PlaybackState(This, value) \
    ((This)->lpVtbl->get_PlaybackState(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_CanSeek(This, value) \
    ((This)->lpVtbl->get_CanSeek(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_CanPause(This, value) \
    ((This)->lpVtbl->get_CanPause(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_IsProtected(This, value) \
    ((This)->lpVtbl->get_IsProtected(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_PlaybackRate(This, value) \
    ((This)->lpVtbl->get_PlaybackRate(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_put_PlaybackRate(This, value) \
    ((This)->lpVtbl->put_PlaybackRate(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_BufferingProgress(This, value) \
    ((This)->lpVtbl->get_BufferingProgress(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_DownloadProgress(This, value) \
    ((This)->lpVtbl->get_DownloadProgress(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_NaturalVideoHeight(This, value) \
    ((This)->lpVtbl->get_NaturalVideoHeight(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_NaturalVideoWidth(This, value) \
    ((This)->lpVtbl->get_NaturalVideoWidth(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_NormalizedSourceRect(This, value) \
    ((This)->lpVtbl->get_NormalizedSourceRect(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_put_NormalizedSourceRect(This, value) \
    ((This)->lpVtbl->put_NormalizedSourceRect(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_get_StereoscopicVideoPackingMode(This, value) \
    ((This)->lpVtbl->get_StereoscopicVideoPackingMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_put_StereoscopicVideoPackingMode(This, value) \
    ((This)->lpVtbl->put_StereoscopicVideoPackingMode(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession2[] = L"Windows.Media.Playback.IMediaPlaybackSession2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_BufferedRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_BufferedRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_PlayedRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PlayedRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_SeekableRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SeekableRangesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_SupportedPlaybackRatesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackSession_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SupportedPlaybackRatesChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_SphericalVideoProjection)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection** value);
    HRESULT (STDMETHODCALLTYPE* get_IsMirroring)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsMirroring)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* GetBufferedRanges)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value);
    HRESULT (STDMETHODCALLTYPE* GetPlayedRanges)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value);
    HRESULT (STDMETHODCALLTYPE* GetSeekableRanges)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        __FIVectorView_1_Windows__CMedia__CMediaTimeRange** value);
    HRESULT (STDMETHODCALLTYPE* IsSupportedPlaybackRateRange)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2* This,
        DOUBLE rate1,
        DOUBLE rate2,
        boolean* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_add_BufferedRangesChanged(This, value, token) \
    ((This)->lpVtbl->add_BufferedRangesChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_remove_BufferedRangesChanged(This, token) \
    ((This)->lpVtbl->remove_BufferedRangesChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_add_PlayedRangesChanged(This, value, token) \
    ((This)->lpVtbl->add_PlayedRangesChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_remove_PlayedRangesChanged(This, token) \
    ((This)->lpVtbl->remove_PlayedRangesChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_add_SeekableRangesChanged(This, value, token) \
    ((This)->lpVtbl->add_SeekableRangesChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_remove_SeekableRangesChanged(This, token) \
    ((This)->lpVtbl->remove_SeekableRangesChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_add_SupportedPlaybackRatesChanged(This, value, token) \
    ((This)->lpVtbl->add_SupportedPlaybackRatesChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_remove_SupportedPlaybackRatesChanged(This, token) \
    ((This)->lpVtbl->remove_SupportedPlaybackRatesChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_get_SphericalVideoProjection(This, value) \
    ((This)->lpVtbl->get_SphericalVideoProjection(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_get_IsMirroring(This, value) \
    ((This)->lpVtbl->get_IsMirroring(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_put_IsMirroring(This, value) \
    ((This)->lpVtbl->put_IsMirroring(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_GetBufferedRanges(This, value) \
    ((This)->lpVtbl->GetBufferedRanges(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_GetPlayedRanges(This, value) \
    ((This)->lpVtbl->GetPlayedRanges(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_GetSeekableRanges(This, value) \
    ((This)->lpVtbl->GetSeekableRanges(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_IsSupportedPlaybackRateRange(This, rate1, rate2, value) \
    ((This)->lpVtbl->IsSupportedPlaybackRateRange(This, rate1, rate2, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSession3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSession
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSession3[] = L"Windows.Media.Playback.IMediaPlaybackSession3";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackRotation)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CMediaRotation* value);
    HRESULT (STDMETHODCALLTYPE* put_PlaybackRotation)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CMediaRotation value);
    HRESULT (STDMETHODCALLTYPE* GetOutputDegradationPolicyState)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_get_PlaybackRotation(This, value) \
    ((This)->lpVtbl->get_PlaybackRotation(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_put_PlaybackRotation(This, value) \
    ((This)->lpVtbl->put_PlaybackRotation(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_GetOutputDegradationPolicyState(This, value) \
    ((This)->lpVtbl->GetOutputDegradationPolicyState(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSessionBufferingStartedEventArgs[] = L"Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_IsPlaybackInterruption)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs* This,
        boolean* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_get_IsPlaybackInterruption(This, value) \
    ((This)->lpVtbl->get_IsPlaybackInterruption(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionBufferingStartedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSessionOutputDegradationPolicyState[] = L"Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyStateVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_VideoConstrictionReason)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlaybackSessionVideoConstrictionReason* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyStateVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyStateVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_get_VideoConstrictionReason(This, value) \
    ((This)->lpVtbl->get_VideoConstrictionReason(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSessionOutputDegradationPolicyState_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSource[] = L"Windows.Media.Playback.IMediaPlaybackSource";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSourceVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* This,
        TrustLevel* trustLevel);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSourceVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSourceVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackSphericalVideoProjection
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackSphericalVideoProjection[] = L"Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjectionVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_IsEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_FrameFormat)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CSphericalVideoFrameFormat* value);
    HRESULT (STDMETHODCALLTYPE* put_FrameFormat)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        enum __x_ABI_CWindows_CMedia_CMediaProperties_CSphericalVideoFrameFormat value);
    HRESULT (STDMETHODCALLTYPE* get_HorizontalFieldOfViewInDegrees)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* put_HorizontalFieldOfViewInDegrees)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        DOUBLE value);
    HRESULT (STDMETHODCALLTYPE* get_ViewOrientation)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CQuaternion* value);
    HRESULT (STDMETHODCALLTYPE* put_ViewOrientation)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CQuaternion value);
    HRESULT (STDMETHODCALLTYPE* get_ProjectionMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CSphericalVideoProjectionMode* value);
    HRESULT (STDMETHODCALLTYPE* put_ProjectionMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CSphericalVideoProjectionMode value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjectionVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjectionVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_get_IsEnabled(This, value) \
    ((This)->lpVtbl->get_IsEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_put_IsEnabled(This, value) \
    ((This)->lpVtbl->put_IsEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_get_FrameFormat(This, value) \
    ((This)->lpVtbl->get_FrameFormat(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_put_FrameFormat(This, value) \
    ((This)->lpVtbl->put_FrameFormat(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_get_HorizontalFieldOfViewInDegrees(This, value) \
    ((This)->lpVtbl->get_HorizontalFieldOfViewInDegrees(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_put_HorizontalFieldOfViewInDegrees(This, value) \
    ((This)->lpVtbl->put_HorizontalFieldOfViewInDegrees(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_get_ViewOrientation(This, value) \
    ((This)->lpVtbl->get_ViewOrientation(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_put_ViewOrientation(This, value) \
    ((This)->lpVtbl->put_ViewOrientation(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_get_ProjectionMode(This, value) \
    ((This)->lpVtbl->get_ProjectionMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_put_ProjectionMode(This, value) \
    ((This)->lpVtbl->put_ProjectionMode(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSphericalVideoProjection_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlaybackTimedMetadataTrackList[] = L"Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackListVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_PresentationModeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlaybackTimedMetadataTrackList_Windows__CMedia__CPlayback__CTimedMetadataPresentationModeChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_PresentationModeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* GetPresentationMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        UINT32 index,
        enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode* value);
    HRESULT (STDMETHODCALLTYPE* SetPresentationMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList* This,
        UINT32 index,
        enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackListVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackListVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_add_PresentationModeChanged(This, handler, token) \
    ((This)->lpVtbl->add_PresentationModeChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_remove_PresentationModeChanged(This, token) \
    ((This)->lpVtbl->remove_PresentationModeChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_GetPresentationMode(This, index, value) \
    ((This)->lpVtbl->GetPresentationMode(This, index, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_SetPresentationMode(This, index, value) \
    ((This)->lpVtbl->SetPresentationMode(This, index, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackTimedMetadataTrackList_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer[] = L"Windows.Media.Playback.IMediaPlayer";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_AutoPlay)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_AutoPlay)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.NaturalDuration instead of NaturalDuration.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_NaturalDuration)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_Position)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* put_Position)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingProgress instead of BufferingProgress.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_BufferingProgress)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        DOUBLE* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.State instead of CurrentState.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_CurrentState)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerState* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.CanSeek instead of CanSeek.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_CanSeek)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.CanPause instead of CanPause.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_CanPause)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_IsLoopingEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsLoopingEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.IsProtected instead of IsProtected.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_IsProtected)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_IsMuted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsMuted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        boolean value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* get_PlaybackRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        DOUBLE* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* put_PlaybackRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        DOUBLE value);
    HRESULT (STDMETHODCALLTYPE* get_Volume)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* put_Volume)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        DOUBLE value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* get_PlaybackMediaMarkers)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence** value);
    HRESULT (STDMETHODCALLTYPE* add_MediaOpened)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_MediaOpened)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_MediaEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_MediaEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_MediaFailed)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerFailedEventArgs* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_MediaFailed)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* add_CurrentStateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* remove_CurrentStateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* add_PlaybackMediaMarkerReached)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CPlaybackMediaMarkerReachedEventArgs* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* remove_PlaybackMediaMarkerReached)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* add_MediaPlayerRateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_Windows__CMedia__CPlayback__CMediaPlayerRateChangedEventArgs* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* remove_MediaPlayerRateChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_VolumeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_VolumeChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* add_SeekCompleted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* remove_SeekCompleted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* add_BufferingStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* remove_BufferingStarted)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* add_BufferingEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    HRESULT (STDMETHODCALLTYPE* remove_BufferingEnded)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* Play)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This);
    HRESULT (STDMETHODCALLTYPE* Pause)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetUriSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* SetUriSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer* This,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_AutoPlay(This, value) \
    ((This)->lpVtbl->get_AutoPlay(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_AutoPlay(This, value) \
    ((This)->lpVtbl->put_AutoPlay(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.NaturalDuration instead of NaturalDuration.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_NaturalDuration(This, value) \
    ((This)->lpVtbl->get_NaturalDuration(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_Position(This, value) \
    ((This)->lpVtbl->get_Position(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.Position instead of Position.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_Position(This, value) \
    ((This)->lpVtbl->put_Position(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingProgress instead of BufferingProgress.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_BufferingProgress(This, value) \
    ((This)->lpVtbl->get_BufferingProgress(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.State instead of CurrentState.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_CurrentState(This, value) \
    ((This)->lpVtbl->get_CurrentState(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.CanSeek instead of CanSeek.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_CanSeek(This, value) \
    ((This)->lpVtbl->get_CanSeek(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.CanPause instead of CanPause.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_CanPause(This, value) \
    ((This)->lpVtbl->get_CanPause(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_IsLoopingEnabled(This, value) \
    ((This)->lpVtbl->get_IsLoopingEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_IsLoopingEnabled(This, value) \
    ((This)->lpVtbl->put_IsLoopingEnabled(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.IsProtected instead of IsProtected.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_IsProtected(This, value) \
    ((This)->lpVtbl->get_IsProtected(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_IsMuted(This, value) \
    ((This)->lpVtbl->get_IsMuted(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_IsMuted(This, value) \
    ((This)->lpVtbl->put_IsMuted(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_PlaybackRate(This, value) \
    ((This)->lpVtbl->get_PlaybackRate(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRate instead of PlaybackRate.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_PlaybackRate(This, value) \
    ((This)->lpVtbl->put_PlaybackRate(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_Volume(This, value) \
    ((This)->lpVtbl->get_Volume(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_put_Volume(This, value) \
    ((This)->lpVtbl->put_Volume(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_get_PlaybackMediaMarkers(This, value) \
    ((This)->lpVtbl->get_PlaybackMediaMarkers(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_MediaOpened(This, value, token) \
    ((This)->lpVtbl->add_MediaOpened(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_MediaOpened(This, token) \
    ((This)->lpVtbl->remove_MediaOpened(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_MediaEnded(This, value, token) \
    ((This)->lpVtbl->add_MediaEnded(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_MediaEnded(This, token) \
    ((This)->lpVtbl->remove_MediaEnded(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_MediaFailed(This, value, token) \
    ((This)->lpVtbl->add_MediaFailed(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_MediaFailed(This, token) \
    ((This)->lpVtbl->remove_MediaFailed(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_CurrentStateChanged(This, value, token) \
    ((This)->lpVtbl->add_CurrentStateChanged(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackStateChanged instead of CurrentStateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_CurrentStateChanged(This, token) \
    ((This)->lpVtbl->remove_CurrentStateChanged(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_PlaybackMediaMarkerReached(This, value, token) \
    ((This)->lpVtbl->add_PlaybackMediaMarkerReached(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use media tracks on MediaPlaybackItem instead of PlaybackMediaMarkers.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_PlaybackMediaMarkerReached(This, token) \
    ((This)->lpVtbl->remove_PlaybackMediaMarkerReached(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_MediaPlayerRateChanged(This, value, token) \
    ((This)->lpVtbl->add_MediaPlayerRateChanged(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.PlaybackRateChanged instead of MediaPlayerRateChanged.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_MediaPlayerRateChanged(This, token) \
    ((This)->lpVtbl->remove_MediaPlayerRateChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_VolumeChanged(This, value, token) \
    ((This)->lpVtbl->add_VolumeChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_VolumeChanged(This, token) \
    ((This)->lpVtbl->remove_VolumeChanged(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_SeekCompleted(This, value, token) \
    ((This)->lpVtbl->add_SeekCompleted(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.SeekCompleted instead of SeekCompleted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_SeekCompleted(This, token) \
    ((This)->lpVtbl->remove_SeekCompleted(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_BufferingStarted(This, value, token) \
    ((This)->lpVtbl->add_BufferingStarted(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingStarted instead of BufferingStarted.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_BufferingStarted(This, token) \
    ((This)->lpVtbl->remove_BufferingStarted(This, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_add_BufferingEnded(This, value, token) \
    ((This)->lpVtbl->add_BufferingEnded(This, value, token))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
    DEPRECATED("Use PlaybackSession.BufferingEnded instead of BufferingEnded.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_remove_BufferingEnded(This, token) \
    ((This)->lpVtbl->remove_BufferingEnded(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_Play(This) \
    ((This)->lpVtbl->Play(This))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_Pause(This) \
    ((This)->lpVtbl->Pause(This))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetUriSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_SetUriSource(This, value) \
    ((This)->lpVtbl->SetUriSource(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer2[] = L"Windows.Media.Playback.IMediaPlayer2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_SystemMediaTransportControls)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        __x_ABI_CWindows_CMedia_CISystemMediaTransportControls** value);
    HRESULT (STDMETHODCALLTYPE* get_AudioCategory)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioCategory* value);
    HRESULT (STDMETHODCALLTYPE* put_AudioCategory)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioCategory value);
    HRESULT (STDMETHODCALLTYPE* get_AudioDeviceType)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioDeviceType* value);
    HRESULT (STDMETHODCALLTYPE* put_AudioDeviceType)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerAudioDeviceType value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_get_SystemMediaTransportControls(This, value) \
    ((This)->lpVtbl->get_SystemMediaTransportControls(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_get_AudioCategory(This, value) \
    ((This)->lpVtbl->get_AudioCategory(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_put_AudioCategory(This, value) \
    ((This)->lpVtbl->put_AudioCategory(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_get_AudioDeviceType(This, value) \
    ((This)->lpVtbl->get_AudioDeviceType(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_put_AudioDeviceType(This, value) \
    ((This)->lpVtbl->put_AudioDeviceType(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer3
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer3[] = L"Windows.Media.Playback.IMediaPlayer3";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_IsMutedChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_IsMutedChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_SourceChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SourceChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_AudioBalance)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        DOUBLE* value);
    HRESULT (STDMETHODCALLTYPE* put_AudioBalance)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        DOUBLE value);
    HRESULT (STDMETHODCALLTYPE* get_RealTimePlayback)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_RealTimePlayback)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_StereoscopicVideoRenderMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CStereoscopicVideoRenderMode* value);
    HRESULT (STDMETHODCALLTYPE* put_StereoscopicVideoRenderMode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CStereoscopicVideoRenderMode value);
    HRESULT (STDMETHODCALLTYPE* get_BreakManager)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaBreakManager** value);
    HRESULT (STDMETHODCALLTYPE* get_CommandManager)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackCommandManager** value);
    HRESULT (STDMETHODCALLTYPE* get_AudioDevice)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation** value);
    HRESULT (STDMETHODCALLTYPE* put_AudioDevice)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceInformation* value);
    HRESULT (STDMETHODCALLTYPE* get_TimelineController)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CIMediaTimelineController** value);
    HRESULT (STDMETHODCALLTYPE* put_TimelineController)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CIMediaTimelineController* value);
    HRESULT (STDMETHODCALLTYPE* get_TimelineControllerPositionOffset)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* put_TimelineControllerPositionOffset)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan value);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackSession)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSession** value);
    HRESULT (STDMETHODCALLTYPE* StepForwardOneFrame)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This);
    HRESULT (STDMETHODCALLTYPE* StepBackwardOneFrame)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This);
    HRESULT (STDMETHODCALLTYPE* GetAsCastingSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3* This,
        __x_ABI_CWindows_CMedia_CCasting_CICastingSource** returnValue);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_add_IsMutedChanged(This, value, token) \
    ((This)->lpVtbl->add_IsMutedChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_remove_IsMutedChanged(This, token) \
    ((This)->lpVtbl->remove_IsMutedChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_add_SourceChanged(This, value, token) \
    ((This)->lpVtbl->add_SourceChanged(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_remove_SourceChanged(This, token) \
    ((This)->lpVtbl->remove_SourceChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_AudioBalance(This, value) \
    ((This)->lpVtbl->get_AudioBalance(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_AudioBalance(This, value) \
    ((This)->lpVtbl->put_AudioBalance(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_RealTimePlayback(This, value) \
    ((This)->lpVtbl->get_RealTimePlayback(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_RealTimePlayback(This, value) \
    ((This)->lpVtbl->put_RealTimePlayback(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_StereoscopicVideoRenderMode(This, value) \
    ((This)->lpVtbl->get_StereoscopicVideoRenderMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_StereoscopicVideoRenderMode(This, value) \
    ((This)->lpVtbl->put_StereoscopicVideoRenderMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_BreakManager(This, value) \
    ((This)->lpVtbl->get_BreakManager(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_CommandManager(This, value) \
    ((This)->lpVtbl->get_CommandManager(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_AudioDevice(This, value) \
    ((This)->lpVtbl->get_AudioDevice(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_AudioDevice(This, value) \
    ((This)->lpVtbl->put_AudioDevice(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_TimelineController(This, value) \
    ((This)->lpVtbl->get_TimelineController(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_TimelineController(This, value) \
    ((This)->lpVtbl->put_TimelineController(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_TimelineControllerPositionOffset(This, value) \
    ((This)->lpVtbl->get_TimelineControllerPositionOffset(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_put_TimelineControllerPositionOffset(This, value) \
    ((This)->lpVtbl->put_TimelineControllerPositionOffset(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_get_PlaybackSession(This, value) \
    ((This)->lpVtbl->get_PlaybackSession(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_StepForwardOneFrame(This) \
    ((This)->lpVtbl->StepForwardOneFrame(This))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_StepBackwardOneFrame(This) \
    ((This)->lpVtbl->StepBackwardOneFrame(This))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_GetAsCastingSource(This, returnValue) \
    ((This)->lpVtbl->GetAsCastingSource(This, returnValue))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer3_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer4
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer4[] = L"Windows.Media.Playback.IMediaPlayer4";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* SetSurfaceSize)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        struct __x_ABI_CWindows_CFoundation_CSize size);
    HRESULT (STDMETHODCALLTYPE* GetSurface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4* This,
        __x_ABI_CWindows_CUI_CComposition_CICompositor* compositor,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface** result);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_SetSurfaceSize(This, size) \
    ((This)->lpVtbl->SetSurfaceSize(This, size))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_GetSurface(This, compositor, result) \
    ((This)->lpVtbl->GetSurface(This, compositor, result))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer4_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer5
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer5[] = L"Windows.Media.Playback.IMediaPlayer5";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_VideoFrameAvailable)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* value,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_VideoFrameAvailable)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* get_IsVideoFrameServerEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsVideoFrameServerEnabled)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* CopyFrameToVideoSurface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destination);
    HRESULT (STDMETHODCALLTYPE* CopyFrameToVideoSurfaceWithTargetRectangle)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destination,
        struct __x_ABI_CWindows_CFoundation_CRect targetRectangle);
    HRESULT (STDMETHODCALLTYPE* CopyFrameToStereoscopicVideoSurfaces)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5* This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destinationLeftEye,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destinationRightEye);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_add_VideoFrameAvailable(This, value, token) \
    ((This)->lpVtbl->add_VideoFrameAvailable(This, value, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_remove_VideoFrameAvailable(This, token) \
    ((This)->lpVtbl->remove_VideoFrameAvailable(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_get_IsVideoFrameServerEnabled(This, value) \
    ((This)->lpVtbl->get_IsVideoFrameServerEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_put_IsVideoFrameServerEnabled(This, value) \
    ((This)->lpVtbl->put_IsVideoFrameServerEnabled(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_CopyFrameToVideoSurface(This, destination) \
    ((This)->lpVtbl->CopyFrameToVideoSurface(This, destination))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_CopyFrameToVideoSurfaceWithTargetRectangle(This, destination, targetRectangle) \
    ((This)->lpVtbl->CopyFrameToVideoSurfaceWithTargetRectangle(This, destination, targetRectangle))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_CopyFrameToStereoscopicVideoSurfaces(This, destinationLeftEye, destinationRightEye) \
    ((This)->lpVtbl->CopyFrameToStereoscopicVideoSurfaces(This, destinationLeftEye, destinationRightEye))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer5_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer6
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer6[] = L"Windows.Media.Playback.IMediaPlayer6";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* add_SubtitleFrameChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        __FITypedEventHandler_2_Windows__CMedia__CPlayback__CMediaPlayer_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SubtitleFrameChanged)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* RenderSubtitlesToSurface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destination,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* RenderSubtitlesToSurfaceWithTargetRectangle)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6* This,
        __x_ABI_CWindows_CGraphics_CDirectX_CDirect3D11_CIDirect3DSurface* destination,
        struct __x_ABI_CWindows_CFoundation_CRect targetRectangle,
        boolean* result);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_add_SubtitleFrameChanged(This, handler, token) \
    ((This)->lpVtbl->add_SubtitleFrameChanged(This, handler, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_remove_SubtitleFrameChanged(This, token) \
    ((This)->lpVtbl->remove_SubtitleFrameChanged(This, token))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_RenderSubtitlesToSurface(This, destination, result) \
    ((This)->lpVtbl->RenderSubtitlesToSurface(This, destination, result))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_RenderSubtitlesToSurfaceWithTargetRectangle(This, destination, targetRectangle, result) \
    ((This)->lpVtbl->RenderSubtitlesToSurfaceWithTargetRectangle(This, destination, targetRectangle, result))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer6_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayer7
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayer7[] = L"Windows.Media.Playback.IMediaPlayer7";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_AudioStateMonitor)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7* This,
        __x_ABI_CWindows_CMedia_CAudio_CIAudioStateMonitor** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_get_AudioStateMonitor(This, value) \
    ((This)->lpVtbl->get_AudioStateMonitor(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer7_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerDataReceivedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerDataReceivedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Data)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_get_Data(This, value) \
    ((This)->lpVtbl->get_Data(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerDataReceivedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerEffects
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 2.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerEffects[] = L"Windows.Media.Playback.IMediaPlayerEffects";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffectsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* AddAudioEffect)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This,
        HSTRING activatableClassId,
        boolean effectOptional,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* configuration);
    HRESULT (STDMETHODCALLTYPE* RemoveAllEffects)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects* This);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffectsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffectsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_AddAudioEffect(This, activatableClassId, effectOptional, configuration) \
    ((This)->lpVtbl->AddAudioEffect(This, activatableClassId, effectOptional, configuration))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_RemoveAllEffects(This) \
    ((This)->lpVtbl->RemoveAllEffects(This))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerEffects2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerEffects2[] = L"Windows.Media.Playback.IMediaPlayerEffects2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* AddVideoEffect)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2* This,
        HSTRING activatableClassId,
        boolean effectOptional,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* effectConfiguration);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_AddVideoEffect(This, activatableClassId, effectOptional, effectConfiguration) \
    ((This)->lpVtbl->AddVideoEffect(This, activatableClassId, effectOptional, effectConfiguration))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerEffects2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerFailedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerFailedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerFailedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Error)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CMediaPlayerError* value);
    HRESULT (STDMETHODCALLTYPE* get_ExtendedErrorCode)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        HRESULT* value);
    HRESULT (STDMETHODCALLTYPE* get_ErrorMessage)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs* This,
        HSTRING* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_get_Error(This, value) \
    ((This)->lpVtbl->get_Error(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_get_ExtendedErrorCode(This, value) \
    ((This)->lpVtbl->get_ExtendedErrorCode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_get_ErrorMessage(This, value) \
    ((This)->lpVtbl->get_ErrorMessage(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerFailedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerRateChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerRateChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerRateChangedEventArgs[] = L"Windows.Media.Playback.IMediaPlayerRateChangedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_NewRate)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs* This,
        DOUBLE* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_get_NewRate(This, value) \
    ((This)->lpVtbl->get_NewRate(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerRateChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSource
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSource[] = L"Windows.Media.Playback.IMediaPlayerSource";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSourceVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_ProtectionManager)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager** value);
    HRESULT (STDMETHODCALLTYPE* put_ProtectionManager)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager* value);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetFileSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* SetFileSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        __x_ABI_CWindows_CStorage_CIStorageFile* file);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetStreamSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* SetStreamSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStream* stream);
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetMediaSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    HRESULT (STDMETHODCALLTYPE* SetMediaSource)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource* This,
        __x_ABI_CWindows_CMedia_CCore_CIMediaSource* source);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSourceVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSourceVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_get_ProtectionManager(This, value) \
    ((This)->lpVtbl->get_ProtectionManager(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_put_ProtectionManager(This, value) \
    ((This)->lpVtbl->put_ProtectionManager(This, value))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetFileSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_SetFileSource(This, file) \
    ((This)->lpVtbl->SetFileSource(This, file))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetStreamSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_SetStreamSource(This, stream) \
    ((This)->lpVtbl->SetStreamSource(This, stream))

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
    DEPRECATED("Use Source instead of SetMediaSource.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x20000
#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_SetMediaSource(This, source) \
    ((This)->lpVtbl->SetMediaSource(This, source))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSource2
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayer
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSource2[] = L"Windows.Media.Playback.IMediaPlayerSource2";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2Vtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Source)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource** value);
    HRESULT (STDMETHODCALLTYPE* put_Source)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlaybackSource* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2Vtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2Vtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_get_Source(This, value) \
    ((This)->lpVtbl->get_Source(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_put_Source(This, value) \
    ((This)->lpVtbl->put_Source(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSource2_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IMediaPlayerSurface
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.MediaPlayerSurface
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IMediaPlayerSurface[] = L"Windows.Media.Playback.IMediaPlayerSurface";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurfaceVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_CompositionSurface)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        __x_ABI_CWindows_CUI_CComposition_CICompositionSurface** value);
    HRESULT (STDMETHODCALLTYPE* get_Compositor)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        __x_ABI_CWindows_CUI_CComposition_CICompositor** value);
    HRESULT (STDMETHODCALLTYPE* get_MediaPlayer)(__x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayer** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurfaceVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurfaceVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_get_CompositionSurface(This, value) \
    ((This)->lpVtbl->get_CompositionSurface(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_get_Compositor(This, value) \
    ((This)->lpVtbl->get_Compositor(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_get_MediaPlayer(This, value) \
    ((This)->lpVtbl->get_MediaPlayer(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIMediaPlayerSurface_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarker
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarker
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarker[] = L"Windows.Media.Playback.IPlaybackMediaMarker";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Time)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan* value);
    HRESULT (STDMETHODCALLTYPE* get_MediaMarkerType)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Text)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* This,
        HSTRING* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_get_Time(This, value) \
    ((This)->lpVtbl->get_Time(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_get_MediaMarkerType(This, value) \
    ((This)->lpVtbl->get_MediaMarkerType(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_get_Text(This, value) \
    ((This)->lpVtbl->get_Text(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerFactory
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarker
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerFactory[] = L"Windows.Media.Playback.IPlaybackMediaMarkerFactory";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactoryVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* CreateFromTime)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan value,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker** marker);
    HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory* This,
        struct __x_ABI_CWindows_CFoundation_CTimeSpan value,
        HSTRING mediaMarketType,
        HSTRING text,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker** marker);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactoryVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_CreateFromTime(This, value, marker) \
    ((This)->lpVtbl->CreateFromTime(This, value, marker))

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_Create(This, value, mediaMarketType, text, marker) \
    ((This)->lpVtbl->Create(This, value, mediaMarketType, text, marker))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerFactory_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerReachedEventArgs[] = L"Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_PlaybackMediaMarker)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker** value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_get_PlaybackMediaMarker(This, value) \
    ((This)->lpVtbl->get_PlaybackMediaMarker(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerReachedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.IPlaybackMediaMarkerSequence
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.PlaybackMediaMarkerSequence
 *
 * Any object which implements this interface must also implement the following interfaces:
 *     Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.PlaybackMediaMarker>
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_IPlaybackMediaMarkerSequence[] = L"Windows.Media.Playback.IPlaybackMediaMarkerSequence";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequenceVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* Insert)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This,
        __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarker* value);
    HRESULT (STDMETHODCALLTYPE* Clear)(__x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence* This);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequenceVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequenceVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_get_Size(This, value) \
    ((This)->lpVtbl->get_Size(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_Insert(This, value) \
    ((This)->lpVtbl->Insert(This, value))

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

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CIPlaybackMediaMarkerSequence_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Interface Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Interface is a part of the implementation of type Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#if !defined(____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__)
#define ____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Playback_ITimedMetadataPresentationModeChangedEventArgs[] = L"Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs";
typedef struct __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgsVtbl
{
    BEGIN_INTERFACE

    HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        REFIID riid,
        void** ppvObject);
    ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This);
    ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This);
    HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        ULONG* iidCount,
        IID** iids);
    HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        HSTRING* className);
    HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        TrustLevel* trustLevel);
    HRESULT (STDMETHODCALLTYPE* get_Track)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        __x_ABI_CWindows_CMedia_CCore_CITimedMetadataTrack** value);
    HRESULT (STDMETHODCALLTYPE* get_OldPresentationMode)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode* value);
    HRESULT (STDMETHODCALLTYPE* get_NewPresentationMode)(__x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs* This,
        enum __x_ABI_CWindows_CMedia_CPlayback_CTimedMetadataTrackPresentationMode* value);

    END_INTERFACE
} __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgsVtbl;

interface __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs
{
    CONST_VTBL struct __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS

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

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

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

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

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

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

#define __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_get_Track(This, value) \
    ((This)->lpVtbl->get_Track(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_get_OldPresentationMode(This, value) \
    ((This)->lpVtbl->get_OldPresentationMode(This, value))

#define __x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_get_NewPresentationMode(This, value) \
    ((This)->lpVtbl->get_NewPresentationMode(This, value))

#endif /* COBJMACROS */

EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CMedia_CPlayback_CITimedMetadataPresentationModeChangedEventArgs_INTERFACE_DEFINED__) */
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.BackgroundMediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass contains static methods.
 *   Static Methods exist on the Windows.Media.Playback.IBackgroundMediaPlayerStatics interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_BackgroundMediaPlayer_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_BackgroundMediaPlayer_DEFINED
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
DEPRECATED("Use MediaPlayer instead of BackgroundMediaPlayer.  For more info, see MSDN.")
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_BackgroundMediaPlayer[] = L"Windows.Media.Playback.BackgroundMediaPlayer";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs ** Default Interface **
 *    Windows.Media.Playback.ICurrentMediaPlaybackItemChangedEventArgs2
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_CurrentMediaPlaybackItemChangedEventArgs[] = L"Windows.Media.Playback.CurrentMediaPlaybackItemChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaBreak
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IMediaBreakFactory interface starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreak ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreak_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreak_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreak[] = L"Windows.Media.Playback.MediaBreak";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakEndedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakEndedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakEndedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakEndedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakEndedEventArgs[] = L"Windows.Media.Playback.MediaBreakEndedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakManager ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakManager_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakManager_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakManager[] = L"Windows.Media.Playback.MediaBreakManager";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSchedule
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSchedule ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSchedule_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSchedule_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSchedule[] = L"Windows.Media.Playback.MediaBreakSchedule";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSeekedOverEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSeekedOverEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSeekedOverEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSeekedOverEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSeekedOverEventArgs[] = L"Windows.Media.Playback.MediaBreakSeekedOverEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakSkippedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakSkippedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakSkippedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakSkippedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakSkippedEventArgs[] = L"Windows.Media.Playback.MediaBreakSkippedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaBreakStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaBreakStartedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaBreakStartedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaBreakStartedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaBreakStartedEventArgs[] = L"Windows.Media.Playback.MediaBreakStartedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaItemDisplayProperties
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaItemDisplayProperties ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaItemDisplayProperties_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaItemDisplayProperties_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaItemDisplayProperties[] = L"Windows.Media.Playback.MediaItemDisplayProperties";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackAudioTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.AudioTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.AudioTrack>
 *    Windows.Media.Core.ISingleSelectMediaTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackAudioTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackAudioTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackAudioTrackList[] = L"Windows.Media.Playback.MediaPlaybackAudioTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManager
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManager ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManager_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManager_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManager[] = L"Windows.Media.Playback.MediaPlaybackCommandManager";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerAutoRepeatModeReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerCommandBehavior ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerCommandBehavior[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerCommandBehavior";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerFastForwardReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerFastForwardReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerFastForwardReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerNextReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerNextReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerNextReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPauseReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPauseReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPauseReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPlayReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPlayReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPlayReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPositionReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPositionReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPositionReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerPreviousReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerPreviousReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerPreviousReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerRateReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerRateReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerRateReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerRewindReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerRewindReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerRewindReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackCommandManagerShuffleReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackCommandManagerShuffleReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackCommandManagerShuffleReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItem
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IMediaPlaybackItemFactory interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *   Type can be activated via the Windows.Media.Playback.IMediaPlaybackItemFactory2 interface starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * RuntimeClass contains static methods.
 *   Static Methods exist on the Windows.Media.Playback.IMediaPlaybackItemStatics interface starting with version 2.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItem ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSource
 *    Windows.Media.Playback.IMediaPlaybackItem2
 *    Windows.Media.Playback.IMediaPlaybackItem3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItem_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItem_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItem[] = L"Windows.Media.Playback.MediaPlaybackItem";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemError
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemError ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemError_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemError_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemError[] = L"Windows.Media.Playback.MediaPlaybackItemError";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemFailedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemFailedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackItemFailedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackItemOpenedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackItemOpenedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackItemOpenedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via RoActivateInstance starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackList ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSource
 *    Windows.Media.Playback.IMediaPlaybackList2
 *    Windows.Media.Playback.IMediaPlaybackList3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackList[] = L"Windows.Media.Playback.MediaPlaybackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSession
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSession ** Default Interface **
 *    Windows.Media.Playback.IMediaPlaybackSession2
 *    Windows.Media.Playback.IMediaPlaybackSession3
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSession_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSession_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSession[] = L"Windows.Media.Playback.MediaPlaybackSession";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 5.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSessionBufferingStartedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSessionBufferingStartedEventArgs[] = L"Windows.Media.Playback.MediaPlaybackSessionBufferingStartedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 6.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSessionOutputDegradationPolicyState ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSessionOutputDegradationPolicyState[] = L"Windows.Media.Playback.MediaPlaybackSessionOutputDegradationPolicyState";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x60000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackSphericalVideoProjection
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 4.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlaybackSphericalVideoProjection ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackSphericalVideoProjection[] = L"Windows.Media.Playback.MediaPlaybackSphericalVideoProjection";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x40000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.TimedMetadataTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.TimedMetadataTrack>
 *    Windows.Media.Playback.IMediaPlaybackTimedMetadataTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackTimedMetadataTrackList[] = L"Windows.Media.Playback.MediaPlaybackTimedMetadataTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlaybackVideoTrackList
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Foundation.Collections.IVectorView`1<Windows.Media.Core.VideoTrack> ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Core.VideoTrack>
 *    Windows.Media.Core.ISingleSelectMediaTrackList
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackVideoTrackList_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlaybackVideoTrackList_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlaybackVideoTrackList[] = L"Windows.Media.Playback.MediaPlaybackVideoTrackList";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayer
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via RoActivateInstance starting with version 3.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayer ** Default Interface **
 *    Windows.Media.Playback.IMediaPlayerSource
 *    Windows.Media.Playback.IMediaPlayerSource2
 *    Windows.Media.Playback.IMediaPlayer2
 *    Windows.Media.Playback.IMediaPlayerEffects
 *    Windows.Foundation.IClosable
 *    Windows.Media.Playback.IMediaPlayer3
 *    Windows.Media.Playback.IMediaPlayer4
 *    Windows.Media.Playback.IMediaPlayerEffects2
 *    Windows.Media.Playback.IMediaPlayer5
 *    Windows.Media.Playback.IMediaPlayer6
 *    Windows.Media.Playback.IMediaPlayer7
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayer_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayer_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayer[] = L"Windows.Media.Playback.MediaPlayer";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerDataReceivedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerDataReceivedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerDataReceivedEventArgs[] = L"Windows.Media.Playback.MediaPlayerDataReceivedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerFailedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerFailedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerFailedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerFailedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerFailedEventArgs[] = L"Windows.Media.Playback.MediaPlayerFailedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerRateChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerRateChangedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerRateChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerRateChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerRateChangedEventArgs[] = L"Windows.Media.Playback.MediaPlayerRateChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.MediaPlayerSurface
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 3.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IMediaPlayerSurface ** Default Interface **
 *    Windows.Foundation.IClosable
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000
#ifndef RUNTIMECLASS_Windows_Media_Playback_MediaPlayerSurface_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_MediaPlayerSurface_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_MediaPlayerSurface[] = L"Windows.Media.Playback.MediaPlayerSurface";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x30000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarker
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * RuntimeClass can be activated.
 *   Type can be activated via the Windows.Media.Playback.IPlaybackMediaMarkerFactory interface starting with version 1.0 of the Windows.Foundation.UniversalApiContract API contract
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarker ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarker_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarker_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarker[] = L"Windows.Media.Playback.PlaybackMediaMarker";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarkerReachedEventArgs ** Default Interface **
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarkerReachedEventArgs[] = L"Windows.Media.Playback.PlaybackMediaMarkerReachedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.PlaybackMediaMarkerSequence
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.IPlaybackMediaMarkerSequence ** Default Interface **
 *    Windows.Foundation.Collections.IIterable`1<Windows.Media.Playback.PlaybackMediaMarker>
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerSequence_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_PlaybackMediaMarkerSequence_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_PlaybackMediaMarkerSequence[] = L"Windows.Media.Playback.PlaybackMediaMarkerSequence";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

/*
 *
 * Class Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs
 *
 * Introduced to Windows.Foundation.UniversalApiContract in version 1.0
 *
 * Class implements the following interfaces:
 *    Windows.Media.Playback.ITimedMetadataPresentationModeChangedEventArgs ** Default Interface **
 *
 * Class Threading Model:  Both Single and Multi Threaded Apartment
 *
 * Class Marshaling Behavior:  Agile - Class is agile
 *
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Playback_TimedMetadataPresentationModeChangedEventArgs[] = L"Windows.Media.Playback.TimedMetadataPresentationModeChangedEventArgs";
#endif
#endif // WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000

#endif // defined(__cplusplus)
#pragma pop_macro("MIDL_CONST_ID")
// Restore the original value of the 'DEPRECATED' macro
#pragma pop_macro("DEPRECATED")

#ifdef __clang__
#pragma clang diagnostic pop // deprecated-declarations
#else
#pragma warning(pop)
#endif
#endif // __windows2Emedia2Eplayback_p_h__

#endif // __windows2Emedia2Eplayback_h__
