

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 8.00.0603 */
/* @@MIDL_FILE_HEADING(  ) */

#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 __windows2Emedia2Ecore_h__
#define __windows2Emedia2Ecore_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample;

#endif 	/* ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamDescriptor;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IAudioStreamDescriptor;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IAudioStreamDescriptorFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IVideoStreamDescriptor;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IVideoStreamDescriptorFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaSource;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSource;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSample;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSampleStatics;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSampleProtectionProperties;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceClosedRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceClosedEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceStartingRequestDeferral;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceStartingRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceStartingEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSampleRequestDeferral;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSampleRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSampleRequestedEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSwitchStreamsRequestDeferral;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSwitchStreamsRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                interface IMediaStreamSourceSwitchStreamsRequestedEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__ */


/* header files for imported files */
#include "inspectable.h"
#include "AsyncInfo.h"
#include "EventToken.h"
#include "Windows.Foundation.h"
#include "Windows.Media.MediaProperties.h"
#include "Windows.Media.Protection.h"

#ifdef __cplusplus
extern "C"{
#endif 


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0000 */
/* [local] */ 

#ifdef __cplusplus
} /*extern "C"*/ 
#endif
#include <windows.foundation.collections.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSample;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSample;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0000 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0000_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0613 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0613 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0613_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0613_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0001 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("df7aacc9-a86c-5c7d-bf98-cc371c97c67b"))
IAsyncOperationCompletedHandler<ABI::Windows::Media::Core::MediaStreamSample*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSample*, ABI::Windows::Media::Core::IMediaStreamSample*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Media.Core.MediaStreamSample>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::Media::Core::MediaStreamSample*> __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0001 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0001_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0001_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0614 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0614 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0614_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0614_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0002 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_USE
#define DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3cdc5e86-4ada-5ef7-967a-e137a4621907"))
IAsyncOperation<ABI::Windows::Media::Core::MediaStreamSample*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSample*, ABI::Windows::Media::Core::IMediaStreamSample*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Media.Core.MediaStreamSample>"; }
};
typedef IAsyncOperation<ABI::Windows::Media::Core::MediaStreamSample*> __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_t;
#define ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_USE */

interface IInspectable;


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0002 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0002_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0002_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0615 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0615 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0615_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0615_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0003 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("d4dc5ef1-c1cb-5c32-803d-f2f9a7ad9916"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSample*,IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSample*, ABI::Windows::Media::Core::IMediaStreamSample*>,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSample, Object>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSample*,IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSource;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSource;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0003 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0003_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0003_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0616 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0616 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0616_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0616_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0004 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("6fd6ded7-421b-5ef5-8bf5-edea45401665"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,IInspectable*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSource*, ABI::Windows::Media::Core::IMediaStreamSource*>,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSource, Object>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,IInspectable*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceClosedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSourceClosedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0004 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0004_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0004_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0617 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0617 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0617_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0617_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0005 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("238cc251-d0b8-5a34-81d4-0dd1f936a20d"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceClosedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSource*, ABI::Windows::Media::Core::IMediaStreamSource*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSourceClosedEventArgs*, ABI::Windows::Media::Core::IMediaStreamSourceClosedEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSource, Windows.Media.Core.MediaStreamSourceClosedEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceClosedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSampleRequestedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSourceSampleRequestedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0005 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0005_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0005_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0618 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0618 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0618_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0618_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0006 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("4f1a3ae3-b8b7-5689-901d-b0b623f5a172"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceSampleRequestedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSource*, ABI::Windows::Media::Core::IMediaStreamSource*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSourceSampleRequestedEventArgs*, ABI::Windows::Media::Core::IMediaStreamSourceSampleRequestedEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSource, Windows.Media.Core.MediaStreamSourceSampleRequestedEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceSampleRequestedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceStartingEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSourceStartingEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0006 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0006_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0006_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0619 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0619 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0619_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0619_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0007 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("a93d5846-c660-586e-b6b5-a52fb81f9240"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceStartingEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSource*, ABI::Windows::Media::Core::IMediaStreamSource*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSourceStartingEventArgs*, ABI::Windows::Media::Core::IMediaStreamSourceStartingEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSource, Windows.Media.Core.MediaStreamSourceStartingEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceStartingEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSwitchStreamsRequestedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
interface IMediaStreamSourceSwitchStreamsRequestedEventArgs;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0007 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0007_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0007_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0620 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0620 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0620_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0620_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0008 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("452b2e4a-5511-5b3c-8a8e-ee659576a4c1"))
ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceSwitchStreamsRequestedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSource*, ABI::Windows::Media::Core::IMediaStreamSource*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Media::Core::MediaStreamSourceSwitchStreamsRequestedEventArgs*, ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequestedEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Media.Core.MediaStreamSource, Windows.Media.Core.MediaStreamSourceSwitchStreamsRequestedEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Media::Core::MediaStreamSource*,ABI::Windows::Media::Core::MediaStreamSourceSwitchStreamsRequestedEventArgs*> __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0008 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0008_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0621 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0621 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0621_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0621_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0009 */
/* [local] */ 

#ifndef DEF___FIKeyValuePair_2_GUID_IInspectable_USE
#define DEF___FIKeyValuePair_2_GUID_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("3bda1540-d089-5a1a-8f0d-94eba8068e58"))
IKeyValuePair<GUID,IInspectable*> : IKeyValuePair_impl<GUID,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IKeyValuePair`2<Guid, Object>"; }
};
typedef IKeyValuePair<GUID,IInspectable*> __FIKeyValuePair_2_GUID_IInspectable_t;
#define ____FIKeyValuePair_2_GUID_IInspectable_FWD_DEFINED__
#define __FIKeyValuePair_2_GUID_IInspectable ABI::Windows::Foundation::Collections::__FIKeyValuePair_2_GUID_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIKeyValuePair_2_GUID_IInspectable_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0009 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0009_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0622 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0622 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0622_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0622_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0010 */
/* [local] */ 

#ifndef DEF___FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_USE
#define DEF___FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("4f25059a-0b9a-5f25-9b9e-4b9f1d22ff65"))
IIterator<__FIKeyValuePair_2_GUID_IInspectable*> : IIterator_impl<__FIKeyValuePair_2_GUID_IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.Foundation.Collections.IKeyValuePair`2<Guid, Object>>"; }
};
typedef IIterator<__FIKeyValuePair_2_GUID_IInspectable*> __FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_t;
#define ____FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_FWD_DEFINED__
#define __FIIterator_1___FIKeyValuePair_2_GUID_IInspectable ABI::Windows::Foundation::Collections::__FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1___FIKeyValuePair_2_GUID_IInspectable_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0010 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0010_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0623 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0623 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0623_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0623_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0011 */
/* [local] */ 

#ifndef DEF___FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_USE
#define DEF___FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("f3b20528-e3b3-5331-b2d0-0c2623aee785"))
IIterable<__FIKeyValuePair_2_GUID_IInspectable*> : IIterable_impl<__FIKeyValuePair_2_GUID_IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.Foundation.Collections.IKeyValuePair`2<Guid, Object>>"; }
};
typedef IIterable<__FIKeyValuePair_2_GUID_IInspectable*> __FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_t;
#define ____FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_FWD_DEFINED__
#define __FIIterable_1___FIKeyValuePair_2_GUID_IInspectable ABI::Windows::Foundation::Collections::__FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1___FIKeyValuePair_2_GUID_IInspectable_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0011 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0011_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0011_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0624 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0624 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0624_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0624_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0012 */
/* [local] */ 

#ifndef DEF___FIMapView_2_GUID_IInspectable_USE
#define DEF___FIMapView_2_GUID_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("e4d2c732-bbc1-5ef4-869f-5007ceb55f6e"))
IMapView<GUID,IInspectable*> : IMapView_impl<GUID,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IMapView`2<Guid, Object>"; }
};
typedef IMapView<GUID,IInspectable*> __FIMapView_2_GUID_IInspectable_t;
#define ____FIMapView_2_GUID_IInspectable_FWD_DEFINED__
#define __FIMapView_2_GUID_IInspectable ABI::Windows::Foundation::Collections::__FIMapView_2_GUID_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIMapView_2_GUID_IInspectable_USE */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0012 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0012_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0625 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0625 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0625_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0625_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0013 */
/* [local] */ 

#ifndef DEF___FIMap_2_GUID_IInspectable_USE
#define DEF___FIMap_2_GUID_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("5ee3189c-7dbf-5998-ad07-5414fb82567c"))
IMap<GUID,IInspectable*> : IMap_impl<GUID,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IMap`2<Guid, Object>"; }
};
typedef IMap<GUID,IInspectable*> __FIMap_2_GUID_IInspectable_t;
#define ____FIMap_2_GUID_IInspectable_FWD_DEFINED__
#define __FIMap_2_GUID_IInspectable ABI::Windows::Foundation::Collections::__FIMap_2_GUID_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIMap_2_GUID_IInspectable_USE */

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Foundation {
struct TimeSpan;
} /*Foundation*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0013 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0013_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0013_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0626 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0626 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0626_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0626_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0014 */
/* [local] */ 

#ifndef DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#define DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
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>"; }
};
typedef IReference<struct ABI::Windows::Foundation::TimeSpan> __FIReference_1_Windows__CFoundation__CTimeSpan_t;
#define ____FIReference_1_Windows__CFoundation__CTimeSpan_FWD_DEFINED__
#define __FIReference_1_Windows__CFoundation__CTimeSpan ABI::Windows::Foundation::__FIReference_1_Windows__CFoundation__CTimeSpan_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIReference_1_Windows__CFoundation__CTimeSpan_USE */
#if defined(__cplusplus)
}
#endif // defined(__cplusplus)
#include <Windows.Foundation.h>
#if !defined(__windows2Emedia2Emediaproperties_h__)
#include <Windows.Media.MediaProperties.h>
#endif // !defined(__windows2Emedia2Emediaproperties_h__)
#if !defined(__windows2Emedia2Eprotection_h__)
#include <Windows.Media.Protection.h>
#endif // !defined(__windows2Emedia2Eprotection_h__)
#if !defined(__windows2Estorage2Efileproperties_h__)
#include <Windows.Storage.FileProperties.h>
#endif // !defined(__windows2Estorage2Efileproperties_h__)
#if !defined(__windows2Estorage2Estreams_h__)
#include <Windows.Storage.Streams.h>
#endif // !defined(__windows2Estorage2Estreams_h__)
#if defined(__cplusplus)
extern "C" {
#endif // defined(__cplusplus)
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CTimeSpan __x_ABI_CWindows_CFoundation_CTimeSpan;

#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace MediaProperties {
class AudioEncodingProperties;
} /*MediaProperties*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace MediaProperties {
class VideoEncodingProperties;
} /*MediaProperties*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Protection {
class MediaProtectionManager;
} /*Protection*/
} /*Media*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Storage {
namespace FileProperties {
class MusicProperties;
} /*FileProperties*/
} /*Storage*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Storage {
namespace FileProperties {
class VideoProperties;
} /*FileProperties*/
} /*Storage*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Storage {
namespace Streams {
class Buffer;
} /*Streams*/
} /*Storage*/
} /*Windows*/
}
#endif



#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceClosedReason __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceClosedReason;


#endif /* end if !defined(__cplusplus) */


#endif
#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceErrorStatus __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceErrorStatus;


#endif /* end if !defined(__cplusplus) */


#endif
















#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class AudioStreamDescriptor;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class VideoStreamDescriptor;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSamplePropertySet;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSampleProtectionProperties;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceClosedRequest;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceStartingRequestDeferral;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceStartingRequest;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSampleRequestDeferral;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSampleRequest;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSwitchStreamsRequestDeferral;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Media {
namespace Core {
class MediaStreamSourceSwitchStreamsRequest;
} /*Core*/
} /*Media*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0014 */
/* [local] */ 


#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            
            typedef struct TimeSpan TimeSpan;
            
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif









#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                
                typedef enum MediaStreamSourceClosedReason MediaStreamSourceClosedReason;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                
                typedef enum MediaStreamSourceErrorStatus MediaStreamSourceErrorStatus;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



















extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0014_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0014_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0627 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0627 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0627_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0627_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0015 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)



/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0015 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0015_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0015_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__

/* interface __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("df7aacc9-a86c-5c7d-bf98-cc371c97c67b")
    __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample *asyncInfo,
            /* [in] */ AsyncStatus status);
        
        END_INTERFACE
    } __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl;

    interface __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_Invoke(This,asyncInfo,status)	\
    ( (This)->lpVtbl -> Invoke(This,asyncInfo,status) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0016 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0016 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0016_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0628 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0628 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0628_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0628_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0017 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample
#define DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0017 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0017_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0017_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__

/* interface __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3cdc5e86-4ada-5ef7-967a-e137a4621907")
    __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSample **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CMedia__CCore__CMediaStreamSample **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl;

    interface __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSampleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_put_Completed(This,handler)	\
    ( (This)->lpVtbl -> put_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_get_Completed(This,handler)	\
    ( (This)->lpVtbl -> get_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_GetResults(This,results)	\
    ( (This)->lpVtbl -> GetResults(This,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0018 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0018 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0018_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0018_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0629 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0629 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0629_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0629_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0019 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0019 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0019_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0019_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d4dc5ef1-c1cb-5c32-803d-f2f9a7ad9916")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSample *sender,
            /* [in] */ __RPC__in_opt IInspectable *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample *sender,
            /* [in] */ __RPC__in_opt IInspectable *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectableVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectableVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0020 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0020 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0020_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0020_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0630 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0630 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0630_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0630_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0021 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0021 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0021_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0021_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6fd6ded7-421b-5ef5-8bf5-edea45401665")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt IInspectable *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt IInspectable *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectableVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectableVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0022 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0022 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0022_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0022_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0631 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0631 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0631_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0631_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0023 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0023 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0023_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0023_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("238cc251-d0b8-5a34-81d4-0dd1f936a20d")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSourceClosedEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0024 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0024 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0024_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0024_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0632 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0632 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0632_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0632_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0025 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0025 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0025_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0025_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4f1a3ae3-b8b7-5689-901d-b0b623f5a172")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSourceSampleRequestedEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0026 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0026 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0026_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0026_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0633 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0633 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0633_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0633_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0027 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0027 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0027_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0027_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("a93d5846-c660-586e-b6b5-a52fb81f9240")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSourceStartingEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0028 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0028 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0028_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0028_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0634 */




/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0634 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0634_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0634_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0029 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs
#define DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0029 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0029_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__

/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs */
/* [unique][uuid][object] */ 



/* interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("452b2e4a-5511-5b3c-8a8e-ee659576a4c1")
    __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequestedEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0030 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs */
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceClosedReason
    {
        MediaStreamSourceClosedReason_Done	= 0,
        MediaStreamSourceClosedReason_UnknownError	= 1,
        MediaStreamSourceClosedReason_AppReportedError	= 2,
        MediaStreamSourceClosedReason_UnsupportedProtectionSystem	= 3,
        MediaStreamSourceClosedReason_ProtectionSystemFailure	= 4,
        MediaStreamSourceClosedReason_UnsupportedEncodingFormat	= 5,
        MediaStreamSourceClosedReason_MissingSampleRequestedEventHandler	= 6
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceErrorStatus
    {
        MediaStreamSourceErrorStatus_Other	= 0,
        MediaStreamSourceErrorStatus_OutOfMemory	= 1,
        MediaStreamSourceErrorStatus_FailedToOpenFile	= 2,
        MediaStreamSourceErrorStatus_FailedToConnectToServer	= 3,
        MediaStreamSourceErrorStatus_ConnectionToServerLost	= 4,
        MediaStreamSourceErrorStatus_UnspecifiedNetworkError	= 5,
        MediaStreamSourceErrorStatus_DecodeError	= 6,
        MediaStreamSourceErrorStatus_UnsupportedMediaFormat	= 7
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamDescriptor[] = L"Windows.Media.Core.IMediaStreamDescriptor";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0030 */
/* [local] */ 

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                
                /* [v1_enum] */ 
                enum MediaStreamSourceClosedReason
                    {
                        MediaStreamSourceClosedReason_Done	= 0,
                        MediaStreamSourceClosedReason_UnknownError	= 1,
                        MediaStreamSourceClosedReason_AppReportedError	= 2,
                        MediaStreamSourceClosedReason_UnsupportedProtectionSystem	= 3,
                        MediaStreamSourceClosedReason_ProtectionSystemFailure	= 4,
                        MediaStreamSourceClosedReason_UnsupportedEncodingFormat	= 5,
                        MediaStreamSourceClosedReason_MissingSampleRequestedEventHandler	= 6
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Media {
            namespace Core {
                
                /* [v1_enum] */ 
                enum MediaStreamSourceErrorStatus
                    {
                        MediaStreamSourceErrorStatus_Other	= 0,
                        MediaStreamSourceErrorStatus_OutOfMemory	= 1,
                        MediaStreamSourceErrorStatus_FailedToOpenFile	= 2,
                        MediaStreamSourceErrorStatus_FailedToConnectToServer	= 3,
                        MediaStreamSourceErrorStatus_ConnectionToServerLost	= 4,
                        MediaStreamSourceErrorStatus_UnspecifiedNetworkError	= 5,
                        MediaStreamSourceErrorStatus_DecodeError	= 6,
                        MediaStreamSourceErrorStatus_UnsupportedMediaFormat	= 7
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0030_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamDescriptor */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("80F16E6E-92F7-451E-97D2-AFD80742DA70")
                    IMediaStreamDescriptor : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsSelected( 
                            /* [out][retval] */ __RPC__out boolean *selected) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Language( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Language( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamDescriptor = __uuidof(IMediaStreamDescriptor);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSelected )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out][retval] */ __RPC__out boolean *selected);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Language )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Language )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptorVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_get_IsSelected(This,selected)	\
    ( (This)->lpVtbl -> get_IsSelected(This,selected) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_put_Name(This,value)	\
    ( (This)->lpVtbl -> put_Name(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_get_Name(This,value)	\
    ( (This)->lpVtbl -> get_Name(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_put_Language(This,value)	\
    ( (This)->lpVtbl -> put_Language(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_get_Language(This,value)	\
    ( (This)->lpVtbl -> get_Language(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0031 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IAudioStreamDescriptor[] = L"Windows.Media.Core.IAudioStreamDescriptor";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0031 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0031_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0031_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IAudioStreamDescriptor */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("1E3692E4-4027-4847-A70B-DF1D9A2A7B04")
                    IAudioStreamDescriptor : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EncodingProperties( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::MediaProperties::IAudioEncodingProperties **encodingProperties) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IAudioStreamDescriptor = __uuidof(IAudioStreamDescriptor);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EncodingProperties )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIAudioEncodingProperties **encodingProperties);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_get_EncodingProperties(This,encodingProperties)	\
    ( (This)->lpVtbl -> get_EncodingProperties(This,encodingProperties) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0032 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IAudioStreamDescriptorFactory[] = L"Windows.Media.Core.IAudioStreamDescriptorFactory";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0032 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0032_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0032_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IAudioStreamDescriptorFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("4A86CE9E-4CB1-4380-8E0C-83504B7F5BF3")
                    IAudioStreamDescriptorFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::MediaProperties::IAudioEncodingProperties *encodingProperties,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IAudioStreamDescriptor **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IAudioStreamDescriptorFactory = __uuidof(IAudioStreamDescriptorFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIAudioEncodingProperties *encodingProperties,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptor **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactoryVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_Create(This,encodingProperties,result)	\
    ( (This)->lpVtbl -> Create(This,encodingProperties,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIAudioStreamDescriptorFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0033 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IVideoStreamDescriptor[] = L"Windows.Media.Core.IVideoStreamDescriptor";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0033 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0033_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0033_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IVideoStreamDescriptor */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("12EE0D55-9C2B-4440-8057-2C7A90F0CBEC")
                    IVideoStreamDescriptor : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EncodingProperties( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::MediaProperties::IVideoEncodingProperties **encodingProperties) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IVideoStreamDescriptor = __uuidof(IVideoStreamDescriptor);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EncodingProperties )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIVideoEncodingProperties **encodingProperties);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_get_EncodingProperties(This,encodingProperties)	\
    ( (This)->lpVtbl -> get_EncodingProperties(This,encodingProperties) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0034 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IVideoStreamDescriptorFactory[] = L"Windows.Media.Core.IVideoStreamDescriptorFactory";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0034 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0034_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0034_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IVideoStreamDescriptorFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("494EF6D1-BB75-43D2-9E5E-7B79A3AFCED4")
                    IVideoStreamDescriptorFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::MediaProperties::IVideoEncodingProperties *encodingProperties,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IVideoStreamDescriptor **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IVideoStreamDescriptorFactory = __uuidof(IVideoStreamDescriptorFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CMediaProperties_CIVideoEncodingProperties *encodingProperties,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptor **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactoryVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_Create(This,encodingProperties,result)	\
    ( (This)->lpVtbl -> Create(This,encodingProperties,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIVideoStreamDescriptorFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0035 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaSource_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaSource[] = L"Windows.Media.Core.IMediaSource";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaSource_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0035 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0035_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0035_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaSource */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaSource */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaSource;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("E7BFB599-A09D-4C21-BCDF-20AF4F86B3D9")
                    IMediaSource : public IInspectable
                    {
                    public:
                    };

                    extern const __declspec(selectany) IID & IID_IMediaSource = __uuidof(IMediaSource);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaSourceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaSource * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaSourceVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaSource
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaSourceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaSource_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0036 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSource[] = L"Windows.Media.Core.IMediaStreamSource";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0036 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0036_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0036_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSource */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("3712D543-45EB-4138-AA62-C01E26F3843F")
                    IMediaStreamSource : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE add_Closed( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_Closed( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_Starting( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_Starting( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_Paused( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_Paused( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_SampleRequested( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_SampleRequested( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_SwitchStreamsRequested( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_SwitchStreamsRequested( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE NotifyError( 
                            /* [in] */ ABI::Windows::Media::Core::MediaStreamSourceErrorStatus errorStatus) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE AddStreamDescriptor( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamDescriptor *descriptor) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MediaProtectionManager( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Protection::IMediaProtectionManager *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediaProtectionManager( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Protection::IMediaProtectionManager **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Duration( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Duration( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CanSeek( 
                            /* [in] */ boolean value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CanSeek( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BufferTime( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BufferTime( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SetBufferedRange( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan startOffset,
                            /* [in] */ ABI::Windows::Foundation::TimeSpan endOffset) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MusicProperties( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::FileProperties::IMusicProperties **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VideoProperties( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::FileProperties::IVideoProperties **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Thumbnail( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IRandomAccessStreamReference *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Thumbnail( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::Streams::IRandomAccessStreamReference **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE AddProtectionKey( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamDescriptor *streamDescriptor,
                            /* [in] */ UINT32 __keyIdentifierSize,
                            /* [in][size_is] */ __RPC__in_ecount_full(__keyIdentifierSize) BYTE *keyIdentifier,
                            /* [in] */ UINT32 __licenseDataSize,
                            /* [in][size_is] */ __RPC__in_ecount_full(__licenseDataSize) BYTE *licenseData) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSource = __uuidof(IMediaStreamSource);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *add_Closed )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceClosedEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_Closed )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *add_Starting )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceStartingEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_Starting )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *add_Paused )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_IInspectable *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_Paused )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *add_SampleRequested )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSampleRequestedEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_SampleRequested )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *add_SwitchStreamsRequested )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSource_Windows__CMedia__CCore__CMediaStreamSourceSwitchStreamsRequestedEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_SwitchStreamsRequested )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *NotifyError )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceErrorStatus errorStatus);
        
        HRESULT ( STDMETHODCALLTYPE *AddStreamDescriptor )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor *descriptor);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaProtectionManager )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaProtectionManager )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CProtection_CIMediaProtectionManager **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CanSeek )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CanSeek )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferTime )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferTime )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        HRESULT ( STDMETHODCALLTYPE *SetBufferedRange )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan startOffset,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan endOffset);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MusicProperties )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CFileProperties_CIMusicProperties **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoProperties )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CFileProperties_CIVideoProperties **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thumbnail )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thumbnail )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference **value);
        
        HRESULT ( STDMETHODCALLTYPE *AddProtectionKey )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor *streamDescriptor,
            /* [in] */ UINT32 __keyIdentifierSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__keyIdentifierSize) BYTE *keyIdentifier,
            /* [in] */ UINT32 __licenseDataSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__licenseDataSize) BYTE *licenseData);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_add_Closed(This,handler,token)	\
    ( (This)->lpVtbl -> add_Closed(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_remove_Closed(This,token)	\
    ( (This)->lpVtbl -> remove_Closed(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_add_Starting(This,handler,token)	\
    ( (This)->lpVtbl -> add_Starting(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_remove_Starting(This,token)	\
    ( (This)->lpVtbl -> remove_Starting(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_add_Paused(This,handler,token)	\
    ( (This)->lpVtbl -> add_Paused(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_remove_Paused(This,token)	\
    ( (This)->lpVtbl -> remove_Paused(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_add_SampleRequested(This,handler,token)	\
    ( (This)->lpVtbl -> add_SampleRequested(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_remove_SampleRequested(This,token)	\
    ( (This)->lpVtbl -> remove_SampleRequested(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_add_SwitchStreamsRequested(This,handler,token)	\
    ( (This)->lpVtbl -> add_SwitchStreamsRequested(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_remove_SwitchStreamsRequested(This,token)	\
    ( (This)->lpVtbl -> remove_SwitchStreamsRequested(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_NotifyError(This,errorStatus)	\
    ( (This)->lpVtbl -> NotifyError(This,errorStatus) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_AddStreamDescriptor(This,descriptor)	\
    ( (This)->lpVtbl -> AddStreamDescriptor(This,descriptor) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_put_MediaProtectionManager(This,value)	\
    ( (This)->lpVtbl -> put_MediaProtectionManager(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_MediaProtectionManager(This,value)	\
    ( (This)->lpVtbl -> get_MediaProtectionManager(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_put_Duration(This,value)	\
    ( (This)->lpVtbl -> put_Duration(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_Duration(This,value)	\
    ( (This)->lpVtbl -> get_Duration(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_put_CanSeek(This,value)	\
    ( (This)->lpVtbl -> put_CanSeek(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_CanSeek(This,value)	\
    ( (This)->lpVtbl -> get_CanSeek(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_put_BufferTime(This,value)	\
    ( (This)->lpVtbl -> put_BufferTime(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_BufferTime(This,value)	\
    ( (This)->lpVtbl -> get_BufferTime(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_SetBufferedRange(This,startOffset,endOffset)	\
    ( (This)->lpVtbl -> SetBufferedRange(This,startOffset,endOffset) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_MusicProperties(This,value)	\
    ( (This)->lpVtbl -> get_MusicProperties(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_VideoProperties(This,value)	\
    ( (This)->lpVtbl -> get_VideoProperties(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_put_Thumbnail(This,value)	\
    ( (This)->lpVtbl -> put_Thumbnail(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_get_Thumbnail(This,value)	\
    ( (This)->lpVtbl -> get_Thumbnail(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_AddProtectionKey(This,streamDescriptor,__keyIdentifierSize,keyIdentifier,__licenseDataSize,licenseData)	\
    ( (This)->lpVtbl -> AddProtectionKey(This,streamDescriptor,__keyIdentifierSize,keyIdentifier,__licenseDataSize,licenseData) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0037 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceFactory[] = L"Windows.Media.Core.IMediaStreamSourceFactory";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0037 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0037_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0037_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("EF77E0D9-D158-4B7A-863F-203342FBFD41")
                    IMediaStreamSourceFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE CreateFromDescriptor( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamDescriptor *descriptor,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSource **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateFromDescriptors( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamDescriptor *descriptor,
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamDescriptor *descriptor2,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSource **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceFactory = __uuidof(IMediaStreamSourceFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *CreateFromDescriptor )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor *descriptor,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateFromDescriptors )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor *descriptor,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor *descriptor2,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSource **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactoryVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_CreateFromDescriptor(This,descriptor,result)	\
    ( (This)->lpVtbl -> CreateFromDescriptor(This,descriptor,result) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_CreateFromDescriptors(This,descriptor,descriptor2,result)	\
    ( (This)->lpVtbl -> CreateFromDescriptors(This,descriptor,descriptor2,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0038 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSample[] = L"Windows.Media.Core.IMediaStreamSample";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0038 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0038_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0038_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSample */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("5C8DB627-4B80-4361-9837-6CB7481AD9D6")
                    IMediaStreamSample : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE add_Processed( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_Processed( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Buffer( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::Streams::IBuffer **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Timestamp( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExtendedProperties( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIMap_2_GUID_IInspectable **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Protection( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSampleProtectionProperties **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DecodeTimestamp( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DecodeTimestamp( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Duration( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Duration( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::TimeSpan *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_KeyFrame( 
                            /* [in] */ boolean value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_KeyFrame( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Discontinuous( 
                            /* [in] */ boolean value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Discontinuous( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSample = __uuidof(IMediaStreamSample);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *add_Processed )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CMedia__CCore__CMediaStreamSample_IInspectable *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_Processed )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ EventRegistrationToken token);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Buffer )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Timestamp )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedProperties )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIMap_2_GUID_IInspectable **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Protection )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecodeTimestamp )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecodeTimestamp )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CTimeSpan *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_KeyFrame )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_KeyFrame )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Discontinuous )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Discontinuous )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_add_Processed(This,handler,token)	\
    ( (This)->lpVtbl -> add_Processed(This,handler,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_remove_Processed(This,token)	\
    ( (This)->lpVtbl -> remove_Processed(This,token) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_Buffer(This,value)	\
    ( (This)->lpVtbl -> get_Buffer(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_Timestamp(This,value)	\
    ( (This)->lpVtbl -> get_Timestamp(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_ExtendedProperties(This,value)	\
    ( (This)->lpVtbl -> get_ExtendedProperties(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_Protection(This,value)	\
    ( (This)->lpVtbl -> get_Protection(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_put_DecodeTimestamp(This,value)	\
    ( (This)->lpVtbl -> put_DecodeTimestamp(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_DecodeTimestamp(This,value)	\
    ( (This)->lpVtbl -> get_DecodeTimestamp(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_put_Duration(This,value)	\
    ( (This)->lpVtbl -> put_Duration(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_Duration(This,value)	\
    ( (This)->lpVtbl -> get_Duration(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_put_KeyFrame(This,value)	\
    ( (This)->lpVtbl -> put_KeyFrame(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_KeyFrame(This,value)	\
    ( (This)->lpVtbl -> get_KeyFrame(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_put_Discontinuous(This,value)	\
    ( (This)->lpVtbl -> put_Discontinuous(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_get_Discontinuous(This,value)	\
    ( (This)->lpVtbl -> get_Discontinuous(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0039 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSampleStatics[] = L"Windows.Media.Core.IMediaStreamSampleStatics";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0039 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0039_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0039_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSampleStatics */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("DFDF218F-A6CF-4579-BE41-73DD941AD972")
                    IMediaStreamSampleStatics : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE CreateFromBuffer( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *buffer,
                            /* [in] */ ABI::Windows::Foundation::TimeSpan timestamp,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSample **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateFromStreamAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IInputStream *stream,
                            /* [in] */ UINT32 count,
                            /* [in] */ ABI::Windows::Foundation::TimeSpan timestamp,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSampleStatics = __uuidof(IMediaStreamSampleStatics);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStaticsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *CreateFromBuffer )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *buffer,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan timestamp,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample **value);
        
        HRESULT ( STDMETHODCALLTYPE *CreateFromStreamAsync )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIInputStream *stream,
            /* [in] */ UINT32 count,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan timestamp,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CMedia__CCore__CMediaStreamSample **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStaticsVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStaticsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_CreateFromBuffer(This,buffer,timestamp,value)	\
    ( (This)->lpVtbl -> CreateFromBuffer(This,buffer,timestamp,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_CreateFromStreamAsync(This,stream,count,timestamp,value)	\
    ( (This)->lpVtbl -> CreateFromStreamAsync(This,stream,count,timestamp,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleStatics_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0040 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSampleProtectionProperties[] = L"Windows.Media.Core.IMediaStreamSampleProtectionProperties";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0040 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0040_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0040_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSampleProtectionProperties */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("4EB88292-ECDF-493E-841D-DD4ADD7CACA2")
                    IMediaStreamSampleProtectionProperties : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE SetKeyIdentifier( 
                            /* [in] */ UINT32 __valueSize,
                            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetKeyIdentifier( 
                            /* [out] */ __RPC__out UINT32 *__valueSize,
                            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SetInitializationVector( 
                            /* [in] */ UINT32 __valueSize,
                            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetInitializationVector( 
                            /* [out] */ __RPC__out UINT32 *__valueSize,
                            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SetSubSampleMapping( 
                            /* [in] */ UINT32 __valueSize,
                            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetSubSampleMapping( 
                            /* [out] */ __RPC__out UINT32 *__valueSize,
                            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSampleProtectionProperties = __uuidof(IMediaStreamSampleProtectionProperties);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionPropertiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *SetKeyIdentifier )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [in] */ UINT32 __valueSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value);
        
        HRESULT ( STDMETHODCALLTYPE *GetKeyIdentifier )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__out UINT32 *__valueSize,
            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value);
        
        HRESULT ( STDMETHODCALLTYPE *SetInitializationVector )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [in] */ UINT32 __valueSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value);
        
        HRESULT ( STDMETHODCALLTYPE *GetInitializationVector )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__out UINT32 *__valueSize,
            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value);
        
        HRESULT ( STDMETHODCALLTYPE *SetSubSampleMapping )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [in] */ UINT32 __valueSize,
            /* [in][size_is] */ __RPC__in_ecount_full(__valueSize) BYTE *value);
        
        HRESULT ( STDMETHODCALLTYPE *GetSubSampleMapping )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties * This,
            /* [out] */ __RPC__out UINT32 *__valueSize,
            /* [out][size_is][size_is] */ __RPC__deref_out_ecount_full_opt(*__valueSize) BYTE **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionPropertiesVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionPropertiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_SetKeyIdentifier(This,__valueSize,value)	\
    ( (This)->lpVtbl -> SetKeyIdentifier(This,__valueSize,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_GetKeyIdentifier(This,__valueSize,value)	\
    ( (This)->lpVtbl -> GetKeyIdentifier(This,__valueSize,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_SetInitializationVector(This,__valueSize,value)	\
    ( (This)->lpVtbl -> SetInitializationVector(This,__valueSize,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_GetInitializationVector(This,__valueSize,value)	\
    ( (This)->lpVtbl -> GetInitializationVector(This,__valueSize,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_SetSubSampleMapping(This,__valueSize,value)	\
    ( (This)->lpVtbl -> SetSubSampleMapping(This,__valueSize,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_GetSubSampleMapping(This,__valueSize,value)	\
    ( (This)->lpVtbl -> GetSubSampleMapping(This,__valueSize,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSampleProtectionProperties_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0041 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceClosedRequest[] = L"Windows.Media.Core.IMediaStreamSourceClosedRequest";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0041 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0041_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0041_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceClosedRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("907C00E9-18A3-4951-887A-2C1EEBD5C69E")
                    IMediaStreamSourceClosedRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Reason( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Media::Core::MediaStreamSourceClosedReason *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceClosedRequest = __uuidof(IMediaStreamSourceClosedRequest);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Reason )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CMedia_CCore_CMediaStreamSourceClosedReason *value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequestVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_get_Reason(This,value)	\
    ( (This)->lpVtbl -> get_Reason(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0042 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceClosedEventArgs[] = L"Windows.Media.Core.IMediaStreamSourceClosedEventArgs";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0042 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0042_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0042_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceClosedEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("CD8C7EB2-4816-4E24-88F0-491EF7386406")
                    IMediaStreamSourceClosedEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Request( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceClosedRequest **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceClosedEventArgs = __uuidof(IMediaStreamSourceClosedEventArgs);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Request )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedRequest **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgsVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_get_Request(This,value)	\
    ( (This)->lpVtbl -> get_Request(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceClosedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0043 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceStartingRequestDeferral[] = L"Windows.Media.Core.IMediaStreamSourceStartingRequestDeferral";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0043 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0043_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0043_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceStartingRequestDeferral */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("3F1356A5-6340-4DC4-9910-068ED9F598F8")
                    IMediaStreamSourceStartingRequestDeferral : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Complete( void) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceStartingRequestDeferral = __uuidof(IMediaStreamSourceStartingRequestDeferral);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferralVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Complete )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral * This);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferralVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferralVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_Complete(This)	\
    ( (This)->lpVtbl -> Complete(This) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0044 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceStartingRequest[] = L"Windows.Media.Core.IMediaStreamSourceStartingRequest";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0044 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0044_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0044_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceStartingRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("2A9093E4-35C4-4B1B-A791-0D99DB56DD1D")
                    IMediaStreamSourceStartingRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StartPosition( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_Windows__CFoundation__CTimeSpan **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetDeferral( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceStartingRequestDeferral **deferral) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SetActualStartPosition( 
                            /* [in] */ ABI::Windows::Foundation::TimeSpan position) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceStartingRequest = __uuidof(IMediaStreamSourceStartingRequest);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartPosition )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIReference_1_Windows__CFoundation__CTimeSpan **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeferral )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestDeferral **deferral);
        
        HRESULT ( STDMETHODCALLTYPE *SetActualStartPosition )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest * This,
            /* [in] */ __x_ABI_CWindows_CFoundation_CTimeSpan position);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_get_StartPosition(This,value)	\
    ( (This)->lpVtbl -> get_StartPosition(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_GetDeferral(This,deferral)	\
    ( (This)->lpVtbl -> GetDeferral(This,deferral) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_SetActualStartPosition(This,position)	\
    ( (This)->lpVtbl -> SetActualStartPosition(This,position) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0045 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceStartingEventArgs[] = L"Windows.Media.Core.IMediaStreamSourceStartingEventArgs";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0045 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0045_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0045_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceStartingEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("F41468F2-C274-4940-A5BB-28A572452FA7")
                    IMediaStreamSourceStartingEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Request( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceStartingRequest **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceStartingEventArgs = __uuidof(IMediaStreamSourceStartingEventArgs);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Request )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingRequest **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgsVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_get_Request(This,value)	\
    ( (This)->lpVtbl -> get_Request(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceStartingEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0046 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSampleRequestDeferral[] = L"Windows.Media.Core.IMediaStreamSourceSampleRequestDeferral";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0046 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0046_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0046_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSampleRequestDeferral */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("7895CC02-F982-43C8-9D16-C62D999319BE")
                    IMediaStreamSourceSampleRequestDeferral : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Complete( void) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSampleRequestDeferral = __uuidof(IMediaStreamSourceSampleRequestDeferral);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferralVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Complete )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral * This);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferralVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferralVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_Complete(This)	\
    ( (This)->lpVtbl -> Complete(This) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0047 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSampleRequest[] = L"Windows.Media.Core.IMediaStreamSourceSampleRequest";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0047 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0047_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0047_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSampleRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("4DB341A9-3501-4D9B-83F9-8F235C822532")
                    IMediaStreamSourceSampleRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StreamDescriptor( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamDescriptor **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetDeferral( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceSampleRequestDeferral **deferral) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Sample( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Media::Core::IMediaStreamSample *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Sample( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSample **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE ReportSampleProgress( 
                            /* [in] */ UINT32 progress) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSampleRequest = __uuidof(IMediaStreamSourceSampleRequest);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StreamDescriptor )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeferral )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestDeferral **deferral);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Sample )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Sample )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSample **value);
        
        HRESULT ( STDMETHODCALLTYPE *ReportSampleProgress )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest * This,
            /* [in] */ UINT32 progress);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_get_StreamDescriptor(This,value)	\
    ( (This)->lpVtbl -> get_StreamDescriptor(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_GetDeferral(This,deferral)	\
    ( (This)->lpVtbl -> GetDeferral(This,deferral) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_put_Sample(This,value)	\
    ( (This)->lpVtbl -> put_Sample(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_get_Sample(This,value)	\
    ( (This)->lpVtbl -> get_Sample(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_ReportSampleProgress(This,progress)	\
    ( (This)->lpVtbl -> ReportSampleProgress(This,progress) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0048 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSampleRequestedEventArgs[] = L"Windows.Media.Core.IMediaStreamSourceSampleRequestedEventArgs";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0048 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0048_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0048_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSampleRequestedEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("10F9BB9E-71C5-492F-847F-0DA1F35E81F8")
                    IMediaStreamSourceSampleRequestedEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Request( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceSampleRequest **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSampleRequestedEventArgs = __uuidof(IMediaStreamSourceSampleRequestedEventArgs);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Request )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequest **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgsVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_get_Request(This,value)	\
    ( (This)->lpVtbl -> get_Request(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSampleRequestedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0049 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSwitchStreamsRequestDeferral[] = L"Windows.Media.Core.IMediaStreamSourceSwitchStreamsRequestDeferral";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0049 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0049_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0049_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequestDeferral */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("BEE3D835-A505-4F9A-B943-2B8CB1B4BBD9")
                    IMediaStreamSourceSwitchStreamsRequestDeferral : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Complete( void) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSwitchStreamsRequestDeferral = __uuidof(IMediaStreamSourceSwitchStreamsRequestDeferral);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferralVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Complete )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral * This);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferralVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferralVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_Complete(This)	\
    ( (This)->lpVtbl -> Complete(This) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0050 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSwitchStreamsRequest[] = L"Windows.Media.Core.IMediaStreamSourceSwitchStreamsRequest";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0050 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0050_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0050_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("41B8808E-38A9-4EC3-9BA0-B69B85501E90")
                    IMediaStreamSourceSwitchStreamsRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OldStreamDescriptor( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamDescriptor **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NewStreamDescriptor( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamDescriptor **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetDeferral( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequestDeferral **deferral) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSwitchStreamsRequest = __uuidof(IMediaStreamSourceSwitchStreamsRequest);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OldStreamDescriptor )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NewStreamDescriptor )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamDescriptor **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeferral )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestDeferral **deferral);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_get_OldStreamDescriptor(This,value)	\
    ( (This)->lpVtbl -> get_OldStreamDescriptor(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_get_NewStreamDescriptor(This,value)	\
    ( (This)->lpVtbl -> get_NewStreamDescriptor(This,value) ) 

#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_GetDeferral(This,deferral)	\
    ( (This)->lpVtbl -> GetDeferral(This,deferral) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0051 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Media_Core_IMediaStreamSourceSwitchStreamsRequestedEventArgs[] = L"Windows.Media.Core.IMediaStreamSourceSwitchStreamsRequestedEventArgs";
#endif /* !defined(____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0051 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0051_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0051_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequestedEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Media {
                namespace Core {
                    
                    MIDL_INTERFACE("42202B72-6EA1-4677-981E-350A0DA412AA")
                    IMediaStreamSourceSwitchStreamsRequestedEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Request( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Media::Core::IMediaStreamSourceSwitchStreamsRequest **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IMediaStreamSourceSwitchStreamsRequestedEventArgs = __uuidof(IMediaStreamSourceSwitchStreamsRequestedEventArgs);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Request )( 
            __RPC__in __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequest **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl;

    interface __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_get_Request(This,value)	\
    ( (This)->lpVtbl -> get_Request(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CMedia_CCore_CIMediaStreamSourceSwitchStreamsRequestedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0052 */
/* [local] */ 

#ifndef RUNTIMECLASS_Windows_Media_Core_AudioStreamDescriptor_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_AudioStreamDescriptor_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_AudioStreamDescriptor[] = L"Windows.Media.Core.AudioStreamDescriptor";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_VideoStreamDescriptor_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_VideoStreamDescriptor_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_VideoStreamDescriptor[] = L"Windows.Media.Core.VideoStreamDescriptor";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSource_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSource_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSource[] = L"Windows.Media.Core.MediaStreamSource";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceClosedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceClosedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceClosedEventArgs[] = L"Windows.Media.Core.MediaStreamSourceClosedEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceStartingEventArgs[] = L"Windows.Media.Core.MediaStreamSourceStartingEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequestedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequestedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSampleRequestedEventArgs[] = L"Windows.Media.Core.MediaStreamSourceSampleRequestedEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestedEventArgs[] = L"Windows.Media.Core.MediaStreamSourceSwitchStreamsRequestedEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSamplePropertySet_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSamplePropertySet_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSamplePropertySet[] = L"Windows.Media.Core.MediaStreamSamplePropertySet";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSample_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSample_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSample[] = L"Windows.Media.Core.MediaStreamSample";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSampleProtectionProperties_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSampleProtectionProperties_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSampleProtectionProperties[] = L"Windows.Media.Core.MediaStreamSampleProtectionProperties";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceClosedRequest_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceClosedRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceClosedRequest[] = L"Windows.Media.Core.MediaStreamSourceClosedRequest";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingRequestDeferral_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingRequestDeferral_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceStartingRequestDeferral[] = L"Windows.Media.Core.MediaStreamSourceStartingRequestDeferral";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingRequest_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceStartingRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceStartingRequest[] = L"Windows.Media.Core.MediaStreamSourceStartingRequest";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequestDeferral_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequestDeferral_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSampleRequestDeferral[] = L"Windows.Media.Core.MediaStreamSourceSampleRequestDeferral";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequest_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSampleRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSampleRequest[] = L"Windows.Media.Core.MediaStreamSourceSampleRequest";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestDeferral_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestDeferral_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequestDeferral[] = L"Windows.Media.Core.MediaStreamSourceSwitchStreamsRequestDeferral";
#endif
#ifndef RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequest_DEFINED
#define RUNTIMECLASS_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Media_Core_MediaStreamSourceSwitchStreamsRequest[] = L"Windows.Media.Core.MediaStreamSourceSwitchStreamsRequest";
#endif


/* interface __MIDL_itf_windows2Emedia2Ecore_0000_0052 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0052_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Emedia2Ecore_0000_0052_v0_0_s_ifspec;

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  HSTRING_UserSize(     __RPC__in unsigned long *, unsigned long            , __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserMarshal(  __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HSTRING * ); 
void                      __RPC_USER  HSTRING_UserFree(     __RPC__in unsigned long *, __RPC__in HSTRING * ); 

unsigned long             __RPC_USER  HSTRING_UserSize64(     __RPC__in unsigned long *, unsigned long            , __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserMarshal64(  __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HSTRING * ); 
void                      __RPC_USER  HSTRING_UserFree64(     __RPC__in unsigned long *, __RPC__in HSTRING * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


