1 /****************************************************************************
3 * $Id: rmaxmltg.h 7 2003-05-30 02:18:02Z gabest $
5 * Copyright (C) 1995-1999 RealNetworks, Inc. All rights reserved..
7 * http://www.real.com/devzone
9 * This program contains proprietary
10 * information of Progressive Networks, Inc, and is licensed
11 * subject to restrictions on use and distribution.
14 * RealMedia Architecture XMLTag Object Interfaces.
23 typedef _INTERFACE IRMAXMLTagObject IRMAXMLTagObject
;
24 typedef _INTERFACE IRMAXMLTagObjectResponse IRMAXMLTagObjectResponse
;
26 /****************************************************************************
30 * IRMAXMLTagObjectResponse
32 * IID_IRMAXMLTagObjectResponse:
34 * {00002C02-0901-11d1-8B06-00A024406D59}
37 DEFINE_GUID(IID_IRMAXMLTagObjectResponse
, 0x00002C02, 0x901, 0x11d1, 0x8b, 0x6,
38 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);
41 #define INTERFACE IRMAXMLTagObjectResponse
43 DECLARE_INTERFACE_(IRMAXMLTagObjectResponse
, IUnknown
)
48 STDMETHOD(QueryInterface
) (THIS_
52 STDMETHOD_(ULONG
,AddRef
) (THIS
) PURE
;
54 STDMETHOD_(ULONG
,Release
) (THIS
) PURE
;
56 /************************************************************************
57 * IRMAXMLTagObjectResponse
59 STDMETHOD(OnTagDone
) (THIS_ UINT32 ulInstance
, IRMABuffer
* pTag
) PURE
;
63 /****************************************************************************
69 * IID_IRMAXMLTagHandler:
71 * {00002C00-0901-11d1-8B06-00A024406D59}
74 DEFINE_GUID(IID_IRMAXMLTagHandler
, 0x00002C03, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
75 0xa0, 0x24, 0x40, 0x6d, 0x59);
78 #define INTERFACE IRMAXMLTagHandler
80 DECLARE_INTERFACE_(IRMAXMLTagHandler
, IUnknown
)
85 STDMETHOD(QueryInterface
) (THIS_
89 STDMETHOD_(ULONG
,AddRef
) (THIS
) PURE
;
91 STDMETHOD_(ULONG
,Release
) (THIS
) PURE
;
93 /************************************************************************
96 STDMETHOD(InitTagHandler
) (THIS_ IRMAValues
* pOptions
) PURE
;
97 STDMETHOD(CreateTagObject
) (THIS_ IRMAXMLTagObject
** ppObj
) PURE
;
98 STDMETHOD(GetTagHandlerInfo
) (THIS_
99 REF(const char*) /*OUT*/ pShortName
,
100 REF(const char**) /*OUT*/ pTag
,
101 REF(BOOL
) /*OUT*/ bCanHandleAsync
) PURE
;
105 /****************************************************************************
111 * IID_IRMAXMLTagObject:
113 * {00002C01-0901-11d1-8B06-00A024406D59}
116 DEFINE_GUID(IID_IRMAXMLTagObject
, 0x00002C04, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
117 0xa0, 0x24, 0x40, 0x6d, 0x59);
120 #define INTERFACE IRMAXMLTagObject
122 DECLARE_INTERFACE_(IRMAXMLTagObject
, IUnknown
)
127 STDMETHOD(QueryInterface
) (THIS_
131 STDMETHOD_(ULONG
,AddRef
) (THIS
) PURE
;
133 STDMETHOD_(ULONG
,Release
) (THIS
) PURE
;
135 /************************************************************************
138 STDMETHOD(InitTagObject
) (IRMAXMLTagObjectResponse
* pResp
) PURE
;
139 STDMETHOD(OnTag
) (THIS_ UINT32 ulInstance
, IRMABuffer
* pTag
) PURE
;
140 STDMETHOD(Close
) (THIS
) PURE
;