ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

xmllite.idl
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2010 Nikolay Sivov
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00017  */
00018 
00019 import "unknwn.idl";
00020 import "objidl.idl";
00021 import "oaidl.idl";
00022 
00023 typedef enum XmlNodeType {
00024     XmlNodeType_None                  = 0,
00025     XmlNodeType_Element               = 1,
00026     XmlNodeType_Attribute             = 2,
00027     XmlNodeType_Text                  = 3,
00028     XmlNodeType_CDATA                 = 4,
00029     XmlNodeType_ProcessingInstruction = 7,
00030     XmlNodeType_Comment               = 8,
00031     XmlNodeType_DocumentType          = 10,
00032     XmlNodeType_Whitespace            = 13,
00033     XmlNodeType_EndElement            = 15,
00034     XmlNodeType_XmlDeclaration        = 17,
00035     _XmlNodeType_Last                 = 17
00036 } XmlNodeType;
00037 
00038 /* IXmlReader */
00039 [
00040   local,
00041   object,
00042   uuid(7279fc81-709d-4095-b63d-69fe4b0d9030),
00043   pointer_default(unique)
00044 ]
00045 interface IXmlReader : IUnknown
00046 {
00047     HRESULT SetInput( [in] IUnknown *input);
00048     HRESULT GetProperty( [in] UINT property, [out] LONG_PTR *value);
00049     HRESULT SetProperty( [in] UINT property, [in] LONG_PTR value);
00050     HRESULT Read( [out] XmlNodeType *node_type);
00051     HRESULT GetNodeType( [out] XmlNodeType *node_type);
00052     HRESULT MoveToFirstAttribute(void);
00053     HRESULT MoveToNextAttribute(void);
00054     HRESULT MoveToAttributeByName( [in] LPCWSTR local_name,
00055                                    [in] LPCWSTR namespaceUri);
00056     HRESULT MoveToElement(void);
00057     HRESULT GetQualifiedName( [out] LPCWSTR *qualifiedName,
00058                               [out] UINT *qualifiedName_length);
00059     HRESULT GetNamespaceUri( [out] LPCWSTR *namespaceUri,
00060                              [out] UINT *nnamespaceUri_length);
00061     HRESULT GetLocalName( [out] LPCWSTR *local_name,
00062                           [out] UINT *locale_name_length);
00063     HRESULT GetPrefix( [out] LPCWSTR *prefix,
00064                        [out] UINT *prefix_length);
00065     HRESULT GetValue( [out] LPCWSTR *value,
00066                       [out] UINT *value_length);
00067     HRESULT ReadValueChunk( [out] WCHAR *buffer,
00068                             [in]  UINT chunk_size,
00069                             [in,out] UINT *read);
00070     HRESULT GetBaseUri( [out] LPCWSTR *baseUri,
00071                         [out] UINT *baseUri_length);
00072     BOOL IsDefault(void);
00073     BOOL IsEmptyElement(void);
00074     HRESULT GetLineNumber( [out] UINT *lineNumber);
00075     HRESULT GetLinePosition( [out] UINT *linePosition);
00076     HRESULT GetAttributeCount( [out] UINT *attributeCount);
00077     HRESULT GetDepth( [out] UINT *depth);
00078     BOOL IsEOF(void);
00079 }
00080 
00081 /* IXmlReader state */
00082 cpp_quote("typedef enum XmlReadState")
00083 cpp_quote("{")
00084 cpp_quote("    XmlReadState_Initial     = 0,")
00085 cpp_quote("    XmlReadState_Interactive = 1,")
00086 cpp_quote("    XmlReadState_Error       = 2,")
00087 cpp_quote("    XmlReadState_EndOfFile   = 3,")
00088 cpp_quote("    XmlReadState_Closed      = 4")
00089 cpp_quote("} XmlReadState;")
00090 
00091 /* IXmlReader properties */
00092 cpp_quote("typedef enum XmlReaderProperty")
00093 cpp_quote("{")
00094 cpp_quote("    XmlReaderProperty_MultiLanguage      = 0,")
00095 cpp_quote("    XmlReaderProperty_ConformanceLevel   = XmlReaderProperty_MultiLanguage + 1,")
00096 cpp_quote("    XmlReaderProperty_RandomAccess       = XmlReaderProperty_ConformanceLevel + 1,")
00097 cpp_quote("    XmlReaderProperty_XmlResolver        = XmlReaderProperty_RandomAccess + 1,")
00098 cpp_quote("    XmlReaderProperty_DtdProcessing      = XmlReaderProperty_XmlResolver + 1,")
00099 cpp_quote("    XmlReaderProperty_ReadState          = XmlReaderProperty_DtdProcessing + 1,")
00100 cpp_quote("    XmlReaderProperty_MaxElementDepth    = XmlReaderProperty_ReadState + 1,")
00101 cpp_quote("    XmlReaderProperty_MaxEntityExpansion = XmlReaderProperty_MaxElementDepth + 1,")
00102 cpp_quote("    _XmlReaderProperty_Last              = XmlReaderProperty_MaxEntityExpansion")
00103 cpp_quote("} XmlReaderProperty;")
00104 
00105 /* IXmlReader construction */
00106 cpp_quote("STDAPI CreateXmlReader(REFIID riid, void **ppvObject, IMalloc *pMalloc);")
00107 
00108 cpp_quote("typedef IUnknown IXmlReaderInput;")
00109 cpp_quote("STDAPI CreateXmlReaderInputWithEncodingName(IUnknown *stream, IMalloc *pMalloc,")
00110 cpp_quote("                                            LPCWSTR encoding, BOOL hint,")
00111 cpp_quote("                                            LPCWSTR base_uri, IXmlReaderInput **ppInput);")
00112 
00113 typedef enum XmlStandalone
00114 {
00115     XmlStandalone_Omit,
00116     XmlStandalone_Yes,
00117     XmlStandalone_No,
00118     _XmlStandalone_Last = XmlStandalone_No
00119 } XmlStandalone;
00120 
00121 typedef enum XmlWriterProperty
00122 {
00123     XmlWriterProperty_MultiLanguage,
00124     XmlWriterProperty_Indent,
00125     XmlWriterProperty_ByteOrderMark,
00126     XmlWriterProperty_OmitXmlDeclaration,
00127     XmlWriterProperty_ConformanceLevel,
00128     _XmlWriterProperty_Last = XmlWriterProperty_OmitXmlDeclaration
00129 } XmlWriterProperty;
00130 
00131 /* IXmlWriter */
00132 [
00133   local,
00134   object,
00135   uuid(7279FC88-709D-4095-B63D-69FE4B0D9030),
00136   pointer_default(unique)
00137 ]
00138 interface IXmlWriter : IUnknown
00139 {
00140     HRESULT SetOutput([in] IUnknown *pOutput);
00141     HRESULT GetProperty([in] UINT nProperty, [out] LONG_PTR *ppValue);
00142     HRESULT SetProperty([in] UINT nProperty, [in] LONG_PTR pValue);
00143     HRESULT WriteAttributes([in] IXmlReader *pReader, [in] BOOL fWriteDefaultAttributes);
00144     HRESULT WriteAttributeString([in] LPCWSTR pwszPrefix, [in] LPCWSTR pwszLocalName,
00145                                  [in] LPCWSTR pwszNamespaceUri, [in] LPCWSTR pwszValue);
00146     HRESULT WriteCData([in] LPCWSTR pwszText);
00147     HRESULT WriteCharEntity([in] WCHAR wch);
00148     HRESULT WriteChars([in] const WCHAR *pwch, [in] UINT cwch);
00149     HRESULT WriteComment([in] LPCWSTR pwszComment);
00150     HRESULT WriteDocType([in] LPCWSTR pwszName, [in] LPCWSTR pwszPublicId,
00151                          [in] LPCWSTR pwszSystemId, [in] LPCWSTR pwszSubset);
00152     HRESULT WriteElementString([in] LPCWSTR pwszPrefix, [in] LPCWSTR pwszLocalName,
00153                                [in] LPCWSTR pwszNamespaceUri, [in] LPCWSTR pwszValue);
00154     HRESULT WriteEndDocument();
00155     HRESULT WriteEndElement();
00156     HRESULT WriteEntityRef([in] LPCWSTR pwszName);
00157     HRESULT WriteFullEndElement();
00158     HRESULT WriteName([in] LPCWSTR pwszName);
00159     HRESULT WriteNmToken([in] LPCWSTR pwszNmToken);
00160     HRESULT WriteNode([in] IXmlReader *pReader, [in] BOOL fWriteDefaultAttributes);
00161     HRESULT WriteNodeShallow([in] IXmlReader *pReader, [in] BOOL fWriteDefaultAttributes);
00162     HRESULT WriteProcessingInstruction([in] LPCWSTR pwszName, [in] LPCWSTR pwszText);
00163     HRESULT WriteQualifiedName([in] LPCWSTR pwszLocalName, [in] LPCWSTR pwszNamespaceUri);
00164     HRESULT WriteRaw([in] LPCWSTR pwszData);
00165     HRESULT WriteRawChars([in] const WCHAR *pwch, [in] UINT cwch);
00166     HRESULT WriteStartDocument([in] XmlStandalone standalone);
00167     HRESULT WriteStartElement([in] LPCWSTR pwszPrefix, [in] LPCWSTR pwszLocalName,
00168                               [in]  LPCWSTR pwszNamespaceUri);
00169     HRESULT WriteString([in] LPCWSTR pwszText);
00170     HRESULT WriteSurrogateCharEntity([in] WCHAR wchLow, [in] WCHAR wchHigh);
00171     HRESULT WriteWhitespace([in] LPCWSTR pwszWhitespace);
00172     HRESULT Flush();
00173 }

Generated on Mon May 28 2012 04:32:48 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.