hxvsrc.h
上传用户:zhongxx05
上传日期:2007-06-06
资源大小:33641k
文件大小:9k
源码类别:

Symbian

开发平台:

C/C++

  1. /* ***** BEGIN LICENSE BLOCK ***** 
  2.  * Version: RCSL 1.0/RPSL 1.0 
  3.  *  
  4.  * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved. 
  5.  *      
  6.  * The contents of this file, and the files included with this file, are 
  7.  * subject to the current version of the RealNetworks Public Source License 
  8.  * Version 1.0 (the "RPSL") available at 
  9.  * http://www.helixcommunity.org/content/rpsl unless you have licensed 
  10.  * the file under the RealNetworks Community Source License Version 1.0 
  11.  * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl, 
  12.  * in which case the RCSL will apply. You may also obtain the license terms 
  13.  * directly from RealNetworks.  You may not use this file except in 
  14.  * compliance with the RPSL or, if you have a valid RCSL with RealNetworks 
  15.  * applicable to this file, the RCSL.  Please see the applicable RPSL or 
  16.  * RCSL for the rights, obligations and limitations governing use of the 
  17.  * contents of the file.  
  18.  *  
  19.  * This file is part of the Helix DNA Technology. RealNetworks is the 
  20.  * developer of the Original Code and owns the copyrights in the portions 
  21.  * it created. 
  22.  *  
  23.  * This file, and the files included with this file, is distributed and made 
  24.  * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 
  25.  * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES, 
  26.  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS 
  27.  * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 
  28.  * 
  29.  * Technology Compatibility Kit Test Suite(s) Location: 
  30.  *    http://www.helixcommunity.org/content/tck 
  31.  * 
  32.  * Contributor(s): 
  33.  *  
  34.  * ***** END LICENSE BLOCK ***** */ 
  35. #ifndef _HXVSRC_H
  36. #define _HXVSRC_H
  37. typedef _INTERFACE IHXStreamSource IHXStreamSource;
  38. typedef _INTERFACE IHXFileObject IHXFileObject;
  39. // Interfaces definded in this file
  40. typedef _INTERFACE IHXFileViewSource IHXFileViewSource;
  41. typedef _INTERFACE IHXFileViewSourceResponse IHXFileViewSourceResponse;
  42. typedef _INTERFACE IHXViewSourceCommand IHXViewSourceCommand;
  43. typedef _INTERFACE IHXViewSourceURLResponse IHXViewSourceURLResponse;
  44. // $Private:
  45. typedef _INTERFACE IHXClientViewSource IHXClientViewSource;
  46. typedef _INTERFACE IHXClientViewSourceSink IHXClientViewSourceSink;
  47. // $EndPrivate.
  48. /****************************************************************************
  49.  * 
  50.  *  Interface:
  51.  * 
  52.  * IHXFileViewSource
  53.  * 
  54.  *  IID_IHXFileViewSource:
  55.  * 
  56.  * {00003500-0901-11d1-8B06-00A024406D59}
  57.  * 
  58.  */
  59. enum SOURCE_TYPE
  60. {
  61.     RAW_SOURCE,
  62.     HTML_SOURCE
  63. };
  64. DEFINE_GUID(IID_IHXFileViewSource, 0x00003500, 0x901, 0x11d1, 0x8b, 0x6,
  65.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  66. #undef  INTERFACE
  67. #define INTERFACE   IHXFileViewSource
  68. DECLARE_INTERFACE_(IHXFileViewSource, IUnknown)
  69. {
  70.     /*
  71.      * IUnknown methods
  72.      */
  73.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  74.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  75.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  76.     /************************************************************************
  77.      *  IHXFileViewSource
  78.      */
  79.     STDMETHOD(InitViewSource) (THIS_
  80. IHXFileObject*     /*IN*/ pFileObject,
  81. IHXFileViewSourceResponse* /*IN*/ pResp,
  82. SOURCE_TYPE     /*IN*/ sourceType,
  83. IHXValues*     /*IN*/ pOptions) PURE;
  84.     STDMETHOD(GetSource)    (THIS) PURE;
  85.     STDMETHOD(Close)     (THIS) PURE;
  86. };
  87. /****************************************************************************
  88.  * 
  89.  *  Interface:
  90.  * 
  91.  * IHXFileViewSourceResponse
  92.  * 
  93.  *  IID_IHXFileViewSourceResponse:
  94.  * 
  95.  * {00003501-0901-11d1-8B06-00A024406D59}
  96.  * 
  97.  */
  98. DEFINE_GUID(IID_IHXFileViewSourceResponse, 0x00003501, 0x901, 0x11d1, 0x8b,
  99.     0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  100. #undef  INTERFACE
  101. #define INTERFACE   IHXFileViewSourceResponse
  102. DECLARE_INTERFACE_(IHXFileViewSourceResponse, IUnknown)
  103. {
  104.     /*
  105.      * IUnknown methods
  106.      */
  107.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  108.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  109.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  110.     /************************************************************************
  111.      *  IHXFileViewSourceResoponse
  112.      */
  113.     STDMETHOD(InitDone) (THIS_ HX_RESULT status ) PURE;
  114.     STDMETHOD(SourceReady) (THIS_ HX_RESULT status,
  115. IHXBuffer* pSource ) PURE;
  116.     STDMETHOD(CloseDone) (THIS_ HX_RESULT) PURE;
  117. };
  118. /****************************************************************************
  119.  * 
  120.  *  Interface:
  121.  * 
  122.  * IHXViewSourceCommand
  123.  * 
  124.  *  IID_IHXViewSourceCommand:
  125.  * 
  126.  * {00003504-0901-11d1-8B06-00A024406D59}
  127.  * 
  128.  */
  129. DEFINE_GUID(IID_IHXViewSourceCommand, 0x00003504, 0x901, 0x11d1, 0x8b, 0x6,
  130.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  131. #undef  INTERFACE
  132. #define INTERFACE   IHXViewSourceCommand
  133. DECLARE_INTERFACE_(IHXViewSourceCommand, IUnknown)
  134. {
  135.     /*
  136.      * IUnknown methods
  137.      */
  138.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  139.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  140.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  141.     /************************************************************************
  142.      *  IHXViewSourceCommand
  143.      */
  144.     STDMETHOD_(BOOL, CanViewSource) (THIS_
  145. IHXStreamSource* pStream) PURE;
  146.     STDMETHOD(DoViewSource) (THIS_
  147. IHXStreamSource* pStream) PURE;
  148.     STDMETHOD(GetViewSourceURL) (THIS_
  149. IHXStreamSource* pSource,
  150. IHXViewSourceURLResponse*      pResp) PURE;
  151. };
  152. /****************************************************************************
  153.  * 
  154.  *  Interface:
  155.  * 
  156.  * IHXViewSourceURLResponse
  157.  * 
  158.  *  IID_IHXViewSourceURLResponse:
  159.  * 
  160.  * {00003505-0901-11d1-8B06-00A024406D59}
  161.  * 
  162.  */
  163. DEFINE_GUID(IID_IHXViewSourceURLResponse, 0x00003505, 0x901, 0x11d1, 0x8b, 0x6,
  164.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  165. #undef  INTERFACE
  166. #define INTERFACE   IHXViewSourceURLResponse
  167. DECLARE_INTERFACE_(IHXViewSourceURLResponse, IUnknown)
  168. {
  169.     /*
  170.      * IUnknown methods
  171.      */
  172.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  173.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  174.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  175.     /************************************************************************
  176.      *  IHXViewSourceURLResponse
  177.      */
  178.     STDMETHOD(ViewSourceURLReady) (THIS_
  179. const char* /*out*/ pUrl) PURE;
  180. };
  181. // $Private:
  182. /****************************************************************************
  183.  * 
  184.  *  Interface:
  185.  * 
  186.  * IHXClientViewSource
  187.  * 
  188.  *  IID_IHXClientViewSource:
  189.  * 
  190.  * {00003502-0901-11d1-8B06-00A024406D59}
  191.  * 
  192.  */
  193. DEFINE_GUID(IID_IHXClientViewSource, 0x00003502, 0x901, 0x11d1, 0x8b, 0x6,
  194.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  195. #undef  INTERFACE
  196. #define INTERFACE   IHXClientViewSource
  197. DECLARE_INTERFACE_(IHXClientViewSource, IUnknown)
  198. {
  199.     /*
  200.      * IUnknown methods
  201.      */
  202.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  203.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  204.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  205.     /************************************************************************
  206.      *  IHXClientViewSource
  207.      */
  208.     STDMETHOD(DoViewSource) (THIS_
  209. IUnknown*       /*IN*/ pPlayerContext,
  210. IHXStreamSource*       /*IN*/ pSource) PURE;
  211.     STDMETHOD_(BOOL, CanViewSource) (THIS_
  212. IHXStreamSource*       /*IN*/ pSource) PURE;
  213.     STDMETHOD(GetViewSourceURL) (THIS_
  214. IUnknown*                        pPlayerContext,
  215. IHXStreamSource*                pSource,
  216. IHXViewSourceURLResponse*       pResp) PURE;
  217. };
  218. /****************************************************************************
  219.  * 
  220.  *  Interface:
  221.  * 
  222.  * IHXClientViewSourceSink
  223.  * 
  224.  *  IID_IHXClientViewSourceSink:
  225.  * 
  226.  * {00003503-0901-11d1-8B06-00A024406D59}
  227.  * 
  228.  */
  229. DEFINE_GUID(IID_IHXClientViewSourceSink, 0x00003503, 0x901, 0x11d1, 0x8b, 0x6,
  230.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  231. #undef  INTERFACE
  232. #define INTERFACE   IHXClientViewSourceSink
  233. DECLARE_INTERFACE_(IHXClientViewSourceSink, IUnknown)
  234. {
  235.     /*
  236.      * IUnknown methods
  237.      */
  238.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  239.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  240.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  241.     /************************************************************************
  242.      *  IHXClientViewSourceSink
  243.      */
  244.     STDMETHOD(RegisterViewSourceHdlr) (THIS_
  245. IHXClientViewSource* /*in*/ pViewSourceHdlr) PURE;
  246. };
  247. /****************************************************************************
  248.  * 
  249.  *  Interface:
  250.  * 
  251.  * IHXClientViewRights
  252.  * 
  253.  *  IID_IHXClientViewRights:
  254.  * 
  255.  * {00003506-0901-11d1-8B06-00A024406D59}
  256.  * 
  257.  */
  258. DEFINE_GUID(IID_IHXClientViewRights, 0x00003506, 0x901, 0x11d1, 0x8b, 0x6,
  259.     0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
  260. #undef  INTERFACE
  261. #define INTERFACE   IHXClientViewRights
  262. DECLARE_INTERFACE_(IHXClientViewRights, IUnknown)
  263. {
  264.     /*
  265.      * IUnknown methods
  266.      */
  267.     STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
  268.     STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
  269.     STDMETHOD_(ULONG32,Release) (THIS) PURE;
  270.     /************************************************************************
  271.      *  IHXClientViewRights
  272.      */
  273.     STDMETHOD(ViewRights) (THIS_
  274. IUnknown*       /*IN*/ pPlayerContext) PURE;
  275.     STDMETHOD_(BOOL, CanViewRights) (THIS) PURE;
  276. };
  277. // $EndPrivate.
  278. #endif