osrtdom.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2003-2009 Objective Systems, Inc.
00003  *
00004  * This software is furnished under a license and may be used and copied
00005  * only in accordance with the terms of such license and with the
00006  * inclusion of the above copyright notice. This software or any other
00007  * copies thereof may not be provided or otherwise made available to any
00008  * other person. No title to and ownership of the software is hereby
00009  * transferred.
00010  *
00011  * The information in this software is subject to change without notice
00012  * and should not be construed as a commitment by Objective Systems, Inc.
00013  *
00014  * PROPRIETARY NOTICE
00015  *
00016  * This software is an unpublished work subject to a confidentiality agreement
00017  * and is protected by copyright and trade secret law.  Unauthorized copying,
00018  * redistribution or other use of this work is prohibited.
00019  *
00020  * The above notice of copyright on this source code product does not indicate
00021  * any actual or intended publication of such source code.
00022  *
00023  *****************************************************************************/
00040 #ifndef _OSRTDOM_H_
00041 #define _OSRTDOM_H_
00042 
00043 #include "rtxsrc/rtxCommon.h"
00044 #include "rtdomsrc/rtxDomDefs.h"
00045 #include "rtxmlsrc/osrtxml.h"
00046 #include "rtdomsrc/domAPI.h"
00047 #include "rtxmlsrc/rtXmlNamespace.h"
00048 
00054 /* This is necessary to disable a Visual C++ warning about an unreferenced
00055    formal parameter passed to the rtDom* functions. */
00056 #ifdef _MSC_VER
00057 #pragma warning(disable: 4100) 
00058 #endif /* _MSC_VER */
00059 
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063 
00082 EXTERNDOM int rtDomAddAttr (OSCTXT* pctxt,
00083                             OSRTDOMDocPtr domDoc,
00084                             OSRTDOMNodePtr node,
00085                             const OSUTF8CHAR* attrName,
00086                             OSXMLNamespace* pNS, 
00087                             OSRTDList* pNSAttrs);
00088 
00108 EXTERNDOM int rtDomAddNode (OSCTXT* pctxt, 
00109                             OSRTDOMDocPtr domDoc, 
00110                             OSRTDOMNodePtr parentNode, 
00111                             const OSUTF8CHAR* elemName,
00112                             OSXMLNamespace* pNS, 
00113                             OSRTDList* pNSAttrs);
00114 
00129 EXTERNDOM int rtDomAddNSAttrs 
00130    (OSCTXT* pctxt, OSRTDOMDocPtr domDoc, OSRTDOMNodePtr rootNode,
00131     OSRTDList* pNSAttrs);
00132 
00147 EXTERNDOM int rtDomEncXSIAttrs 
00148    (OSCTXT* pctxt, OSRTDOMDocPtr domDoc, OSRTDOMNodePtr node, 
00149     OSBOOL needXSI);
00150 
00160 EXTERNDOM int rtDomDecodeDoc 
00161    (OSRTDOMDocPtr domDoc, struct OSSAXHandlerBase* pSaxBase);
00162 
00172 EXTERNDOM int rtDomEncStringValue (OSCTXT* pctxt, 
00173                                    const OSUTF8CHAR* pvalue);
00174 
00184 EXTERNDOM int rtDomEncString (OSCTXT* pctxt, OSXMLSTRING* pvalue);
00185 
00206 EXTERNDOM int rtDomEncAny (OSCTXT* pctxt, OSRTDOMDocPtr domDoc, 
00207                            OSRTDOMNodePtr parentNode,
00208                            const OSXMLSTRING* pXmlData,
00209                            const OSUTF8CHAR* elemName,
00210                            OSXMLNamespace* pNS, 
00211                            OSRTDList* pNSAttrs);
00212 
00225 EXTERNDOM int rtDomEncAnyAttr (OSCTXT* pctxt, OSRTDOMDocPtr domDoc, 
00226                                OSRTDOMNodePtr node, OSRTDList* pAnyAttrList);
00227 
00244 EXTERNDOM int rtDomSetNode (OSCTXT* pctxt,
00245                             OSRTDOMDocPtr domDoc,
00246                             OSRTDOMNodePtr curNode);
00247 
00264 EXTERNDOM int rtDomAddSubTree (OSCTXT* pctxt, OSRTDOMDocPtr xmlDoc,
00265                                       OSRTDOMNodePtr node,
00266                                       const OSUTF8CHAR* pXmlData,
00267                                       size_t dataLen);
00268 
00269 
00270 #ifdef __cplusplus
00271 }
00272 #endif
00273 
00276 #endif /* _OSRTDOM_H_ */
00277