You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
amarok/amarok/src/engine/helix/helix-sp/helix-include/common/include/hxvsrc.h

298 lines
7.8 KiB

/*
*
* This software is released under the provisions of the GPL version 2.
* see file "COPYING". If that file is not available, the full statement
* of the license can be found at
*
* http://www.fsf.org/licensing/licenses/gpl.txt
*
* Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
*
*/
#ifndef _HXVSRC_H
#define _HXVSRC_H
typedef _INTERFACE IHXStreamSource IHXStreamSource;
typedef _INTERFACE IHXFileObject IHXFileObject;
// Interfaces definded in this file
typedef _INTERFACE IHXFileViewSource IHXFileViewSource;
typedef _INTERFACE IHXFileViewSourceResponse IHXFileViewSourceResponse;
typedef _INTERFACE IHXViewSourceCommand IHXViewSourceCommand;
typedef _INTERFACE IHXViewSourceURLResponse IHXViewSourceURLResponse;
// $Private:
typedef _INTERFACE IHXClientViewSource IHXClientViewSource;
typedef _INTERFACE IHXClientViewSourceSink IHXClientViewSourceSink;
// $EndPrivate.
/****************************************************************************
*
* Interface:
*
* IHXFileViewSource
*
* IID_IHXFileViewSource:
*
* {00003500-0901-11d1-8B06-00A024406D59}
*
*/
enum SOURCE_TYPE
{
RAW_SOURCE,
HTML_SOURCE
};
DEFINE_GUID(IID_IHXFileViewSource, 0x00003500, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXFileViewSource
DECLARE_INTERFACE_(IHXFileViewSource, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXFileViewSource
*/
STDTQT_METHOD(InitViewSource) (THIS_
IHXFileObject* /*IN*/ pFileObject,
IHXFileViewSourceResponse* /*IN*/ pResp,
SOURCE_TYPE /*IN*/ sourceType,
IHXValues* /*IN*/ pOptions) PURE;
STDTQT_METHOD(GetSource) (THIS) PURE;
STDTQT_METHOD(Close) (THIS) PURE;
};
/****************************************************************************
*
* Interface:
*
* IHXFileViewSourceResponse
*
* IID_IHXFileViewSourceResponse:
*
* {00003501-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXFileViewSourceResponse, 0x00003501, 0x901, 0x11d1, 0x8b,
0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXFileViewSourceResponse
DECLARE_INTERFACE_(IHXFileViewSourceResponse, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXFileViewSourceResoponse
*/
STDTQT_METHOD(InitDone) (THIS_ HX_RESULT status ) PURE;
STDTQT_METHOD(SourceReady) (THIS_ HX_RESULT status,
IHXBuffer* pSource ) PURE;
STDTQT_METHOD(CloseDone) (THIS_ HX_RESULT) PURE;
};
/****************************************************************************
*
* Interface:
*
* IHXViewSourceCommand
*
* IID_IHXViewSourceCommand:
*
* {00003504-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXViewSourceCommand, 0x00003504, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXViewSourceCommand
DECLARE_INTERFACE_(IHXViewSourceCommand, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXViewSourceCommand
*/
STDMETHOD_(HXBOOL, CanViewSource) (THIS_
IHXStreamSource* pStream) PURE;
STDTQT_METHOD(DoViewSource) (THIS_
IHXStreamSource* pStream) PURE;
STDTQT_METHOD(GetViewSourceURL) (THIS_
IHXStreamSource* pSource,
IHXViewSourceURLResponse* pResp) PURE;
};
/****************************************************************************
*
* Interface:
*
* IHXViewSourceURLResponse
*
* IID_IHXViewSourceURLResponse:
*
* {00003505-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXViewSourceURLResponse, 0x00003505, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXViewSourceURLResponse
DECLARE_INTERFACE_(IHXViewSourceURLResponse, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXViewSourceURLResponse
*/
STDTQT_METHOD(ViewSourceURLReady) (THIS_
const char* /*out*/ pUrl) PURE;
};
// $Private:
/****************************************************************************
*
* Interface:
*
* IHXClientViewSource
*
* IID_IHXClientViewSource:
*
* {00003502-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXClientViewSource, 0x00003502, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXClientViewSource
DECLARE_INTERFACE_(IHXClientViewSource, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXClientViewSource
*/
STDTQT_METHOD(DoViewSource) (THIS_
IUnknown* /*IN*/ pPlayerContext,
IHXStreamSource* /*IN*/ pSource) PURE;
STDMETHOD_(HXBOOL, CanViewSource) (THIS_
IHXStreamSource* /*IN*/ pSource) PURE;
STDTQT_METHOD(GetViewSourceURL) (THIS_
IUnknown* pPlayerContext,
IHXStreamSource* pSource,
IHXViewSourceURLResponse* pResp) PURE;
};
/****************************************************************************
*
* Interface:
*
* IHXClientViewSourceSink
*
* IID_IHXClientViewSourceSink:
*
* {00003503-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXClientViewSourceSink, 0x00003503, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXClientViewSourceSink
DECLARE_INTERFACE_(IHXClientViewSourceSink, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXClientViewSourceSink
*/
STDTQT_METHOD(RegisterViewSourceHdlr) (THIS_
IHXClientViewSource* /*in*/ pViewSourceHdlr) PURE;
};
/****************************************************************************
*
* Interface:
*
* IHXClientViewRights
*
* IID_IHXClientViewRights:
*
* {00003506-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXClientViewRights, 0x00003506, 0x901, 0x11d1, 0x8b, 0x6,
0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXClientViewRights
DECLARE_INTERFACE_(IHXClientViewRights, IUnknown)
{
/*
* IUnknown methods
*/
STDTQT_METHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXClientViewRights
*/
STDTQT_METHOD(ViewRights) (THIS_
IUnknown* /*IN*/ pPlayerContext) PURE;
STDMETHOD_(HXBOOL, CanViewRights) (THIS) PURE;
};
// $EndPrivate.
#endif