home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 June / PCFJune.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / playlist.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  26.1 KB  |  852 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  2.  
  3. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  4.  
  5. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  6.  
  7.  
  8.  /* File created by MIDL compiler version 5.03.0279 */
  9. /* at Tue Aug 24 17:58:43 1999
  10.  */
  11. /* Compiler settings for playlist.idl:
  12.     Oicf (OptLev=i2), W1, Zp8, env=Win32 (32b run), ms_ext, c_ext, robust
  13.     error checks: allocation ref bounds_check enum stub_data 
  14.     VC __declspec() decoration level: 
  15.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  16.          DECLSPEC_UUID(), MIDL_INTERFACE()
  17. */
  18. //@@MIDL_FILE_HEADING(  )
  19.  
  20.  
  21. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  22. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  23. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  24. #endif
  25.  
  26. #include "rpc.h"
  27. #include "rpcndr.h"
  28.  
  29. #ifndef __RPCNDR_H_VERSION__
  30. #error this stub requires an updated version of <rpcndr.h>
  31. #endif // __RPCNDR_H_VERSION__
  32.  
  33. #ifndef COM_NO_WINDOWS_H
  34. #include "windows.h"
  35. #include "ole2.h"
  36. #endif /*COM_NO_WINDOWS_H*/
  37.  
  38. #ifndef __playlist_h__
  39. #define __playlist_h__
  40.  
  41. /* Forward Declarations */ 
  42.  
  43. #ifndef __IAMPlayListItem_FWD_DEFINED__
  44. #define __IAMPlayListItem_FWD_DEFINED__
  45. typedef interface IAMPlayListItem IAMPlayListItem;
  46. #endif     /* __IAMPlayListItem_FWD_DEFINED__ */
  47.  
  48.  
  49. #ifndef __IAMPlayList_FWD_DEFINED__
  50. #define __IAMPlayList_FWD_DEFINED__
  51. typedef interface IAMPlayList IAMPlayList;
  52. #endif     /* __IAMPlayList_FWD_DEFINED__ */
  53.  
  54.  
  55. #ifndef __ISpecifyParticularPages_FWD_DEFINED__
  56. #define __ISpecifyParticularPages_FWD_DEFINED__
  57. typedef interface ISpecifyParticularPages ISpecifyParticularPages;
  58. #endif     /* __ISpecifyParticularPages_FWD_DEFINED__ */
  59.  
  60.  
  61. #ifndef __IAMRebuild_FWD_DEFINED__
  62. #define __IAMRebuild_FWD_DEFINED__
  63. typedef interface IAMRebuild IAMRebuild;
  64. #endif     /* __IAMRebuild_FWD_DEFINED__ */
  65.  
  66.  
  67. /* header files for imported files */
  68. #include "unknwn.h"
  69. #include "strmif.h"
  70.  
  71. #ifdef __cplusplus
  72. extern "C"{
  73. #endif 
  74.  
  75. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  76. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  77.  
  78. /* interface __MIDL_itf_playlist_0000 */
  79. /* [local] */ 
  80.  
  81.  
  82. enum AMPlayListItemFlags
  83.     {    AMPLAYLISTITEM_CANSKIP    = 0x1,
  84.     AMPLAYLISTITEM_CANBIND    = 0x2
  85.     };
  86.  
  87.  
  88. extern RPC_IF_HANDLE __MIDL_itf_playlist_0000_v0_0_c_ifspec;
  89. extern RPC_IF_HANDLE __MIDL_itf_playlist_0000_v0_0_s_ifspec;
  90.  
  91. #ifndef __IAMPlayListItem_INTERFACE_DEFINED__
  92. #define __IAMPlayListItem_INTERFACE_DEFINED__
  93.  
  94. /* interface IAMPlayListItem */
  95. /* [unique][uuid][object] */ 
  96.  
  97.  
  98. EXTERN_C const IID IID_IAMPlayListItem;
  99.  
  100. #if defined(__cplusplus) && !defined(CINTERFACE)
  101.     
  102.     MIDL_INTERFACE("56a868ff-0ad4-11ce-b03a-0020af0ba770")
  103.     IAMPlayListItem : public IUnknown
  104.     {
  105.     public:
  106.         virtual HRESULT STDMETHODCALLTYPE GetFlags( 
  107.             /* [out] */ DWORD __RPC_FAR *pdwFlags) = 0;
  108.         
  109.         virtual HRESULT STDMETHODCALLTYPE GetSourceCount( 
  110.             /* [out] */ DWORD __RPC_FAR *pdwSources) = 0;
  111.         
  112.         virtual HRESULT STDMETHODCALLTYPE GetSourceURL( 
  113.             /* [in] */ DWORD dwSourceIndex,
  114.             /* [out] */ BSTR __RPC_FAR *pbstrURL) = 0;
  115.         
  116.         virtual HRESULT STDMETHODCALLTYPE GetSourceStart( 
  117.             /* [in] */ DWORD dwSourceIndex,
  118.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtStart) = 0;
  119.         
  120.         virtual HRESULT STDMETHODCALLTYPE GetSourceDuration( 
  121.             /* [in] */ DWORD dwSourceIndex,
  122.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtDuration) = 0;
  123.         
  124.         virtual HRESULT STDMETHODCALLTYPE GetSourceStartMarker( 
  125.             /* [in] */ DWORD dwSourceIndex,
  126.             /* [out] */ DWORD __RPC_FAR *pdwMarker) = 0;
  127.         
  128.         virtual HRESULT STDMETHODCALLTYPE GetSourceEndMarker( 
  129.             /* [in] */ DWORD dwSourceIndex,
  130.             /* [out] */ DWORD __RPC_FAR *pdwMarker) = 0;
  131.         
  132.         virtual HRESULT STDMETHODCALLTYPE GetSourceStartMarkerName( 
  133.             /* [in] */ DWORD dwSourceIndex,
  134.             /* [out] */ BSTR __RPC_FAR *pbstrStartMarker) = 0;
  135.         
  136.         virtual HRESULT STDMETHODCALLTYPE GetSourceEndMarkerName( 
  137.             /* [in] */ DWORD dwSourceIndex,
  138.             /* [out] */ BSTR __RPC_FAR *pbstrEndMarker) = 0;
  139.         
  140.         virtual HRESULT STDMETHODCALLTYPE GetLinkURL( 
  141.             /* [out] */ BSTR __RPC_FAR *pbstrURL) = 0;
  142.         
  143.         virtual HRESULT STDMETHODCALLTYPE GetScanDuration( 
  144.             /* [in] */ DWORD dwSourceIndex,
  145.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtScanDuration) = 0;
  146.         
  147.     };
  148.     
  149. #else     /* C style interface */
  150.  
  151.     typedef struct IAMPlayListItemVtbl
  152.     {
  153.         BEGIN_INTERFACE
  154.         
  155.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  156.             IAMPlayListItem __RPC_FAR * This,
  157.             /* [in] */ REFIID riid,
  158.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  159.         
  160.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  161.             IAMPlayListItem __RPC_FAR * This);
  162.         
  163.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  164.             IAMPlayListItem __RPC_FAR * This);
  165.         
  166.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFlags )( 
  167.             IAMPlayListItem __RPC_FAR * This,
  168.             /* [out] */ DWORD __RPC_FAR *pdwFlags);
  169.         
  170.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceCount )( 
  171.             IAMPlayListItem __RPC_FAR * This,
  172.             /* [out] */ DWORD __RPC_FAR *pdwSources);
  173.         
  174.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceURL )( 
  175.             IAMPlayListItem __RPC_FAR * This,
  176.             /* [in] */ DWORD dwSourceIndex,
  177.             /* [out] */ BSTR __RPC_FAR *pbstrURL);
  178.         
  179.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceStart )( 
  180.             IAMPlayListItem __RPC_FAR * This,
  181.             /* [in] */ DWORD dwSourceIndex,
  182.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtStart);
  183.         
  184.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceDuration )( 
  185.             IAMPlayListItem __RPC_FAR * This,
  186.             /* [in] */ DWORD dwSourceIndex,
  187.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtDuration);
  188.         
  189.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceStartMarker )( 
  190.             IAMPlayListItem __RPC_FAR * This,
  191.             /* [in] */ DWORD dwSourceIndex,
  192.             /* [out] */ DWORD __RPC_FAR *pdwMarker);
  193.         
  194.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceEndMarker )( 
  195.             IAMPlayListItem __RPC_FAR * This,
  196.             /* [in] */ DWORD dwSourceIndex,
  197.             /* [out] */ DWORD __RPC_FAR *pdwMarker);
  198.         
  199.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceStartMarkerName )( 
  200.             IAMPlayListItem __RPC_FAR * This,
  201.             /* [in] */ DWORD dwSourceIndex,
  202.             /* [out] */ BSTR __RPC_FAR *pbstrStartMarker);
  203.         
  204.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceEndMarkerName )( 
  205.             IAMPlayListItem __RPC_FAR * This,
  206.             /* [in] */ DWORD dwSourceIndex,
  207.             /* [out] */ BSTR __RPC_FAR *pbstrEndMarker);
  208.         
  209.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLinkURL )( 
  210.             IAMPlayListItem __RPC_FAR * This,
  211.             /* [out] */ BSTR __RPC_FAR *pbstrURL);
  212.         
  213.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetScanDuration )( 
  214.             IAMPlayListItem __RPC_FAR * This,
  215.             /* [in] */ DWORD dwSourceIndex,
  216.             /* [out] */ REFERENCE_TIME __RPC_FAR *prtScanDuration);
  217.         
  218.         END_INTERFACE
  219.     } IAMPlayListItemVtbl;
  220.  
  221.     interface IAMPlayListItem
  222.     {
  223.         CONST_VTBL struct IAMPlayListItemVtbl __RPC_FAR *lpVtbl;
  224.     };
  225.  
  226.     
  227.  
  228. #ifdef COBJMACROS
  229.  
  230.  
  231. #define IAMPlayListItem_QueryInterface(This,riid,ppvObject)    \
  232.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  233.  
  234. #define IAMPlayListItem_AddRef(This)    \
  235.     (This)->lpVtbl -> AddRef(This)
  236.  
  237. #define IAMPlayListItem_Release(This)    \
  238.     (This)->lpVtbl -> Release(This)
  239.  
  240.  
  241. #define IAMPlayListItem_GetFlags(This,pdwFlags)    \
  242.     (This)->lpVtbl -> GetFlags(This,pdwFlags)
  243.  
  244. #define IAMPlayListItem_GetSourceCount(This,pdwSources)    \
  245.     (This)->lpVtbl -> GetSourceCount(This,pdwSources)
  246.  
  247. #define IAMPlayListItem_GetSourceURL(This,dwSourceIndex,pbstrURL)    \
  248.     (This)->lpVtbl -> GetSourceURL(This,dwSourceIndex,pbstrURL)
  249.  
  250. #define IAMPlayListItem_GetSourceStart(This,dwSourceIndex,prtStart)    \
  251.     (This)->lpVtbl -> GetSourceStart(This,dwSourceIndex,prtStart)
  252.  
  253. #define IAMPlayListItem_GetSourceDuration(This,dwSourceIndex,prtDuration)    \
  254.     (This)->lpVtbl -> GetSourceDuration(This,dwSourceIndex,prtDuration)
  255.  
  256. #define IAMPlayListItem_GetSourceStartMarker(This,dwSourceIndex,pdwMarker)    \
  257.     (This)->lpVtbl -> GetSourceStartMarker(This,dwSourceIndex,pdwMarker)
  258.  
  259. #define IAMPlayListItem_GetSourceEndMarker(This,dwSourceIndex,pdwMarker)    \
  260.     (This)->lpVtbl -> GetSourceEndMarker(This,dwSourceIndex,pdwMarker)
  261.  
  262. #define IAMPlayListItem_GetSourceStartMarkerName(This,dwSourceIndex,pbstrStartMarker)    \
  263.     (This)->lpVtbl -> GetSourceStartMarkerName(This,dwSourceIndex,pbstrStartMarker)
  264.  
  265. #define IAMPlayListItem_GetSourceEndMarkerName(This,dwSourceIndex,pbstrEndMarker)    \
  266.     (This)->lpVtbl -> GetSourceEndMarkerName(This,dwSourceIndex,pbstrEndMarker)
  267.  
  268. #define IAMPlayListItem_GetLinkURL(This,pbstrURL)    \
  269.     (This)->lpVtbl -> GetLinkURL(This,pbstrURL)
  270.  
  271. #define IAMPlayListItem_GetScanDuration(This,dwSourceIndex,prtScanDuration)    \
  272.     (This)->lpVtbl -> GetScanDuration(This,dwSourceIndex,prtScanDuration)
  273.  
  274. #endif /* COBJMACROS */
  275.  
  276.  
  277. #endif     /* C style interface */
  278.  
  279.  
  280.  
  281. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetFlags_Proxy( 
  282.     IAMPlayListItem __RPC_FAR * This,
  283.     /* [out] */ DWORD __RPC_FAR *pdwFlags);
  284.  
  285.  
  286. void __RPC_STUB IAMPlayListItem_GetFlags_Stub(
  287.     IRpcStubBuffer *This,
  288.     IRpcChannelBuffer *_pRpcChannelBuffer,
  289.     PRPC_MESSAGE _pRpcMessage,
  290.     DWORD *_pdwStubPhase);
  291.  
  292.  
  293. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceCount_Proxy( 
  294.     IAMPlayListItem __RPC_FAR * This,
  295.     /* [out] */ DWORD __RPC_FAR *pdwSources);
  296.  
  297.  
  298. void __RPC_STUB IAMPlayListItem_GetSourceCount_Stub(
  299.     IRpcStubBuffer *This,
  300.     IRpcChannelBuffer *_pRpcChannelBuffer,
  301.     PRPC_MESSAGE _pRpcMessage,
  302.     DWORD *_pdwStubPhase);
  303.  
  304.  
  305. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceURL_Proxy( 
  306.     IAMPlayListItem __RPC_FAR * This,
  307.     /* [in] */ DWORD dwSourceIndex,
  308.     /* [out] */ BSTR __RPC_FAR *pbstrURL);
  309.  
  310.  
  311. void __RPC_STUB IAMPlayListItem_GetSourceURL_Stub(
  312.     IRpcStubBuffer *This,
  313.     IRpcChannelBuffer *_pRpcChannelBuffer,
  314.     PRPC_MESSAGE _pRpcMessage,
  315.     DWORD *_pdwStubPhase);
  316.  
  317.  
  318. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceStart_Proxy( 
  319.     IAMPlayListItem __RPC_FAR * This,
  320.     /* [in] */ DWORD dwSourceIndex,
  321.     /* [out] */ REFERENCE_TIME __RPC_FAR *prtStart);
  322.  
  323.  
  324. void __RPC_STUB IAMPlayListItem_GetSourceStart_Stub(
  325.     IRpcStubBuffer *This,
  326.     IRpcChannelBuffer *_pRpcChannelBuffer,
  327.     PRPC_MESSAGE _pRpcMessage,
  328.     DWORD *_pdwStubPhase);
  329.  
  330.  
  331. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceDuration_Proxy( 
  332.     IAMPlayListItem __RPC_FAR * This,
  333.     /* [in] */ DWORD dwSourceIndex,
  334.     /* [out] */ REFERENCE_TIME __RPC_FAR *prtDuration);
  335.  
  336.  
  337. void __RPC_STUB IAMPlayListItem_GetSourceDuration_Stub(
  338.     IRpcStubBuffer *This,
  339.     IRpcChannelBuffer *_pRpcChannelBuffer,
  340.     PRPC_MESSAGE _pRpcMessage,
  341.     DWORD *_pdwStubPhase);
  342.  
  343.  
  344. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceStartMarker_Proxy( 
  345.     IAMPlayListItem __RPC_FAR * This,
  346.     /* [in] */ DWORD dwSourceIndex,
  347.     /* [out] */ DWORD __RPC_FAR *pdwMarker);
  348.  
  349.  
  350. void __RPC_STUB IAMPlayListItem_GetSourceStartMarker_Stub(
  351.     IRpcStubBuffer *This,
  352.     IRpcChannelBuffer *_pRpcChannelBuffer,
  353.     PRPC_MESSAGE _pRpcMessage,
  354.     DWORD *_pdwStubPhase);
  355.  
  356.  
  357. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceEndMarker_Proxy( 
  358.     IAMPlayListItem __RPC_FAR * This,
  359.     /* [in] */ DWORD dwSourceIndex,
  360.     /* [out] */ DWORD __RPC_FAR *pdwMarker);
  361.  
  362.  
  363. void __RPC_STUB IAMPlayListItem_GetSourceEndMarker_Stub(
  364.     IRpcStubBuffer *This,
  365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  366.     PRPC_MESSAGE _pRpcMessage,
  367.     DWORD *_pdwStubPhase);
  368.  
  369.  
  370. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceStartMarkerName_Proxy( 
  371.     IAMPlayListItem __RPC_FAR * This,
  372.     /* [in] */ DWORD dwSourceIndex,
  373.     /* [out] */ BSTR __RPC_FAR *pbstrStartMarker);
  374.  
  375.  
  376. void __RPC_STUB IAMPlayListItem_GetSourceStartMarkerName_Stub(
  377.     IRpcStubBuffer *This,
  378.     IRpcChannelBuffer *_pRpcChannelBuffer,
  379.     PRPC_MESSAGE _pRpcMessage,
  380.     DWORD *_pdwStubPhase);
  381.  
  382.  
  383. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetSourceEndMarkerName_Proxy( 
  384.     IAMPlayListItem __RPC_FAR * This,
  385.     /* [in] */ DWORD dwSourceIndex,
  386.     /* [out] */ BSTR __RPC_FAR *pbstrEndMarker);
  387.  
  388.  
  389. void __RPC_STUB IAMPlayListItem_GetSourceEndMarkerName_Stub(
  390.     IRpcStubBuffer *This,
  391.     IRpcChannelBuffer *_pRpcChannelBuffer,
  392.     PRPC_MESSAGE _pRpcMessage,
  393.     DWORD *_pdwStubPhase);
  394.  
  395.  
  396. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetLinkURL_Proxy( 
  397.     IAMPlayListItem __RPC_FAR * This,
  398.     /* [out] */ BSTR __RPC_FAR *pbstrURL);
  399.  
  400.  
  401. void __RPC_STUB IAMPlayListItem_GetLinkURL_Stub(
  402.     IRpcStubBuffer *This,
  403.     IRpcChannelBuffer *_pRpcChannelBuffer,
  404.     PRPC_MESSAGE _pRpcMessage,
  405.     DWORD *_pdwStubPhase);
  406.  
  407.  
  408. HRESULT STDMETHODCALLTYPE IAMPlayListItem_GetScanDuration_Proxy( 
  409.     IAMPlayListItem __RPC_FAR * This,
  410.     /* [in] */ DWORD dwSourceIndex,
  411.     /* [out] */ REFERENCE_TIME __RPC_FAR *prtScanDuration);
  412.  
  413.  
  414. void __RPC_STUB IAMPlayListItem_GetScanDuration_Stub(
  415.     IRpcStubBuffer *This,
  416.     IRpcChannelBuffer *_pRpcChannelBuffer,
  417.     PRPC_MESSAGE _pRpcMessage,
  418.     DWORD *_pdwStubPhase);
  419.  
  420.  
  421.  
  422. #endif     /* __IAMPlayListItem_INTERFACE_DEFINED__ */
  423.  
  424.  
  425. /* interface __MIDL_itf_playlist_0348 */
  426. /* [local] */ 
  427.  
  428.  
  429. enum AMPlayListFlags
  430.     {    AMPLAYLIST_STARTINSCANMODE    = 0x1,
  431.     AMPLAYLIST_FORCEBANNER    = 0x2
  432.     };
  433.  
  434. enum AMPlayListEventFlags
  435.     {    AMPLAYLISTEVENT_RESUME    = 0,
  436.     AMPLAYLISTEVENT_BREAK    = 0x1,
  437.     AMPLAYLISTEVENT_NEXT    = 0x2,
  438.     AMPLAYLISTEVENT_MASK    = 0xf,
  439.     AMPLAYLISTEVENT_REFRESH    = 0x10
  440.     };
  441.  
  442.  
  443. extern RPC_IF_HANDLE __MIDL_itf_playlist_0348_v0_0_c_ifspec;
  444. extern RPC_IF_HANDLE __MIDL_itf_playlist_0348_v0_0_s_ifspec;
  445.  
  446. #ifndef __IAMPlayList_INTERFACE_DEFINED__
  447. #define __IAMPlayList_INTERFACE_DEFINED__
  448.  
  449. /* interface IAMPlayList */
  450. /* [unique][uuid][object] */ 
  451.  
  452.  
  453. EXTERN_C const IID IID_IAMPlayList;
  454.  
  455. #if defined(__cplusplus) && !defined(CINTERFACE)
  456.     
  457.     MIDL_INTERFACE("56a868fe-0ad4-11ce-b03a-0020af0ba770")
  458.     IAMPlayList : public IUnknown
  459.     {
  460.     public:
  461.         virtual HRESULT STDMETHODCALLTYPE GetFlags( 
  462.             /* [out] */ DWORD __RPC_FAR *pdwFlags) = 0;
  463.         
  464.         virtual HRESULT STDMETHODCALLTYPE GetItemCount( 
  465.             /* [out] */ DWORD __RPC_FAR *pdwItems) = 0;
  466.         
  467.         virtual HRESULT STDMETHODCALLTYPE GetItem( 
  468.             /* [in] */ DWORD dwItemIndex,
  469.             /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem) = 0;
  470.         
  471.         virtual HRESULT STDMETHODCALLTYPE GetNamedEvent( 
  472.             /* [in] */ WCHAR __RPC_FAR *pwszEventName,
  473.             /* [in] */ DWORD dwItemIndex,
  474.             /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem,
  475.             /* [out] */ DWORD __RPC_FAR *pdwFlags) = 0;
  476.         
  477.         virtual HRESULT STDMETHODCALLTYPE GetRepeatInfo( 
  478.             /* [out] */ DWORD __RPC_FAR *pdwRepeatCount,
  479.             /* [out] */ DWORD __RPC_FAR *pdwRepeatStart,
  480.             /* [out] */ DWORD __RPC_FAR *pdwRepeatEnd) = 0;
  481.         
  482.     };
  483.     
  484. #else     /* C style interface */
  485.  
  486.     typedef struct IAMPlayListVtbl
  487.     {
  488.         BEGIN_INTERFACE
  489.         
  490.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  491.             IAMPlayList __RPC_FAR * This,
  492.             /* [in] */ REFIID riid,
  493.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  494.         
  495.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  496.             IAMPlayList __RPC_FAR * This);
  497.         
  498.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  499.             IAMPlayList __RPC_FAR * This);
  500.         
  501.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFlags )( 
  502.             IAMPlayList __RPC_FAR * This,
  503.             /* [out] */ DWORD __RPC_FAR *pdwFlags);
  504.         
  505.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetItemCount )( 
  506.             IAMPlayList __RPC_FAR * This,
  507.             /* [out] */ DWORD __RPC_FAR *pdwItems);
  508.         
  509.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetItem )( 
  510.             IAMPlayList __RPC_FAR * This,
  511.             /* [in] */ DWORD dwItemIndex,
  512.             /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem);
  513.         
  514.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNamedEvent )( 
  515.             IAMPlayList __RPC_FAR * This,
  516.             /* [in] */ WCHAR __RPC_FAR *pwszEventName,
  517.             /* [in] */ DWORD dwItemIndex,
  518.             /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem,
  519.             /* [out] */ DWORD __RPC_FAR *pdwFlags);
  520.         
  521.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRepeatInfo )( 
  522.             IAMPlayList __RPC_FAR * This,
  523.             /* [out] */ DWORD __RPC_FAR *pdwRepeatCount,
  524.             /* [out] */ DWORD __RPC_FAR *pdwRepeatStart,
  525.             /* [out] */ DWORD __RPC_FAR *pdwRepeatEnd);
  526.         
  527.         END_INTERFACE
  528.     } IAMPlayListVtbl;
  529.  
  530.     interface IAMPlayList
  531.     {
  532.         CONST_VTBL struct IAMPlayListVtbl __RPC_FAR *lpVtbl;
  533.     };
  534.  
  535.     
  536.  
  537. #ifdef COBJMACROS
  538.  
  539.  
  540. #define IAMPlayList_QueryInterface(This,riid,ppvObject)    \
  541.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  542.  
  543. #define IAMPlayList_AddRef(This)    \
  544.     (This)->lpVtbl -> AddRef(This)
  545.  
  546. #define IAMPlayList_Release(This)    \
  547.     (This)->lpVtbl -> Release(This)
  548.  
  549.  
  550. #define IAMPlayList_GetFlags(This,pdwFlags)    \
  551.     (This)->lpVtbl -> GetFlags(This,pdwFlags)
  552.  
  553. #define IAMPlayList_GetItemCount(This,pdwItems)    \
  554.     (This)->lpVtbl -> GetItemCount(This,pdwItems)
  555.  
  556. #define IAMPlayList_GetItem(This,dwItemIndex,ppItem)    \
  557.     (This)->lpVtbl -> GetItem(This,dwItemIndex,ppItem)
  558.  
  559. #define IAMPlayList_GetNamedEvent(This,pwszEventName,dwItemIndex,ppItem,pdwFlags)    \
  560.     (This)->lpVtbl -> GetNamedEvent(This,pwszEventName,dwItemIndex,ppItem,pdwFlags)
  561.  
  562. #define IAMPlayList_GetRepeatInfo(This,pdwRepeatCount,pdwRepeatStart,pdwRepeatEnd)    \
  563.     (This)->lpVtbl -> GetRepeatInfo(This,pdwRepeatCount,pdwRepeatStart,pdwRepeatEnd)
  564.  
  565. #endif /* COBJMACROS */
  566.  
  567.  
  568. #endif     /* C style interface */
  569.  
  570.  
  571.  
  572. HRESULT STDMETHODCALLTYPE IAMPlayList_GetFlags_Proxy( 
  573.     IAMPlayList __RPC_FAR * This,
  574.     /* [out] */ DWORD __RPC_FAR *pdwFlags);
  575.  
  576.  
  577. void __RPC_STUB IAMPlayList_GetFlags_Stub(
  578.     IRpcStubBuffer *This,
  579.     IRpcChannelBuffer *_pRpcChannelBuffer,
  580.     PRPC_MESSAGE _pRpcMessage,
  581.     DWORD *_pdwStubPhase);
  582.  
  583.  
  584. HRESULT STDMETHODCALLTYPE IAMPlayList_GetItemCount_Proxy( 
  585.     IAMPlayList __RPC_FAR * This,
  586.     /* [out] */ DWORD __RPC_FAR *pdwItems);
  587.  
  588.  
  589. void __RPC_STUB IAMPlayList_GetItemCount_Stub(
  590.     IRpcStubBuffer *This,
  591.     IRpcChannelBuffer *_pRpcChannelBuffer,
  592.     PRPC_MESSAGE _pRpcMessage,
  593.     DWORD *_pdwStubPhase);
  594.  
  595.  
  596. HRESULT STDMETHODCALLTYPE IAMPlayList_GetItem_Proxy( 
  597.     IAMPlayList __RPC_FAR * This,
  598.     /* [in] */ DWORD dwItemIndex,
  599.     /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem);
  600.  
  601.  
  602. void __RPC_STUB IAMPlayList_GetItem_Stub(
  603.     IRpcStubBuffer *This,
  604.     IRpcChannelBuffer *_pRpcChannelBuffer,
  605.     PRPC_MESSAGE _pRpcMessage,
  606.     DWORD *_pdwStubPhase);
  607.  
  608.  
  609. HRESULT STDMETHODCALLTYPE IAMPlayList_GetNamedEvent_Proxy( 
  610.     IAMPlayList __RPC_FAR * This,
  611.     /* [in] */ WCHAR __RPC_FAR *pwszEventName,
  612.     /* [in] */ DWORD dwItemIndex,
  613.     /* [out] */ IAMPlayListItem __RPC_FAR *__RPC_FAR *ppItem,
  614.     /* [out] */ DWORD __RPC_FAR *pdwFlags);
  615.  
  616.  
  617. void __RPC_STUB IAMPlayList_GetNamedEvent_Stub(
  618.     IRpcStubBuffer *This,
  619.     IRpcChannelBuffer *_pRpcChannelBuffer,
  620.     PRPC_MESSAGE _pRpcMessage,
  621.     DWORD *_pdwStubPhase);
  622.  
  623.  
  624. HRESULT STDMETHODCALLTYPE IAMPlayList_GetRepeatInfo_Proxy( 
  625.     IAMPlayList __RPC_FAR * This,
  626.     /* [out] */ DWORD __RPC_FAR *pdwRepeatCount,
  627.     /* [out] */ DWORD __RPC_FAR *pdwRepeatStart,
  628.     /* [out] */ DWORD __RPC_FAR *pdwRepeatEnd);
  629.  
  630.  
  631. void __RPC_STUB IAMPlayList_GetRepeatInfo_Stub(
  632.     IRpcStubBuffer *This,
  633.     IRpcChannelBuffer *_pRpcChannelBuffer,
  634.     PRPC_MESSAGE _pRpcMessage,
  635.     DWORD *_pdwStubPhase);
  636.  
  637.  
  638.  
  639. #endif     /* __IAMPlayList_INTERFACE_DEFINED__ */
  640.  
  641.  
  642. #ifndef __ISpecifyParticularPages_INTERFACE_DEFINED__
  643. #define __ISpecifyParticularPages_INTERFACE_DEFINED__
  644.  
  645. /* interface ISpecifyParticularPages */
  646. /* [object][helpstring][uuid] */ 
  647.  
  648.  
  649. EXTERN_C const IID IID_ISpecifyParticularPages;
  650.  
  651. #if defined(__cplusplus) && !defined(CINTERFACE)
  652.     
  653.     MIDL_INTERFACE("4C437B91-6E9E-11d1-A704-006097C4E476")
  654.     ISpecifyParticularPages : public IUnknown
  655.     {
  656.     public:
  657.         virtual HRESULT STDMETHODCALLTYPE GetPages( 
  658.             /* [in] */ REFGUID guidWhatPages,
  659.             /* [out] */ CAUUID __RPC_FAR *pPages) = 0;
  660.         
  661.     };
  662.     
  663. #else     /* C style interface */
  664.  
  665.     typedef struct ISpecifyParticularPagesVtbl
  666.     {
  667.         BEGIN_INTERFACE
  668.         
  669.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  670.             ISpecifyParticularPages __RPC_FAR * This,
  671.             /* [in] */ REFIID riid,
  672.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  673.         
  674.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  675.             ISpecifyParticularPages __RPC_FAR * This);
  676.         
  677.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  678.             ISpecifyParticularPages __RPC_FAR * This);
  679.         
  680.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPages )( 
  681.             ISpecifyParticularPages __RPC_FAR * This,
  682.             /* [in] */ REFGUID guidWhatPages,
  683.             /* [out] */ CAUUID __RPC_FAR *pPages);
  684.         
  685.         END_INTERFACE
  686.     } ISpecifyParticularPagesVtbl;
  687.  
  688.     interface ISpecifyParticularPages
  689.     {
  690.         CONST_VTBL struct ISpecifyParticularPagesVtbl __RPC_FAR *lpVtbl;
  691.     };
  692.  
  693.     
  694.  
  695. #ifdef COBJMACROS
  696.  
  697.  
  698. #define ISpecifyParticularPages_QueryInterface(This,riid,ppvObject)    \
  699.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  700.  
  701. #define ISpecifyParticularPages_AddRef(This)    \
  702.     (This)->lpVtbl -> AddRef(This)
  703.  
  704. #define ISpecifyParticularPages_Release(This)    \
  705.     (This)->lpVtbl -> Release(This)
  706.  
  707.  
  708. #define ISpecifyParticularPages_GetPages(This,guidWhatPages,pPages)    \
  709.     (This)->lpVtbl -> GetPages(This,guidWhatPages,pPages)
  710.  
  711. #endif /* COBJMACROS */
  712.  
  713.  
  714. #endif     /* C style interface */
  715.  
  716.  
  717.  
  718. HRESULT STDMETHODCALLTYPE ISpecifyParticularPages_GetPages_Proxy( 
  719.     ISpecifyParticularPages __RPC_FAR * This,
  720.     /* [in] */ REFGUID guidWhatPages,
  721.     /* [out] */ CAUUID __RPC_FAR *pPages);
  722.  
  723.  
  724. void __RPC_STUB ISpecifyParticularPages_GetPages_Stub(
  725.     IRpcStubBuffer *This,
  726.     IRpcChannelBuffer *_pRpcChannelBuffer,
  727.     PRPC_MESSAGE _pRpcMessage,
  728.     DWORD *_pdwStubPhase);
  729.  
  730.  
  731.  
  732. #endif     /* __ISpecifyParticularPages_INTERFACE_DEFINED__ */
  733.  
  734.  
  735. #ifndef __IAMRebuild_INTERFACE_DEFINED__
  736. #define __IAMRebuild_INTERFACE_DEFINED__
  737.  
  738. /* interface IAMRebuild */
  739. /* [object][helpstring][uuid][local] */ 
  740.  
  741.  
  742. EXTERN_C const IID IID_IAMRebuild;
  743.  
  744. #if defined(__cplusplus) && !defined(CINTERFACE)
  745.     
  746.     MIDL_INTERFACE("02EF04DD-7580-11d1-BECE-00C04FB6E937")
  747.     IAMRebuild : public IUnknown
  748.     {
  749.     public:
  750.         virtual HRESULT STDMETHODCALLTYPE RebuildNow( void) = 0;
  751.         
  752.     };
  753.     
  754. #else     /* C style interface */
  755.  
  756.     typedef struct IAMRebuildVtbl
  757.     {
  758.         BEGIN_INTERFACE
  759.         
  760.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  761.             IAMRebuild __RPC_FAR * This,
  762.             /* [in] */ REFIID riid,
  763.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  764.         
  765.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  766.             IAMRebuild __RPC_FAR * This);
  767.         
  768.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  769.             IAMRebuild __RPC_FAR * This);
  770.         
  771.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RebuildNow )( 
  772.             IAMRebuild __RPC_FAR * This);
  773.         
  774.         END_INTERFACE
  775.     } IAMRebuildVtbl;
  776.  
  777.     interface IAMRebuild
  778.     {
  779.         CONST_VTBL struct IAMRebuildVtbl __RPC_FAR *lpVtbl;
  780.     };
  781.  
  782.     
  783.  
  784. #ifdef COBJMACROS
  785.  
  786.  
  787. #define IAMRebuild_QueryInterface(This,riid,ppvObject)    \
  788.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  789.  
  790. #define IAMRebuild_AddRef(This)    \
  791.     (This)->lpVtbl -> AddRef(This)
  792.  
  793. #define IAMRebuild_Release(This)    \
  794.     (This)->lpVtbl -> Release(This)
  795.  
  796.  
  797. #define IAMRebuild_RebuildNow(This)    \
  798.     (This)->lpVtbl -> RebuildNow(This)
  799.  
  800. #endif /* COBJMACROS */
  801.  
  802.  
  803. #endif     /* C style interface */
  804.  
  805.  
  806.  
  807. HRESULT STDMETHODCALLTYPE IAMRebuild_RebuildNow_Proxy( 
  808.     IAMRebuild __RPC_FAR * This);
  809.  
  810.  
  811. void __RPC_STUB IAMRebuild_RebuildNow_Stub(
  812.     IRpcStubBuffer *This,
  813.     IRpcChannelBuffer *_pRpcChannelBuffer,
  814.     PRPC_MESSAGE _pRpcMessage,
  815.     DWORD *_pdwStubPhase);
  816.  
  817.  
  818.  
  819. #endif     /* __IAMRebuild_INTERFACE_DEFINED__ */
  820.  
  821.  
  822. /* interface __MIDL_itf_playlist_0351 */
  823. /* [local] */ 
  824.  
  825. EXTERN_GUID(IID_IAMPlayListItem,0x56a868ff,0x0ad4,0x11ce,0xb0,0xa3,0x0,0x20,0xaf,0x0b,0xa7,0x70);
  826. EXTERN_GUID(IID_IAMRebuild,0x2ef04dd,0x7580,0x11d1,0xbe,0xce,0x0,0xc0,0x4f,0xb6,0xe9,0x37);
  827. EXTERN_GUID(IID_IAMPlayList,0x56a868fe,0x0ad4,0x11ce,0xb0,0xa3,0x0,0x20,0xaf,0x0b,0xa7,0x70);
  828. EXTERN_GUID(SPECIFYPAGES_STATISTICS,0x4c437b92,0x6e9e,0x11d1,0xa7,0x4,0x0,0x60,0x97,0xc4,0xe4,0x76);
  829. EXTERN_GUID(IID_ISpecifyParticularPages,0x4c437b91,0x6e9e,0x11d1,0xa7,0x4,0x0,0x60,0x97,0xc4,0xe4,0x76);
  830.  
  831.  
  832. extern RPC_IF_HANDLE __MIDL_itf_playlist_0351_v0_0_c_ifspec;
  833. extern RPC_IF_HANDLE __MIDL_itf_playlist_0351_v0_0_s_ifspec;
  834.  
  835. /* Additional Prototypes for ALL interfaces */
  836.  
  837. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  838. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  839. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  840. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  841.  
  842. /* end of Additional Prototypes */
  843.  
  844. #ifdef __cplusplus
  845. }
  846. #endif
  847.  
  848. #endif
  849.  
  850.  
  851. #pragma option pop /*P_O_Pop*/
  852.