rtEXIEncStringTables.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2008 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  *****************************************************************************/
00031 #ifndef _RTEXIENCSTRINGTABLES_H_
00032 #define _RTEXIENCSTRINGTABLES_H_
00033 
00034 #include "rtexisrc/rtEXIEncStringTable.h"
00035 #include "rtxsrc/rtxHashMap.h"
00036 #include "rtxmlsrc/osrtxml.h"
00037 
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif
00041 
00046 typedef struct {
00051    OSEXIEncStringTable uriTable;
00052     
00059    OSRTHashMap prefixTables;
00060     
00067     OSRTHashMap localNameTables;
00068     
00074     OSRTHashMap localValueTables;
00075     
00080     OSEXIEncStringTable globalValueTable;
00081     
00082 } OSEXIEncStringTables;
00083 
00090 EXTERNEXI void rtEXIEncStrTabsInit 
00091 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs);
00092 
00099 EXTERNEXI void rtEXIEncStrTabsClear 
00100 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs);
00101 
00110 EXTERNEXI OSUINT32 rtEXIEncStrTabsAddURI 
00111 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri);
00112 
00122 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetURIID
00123 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri);
00124     
00132 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetURITableSize 
00133 (OSEXIEncStringTables* pstrtabs);
00134 
00145 EXTERNEXI OSUINT32 rtEXIEncStrTabsAddPrefix
00146 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri, 
00147  const OSUTF8CHAR* prefix);
00148 
00158 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetPrefixID
00159 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri, 
00160  const OSUTF8CHAR* prefix);
00161 
00170 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetPrefixTableSize
00171 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri);
00172 
00183 EXTERNEXI OSUINT32 rtEXIEncStrTabsAddLocalName
00184 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri, 
00185  const OSUTF8CHAR* name);
00186 
00196 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetLocalNameID
00197 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri, 
00198  const OSUTF8CHAR* name);
00199 
00208 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetLocalNameTableSize
00209 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* uri);
00210 
00221 EXTERNEXI OSUINT32 rtEXIEncStrTabsAddLocalValue
00222 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs, const OSXMLFullQName* qname, 
00223  const OSUTF8CHAR* value);
00224 
00234 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetLocalValueID
00235 (OSEXIEncStringTables* pstrtabs, const OSXMLFullQName* qname, 
00236  const OSUTF8CHAR* value);
00237 
00246 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetLocalValueTableSize
00247 (OSEXIEncStringTables* pstrtabs, const OSXMLFullQName* qname);
00248 
00258 EXTERNEXI OSUINT32 rtEXIEncStrTabsAddGlobalValue 
00259 (OSCTXT* pctxt, OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* value);
00260 
00270 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetGlobalValueID
00271 (OSEXIEncStringTables* pstrtabs, const OSUTF8CHAR* value);
00272 
00280 EXTERNEXI OSUINT32 rtEXIEncStrTabsGetGlobalValueTableSize 
00281 (OSEXIEncStringTables* pstrtabs);
00282 
00283 #ifdef __cplusplus
00284 }
00285 #endif
00286 
00289 #endif
00290