<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Xerces-C++: XMLAttDef.hpp Source File</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.6 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="classes.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <h1>XMLAttDef.hpp</h1><a href="XMLAttDef_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span> <a name="l00002"></a>00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</span> <a name="l00003"></a>00003 <span class="comment"> * contributor license agreements. See the NOTICE file distributed with</span> <a name="l00004"></a>00004 <span class="comment"> * this work for additional information regarding copyright ownership.</span> <a name="l00005"></a>00005 <span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span> <a name="l00006"></a>00006 <span class="comment"> * (the "License"); you may not use this file except in compliance with</span> <a name="l00007"></a>00007 <span class="comment"> * the License. You may obtain a copy of the License at</span> <a name="l00008"></a>00008 <span class="comment"> * </span> <a name="l00009"></a>00009 <span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span> <a name="l00010"></a>00010 <span class="comment"> * </span> <a name="l00011"></a>00011 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span> <a name="l00012"></a>00012 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span> <a name="l00013"></a>00013 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span> <a name="l00014"></a>00014 <span class="comment"> * See the License for the specific language governing permissions and</span> <a name="l00015"></a>00015 <span class="comment"> * limitations under the License.</span> <a name="l00016"></a>00016 <span class="comment"> */</span> <a name="l00017"></a>00017 <a name="l00018"></a>00018 <span class="comment">/*</span> <a name="l00019"></a>00019 <span class="comment"> * $Id: XMLAttDef.hpp 676911 2008-07-15 13:27:32Z amassari $</span> <a name="l00020"></a>00020 <span class="comment"> */</span> <a name="l00021"></a>00021 <a name="l00022"></a>00022 <span class="preprocessor">#if !defined(XERCESC_INCLUDE_GUARD_XMLATTDEF_HPP)</span> <a name="l00023"></a><a class="code" href="XMLAttDef_8hpp.html#ab096a0f12299f27b2beed9f9797d68a">00023</a> <span class="preprocessor"></span><span class="preprocessor">#define XERCESC_INCLUDE_GUARD_XMLATTDEF_HPP</span> <a name="l00024"></a>00024 <span class="preprocessor"></span> <a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="PlatformUtils_8hpp.html">xercesc/util/PlatformUtils.hpp</a>></span> <a name="l00026"></a>00026 <span class="preprocessor">#include <<a class="code" href="XMLString_8hpp.html">xercesc/util/XMLString.hpp</a>></span> <a name="l00027"></a>00027 <span class="preprocessor">#include <<a class="code" href="XMemory_8hpp.html">xercesc/util/XMemory.hpp</a>></span> <a name="l00028"></a>00028 <span class="preprocessor">#include <xercesc/internal/XSerializable.hpp></span> <a name="l00029"></a>00029 <a name="l00030"></a>00030 <a class="code" href="XercesDefs_8hpp.html#43d74fa53d868d978f3e97cbb78b194d">XERCES_CPP_NAMESPACE_BEGIN</a> <a name="l00031"></a>00031 <a name="l00032"></a>00032 <span class="keyword">class </span><a class="code" href="classXMLAttr.html" title="This class defines the information about an attribute that will come out of the scanner...">XMLAttr</a>; <a name="l00033"></a>00033 <a name="l00052"></a><a class="code" href="classXMLAttDef.html">00052</a> <span class="keyword">class </span><a class="code" href="XercesDefs_8hpp.html#13df5a01e63e51f62a1467b588b59054">XMLPARSER_EXPORT</a> <a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a> : <span class="keyword">public</span> XSerializable, <span class="keyword">public</span> <a class="code" href="classXMemory.html" title="This class makes it possible to override the C++ memory management by adding new/delete...">XMemory</a> <a name="l00053"></a>00053 { <a name="l00054"></a>00054 <span class="keyword">public</span>: <a name="l00055"></a>00055 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00056"></a>00056 <span class="comment">// Class specific types</span> <a name="l00057"></a>00057 <span class="comment">//</span> <a name="l00058"></a>00058 <span class="comment">// AttTypes</span> <a name="l00059"></a>00059 <span class="comment">// The list of possible types that an attribute can have, according</span> <a name="l00060"></a>00060 <span class="comment">// to the XML 1.0 spec and schema.</span> <a name="l00061"></a>00061 <span class="comment">//</span> <a name="l00062"></a>00062 <span class="comment">// DefAttTypes</span> <a name="l00063"></a>00063 <span class="comment">// The modifiers that an attribute decl can have, which indicates</span> <a name="l00064"></a>00064 <span class="comment">// whether instances of that attributes are required, implied, etc..</span> <a name="l00065"></a>00065 <span class="comment">//</span> <a name="l00066"></a>00066 <span class="comment">// CreateReasons</span> <a name="l00067"></a>00067 <span class="comment">// This type is used to store how an attribute declaration got into</span> <a name="l00068"></a>00068 <span class="comment">// the elementdecl's attribute pool.</span> <a name="l00069"></a>00069 <span class="comment">//</span> <a name="l00070"></a>00070 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00071"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">00071</a> <span class="keyword">enum</span> <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> <a name="l00072"></a>00072 { <a name="l00073"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255e77a76f18e1eea5d67911599b13ce76d">00073</a> CData = 0 <a name="l00074"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255ca6b80c948a3410cf59ca1b0ffce0be0">00074</a> , ID = 1 <a name="l00075"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792553021331fcb55d88bd7e061590b2cb751">00075</a> , IDRef = 2 <a name="l00076"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255c999677152f4913000f179952b477848">00076</a> , IDRefs = 3 <a name="l00077"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255b72cc2bfb80dfd2ccbf38be02736bd43">00077</a> , Entity = 4 <a name="l00078"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792557b094bdadc825139ab5f37983e8c12c4">00078</a> , Entities = 5 <a name="l00079"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792550b3cc623c4436a76770f90455d636c67">00079</a> , NmToken = 6 <a name="l00080"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255285e203f331c42ce85d790324241912f">00080</a> , NmTokens = 7 <a name="l00081"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255d3eb297500851c2ffcfd77fb4ff4ea62">00081</a> , Notation = 8 <a name="l00082"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255dabd249437a691f7d8865124a38369f5">00082</a> , Enumeration = 9 <a name="l00083"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de7925575a7f79bb287fb54fd16999801912950">00083</a> , Simple = 10 <a name="l00084"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255ef7f6f4174016b21d150dcb871e5840e">00084</a> , Any_Any = 11 <a name="l00085"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792558483dae1f80e4e75924975f6629f01db">00085</a> , Any_Other = 12 <a name="l00086"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255b69234c28d1d2e3b7d46a657661a5992">00086</a> , Any_List = 13 <a name="l00087"></a>00087 <a name="l00088"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de7925585775d4db3615ab4d5da0103fa8bbec7">00088</a> , AttTypes_Count <a name="l00089"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792557ee8523e6f04c979ed32c8033e474bce">00089</a> , AttTypes_Min = 0 <a name="l00090"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de792558d84e7f903f756c599ae59a30186da05">00090</a> , AttTypes_Max = 13 <a name="l00091"></a><a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255ece7ca143d3cc4f34f31c54ab4a3a5eb">00091</a> , AttTypes_Unknown = -1 <a name="l00092"></a>00092 }; <a name="l00093"></a>00093 <a name="l00094"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">00094</a> <span class="keyword">enum</span> <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> <a name="l00095"></a>00095 { <a name="l00096"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f69a7213ea4d75a232f8def80984d588b">00096</a> Default = 0 <a name="l00097"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f2df85eb75f76a97c19072f3fb2ed85ae">00097</a> , Fixed = 1 <a name="l00098"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f6cce4ac910f5cea46863719f5ad9d9ce">00098</a> , Required = 2 <a name="l00099"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f34db30f3e69e92bde6f2a3c7ad31a88a">00099</a> , Required_And_Fixed = 3 <a name="l00100"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f3e862c811188bf22e2ea40ce33cf9969">00100</a> , Implied = 4 <a name="l00101"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f409158e26eefd2e0d6ecaae6c9b84d5c">00101</a> , ProcessContents_Skip = 5 <a name="l00102"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f6cb43561595a82d55805fc65a7c087bd">00102</a> , ProcessContents_Lax = 6 <a name="l00103"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f652d7d06580929730ce0a722d32210c6">00103</a> , ProcessContents_Strict = 7 <a name="l00104"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f630b63d172b630b2a7fe5df0a83123fb">00104</a> , Prohibited = 8 <a name="l00105"></a>00105 <a name="l00106"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f98f10a178066735a452e9c1e4f60e2d5">00106</a> , DefAttTypes_Count <a name="l00107"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02fbe10eeab4aa4594fa3e66c6e28a4d6c7">00107</a> , DefAttTypes_Min = 0 <a name="l00108"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f620229a388b3776665ca17c8500751d4">00108</a> , DefAttTypes_Max = 8 <a name="l00109"></a><a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f808bdb5044eb8c92a6f595116a2a2502">00109</a> , DefAttTypes_Unknown = -1 <a name="l00110"></a>00110 }; <a name="l00111"></a>00111 <a name="l00112"></a><a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">00112</a> <span class="keyword">enum</span> <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">CreateReasons</a> <a name="l00113"></a>00113 { <a name="l00114"></a><a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a63384968a9f649c5b5cccaf4c6d87cd14">00114</a> NoReason <a name="l00115"></a><a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6e88ece29aa2305e79c345f19e58bc227">00115</a> , JustFaultIn <a name="l00116"></a>00116 }; <a name="l00117"></a>00117 <a name="l00118"></a>00118 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00119"></a>00119 <span class="comment">// Public static data members</span> <a name="l00120"></a>00120 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00121"></a><a class="code" href="classXMLAttDef.html#8b6036eb22e84bef591913ba8f709f18">00121</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fgInvalidAttrId; <a name="l00122"></a>00122 <a name="l00123"></a>00123 <a name="l00124"></a>00124 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00125"></a>00125 <span class="comment">// Public, static methods</span> <a name="l00126"></a>00126 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00127"></a>00127 <a name="l00130"></a>00130 <a name="l00141"></a>00141 <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getAttTypeString(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> attrType <a name="l00142"></a>00142 , <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* <span class="keyword">const</span> manager = <a class="code" href="classXMLPlatformUtils.html#97eff0d9fff3567bea3acd3ca4d95252" title="The configurable memory manager.">XMLPlatformUtils::fgMemoryManager</a>); <a name="l00143"></a>00143 <a name="l00154"></a>00154 <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getDefAttTypeString(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> attrType <a name="l00155"></a>00155 , <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* <span class="keyword">const</span> manager = <a class="code" href="classXMLPlatformUtils.html#97eff0d9fff3567bea3acd3ca4d95252" title="The configurable memory manager.">XMLPlatformUtils::fgMemoryManager</a>); <a name="l00156"></a>00156 <a name="l00158"></a>00158 <a name="l00159"></a>00159 <a name="l00160"></a>00160 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00161"></a>00161 <span class="comment">// Destructor</span> <a name="l00162"></a>00162 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00163"></a>00163 <a name="l00166"></a>00166 <a name="l00170"></a>00170 <span class="keyword">virtual</span> ~<a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a>(); <a name="l00172"></a>00172 <a name="l00173"></a>00173 <a name="l00174"></a>00174 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00175"></a>00175 <span class="comment">// The virtual attribute def interface</span> <a name="l00176"></a>00176 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00177"></a>00177 <a name="l00180"></a>00180 <a name="l00189"></a>00189 <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getFullName() <span class="keyword">const</span> = 0; <a name="l00190"></a>00190 <a name="l00195"></a>00195 <span class="keyword">virtual</span> <span class="keywordtype">void</span> reset() = 0; <a name="l00196"></a>00196 <a name="l00198"></a>00198 <a name="l00199"></a>00199 <a name="l00200"></a>00200 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00201"></a>00201 <span class="comment">// Getter methods</span> <a name="l00202"></a>00202 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00203"></a>00203 <a name="l00206"></a>00206 <a name="l00215"></a>00215 <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> getDefaultType() <span class="keyword">const</span>; <a name="l00216"></a>00216 <a name="l00226"></a>00226 <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getEnumeration() <span class="keyword">const</span>; <a name="l00227"></a>00227 <a name="l00236"></a>00236 <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> getId() <span class="keyword">const</span>; <a name="l00237"></a>00237 <a name="l00247"></a>00247 <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> getType() <span class="keyword">const</span>; <a name="l00248"></a>00248 <a name="l00258"></a>00258 <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getValue() <span class="keyword">const</span>; <a name="l00259"></a>00259 <a name="l00268"></a>00268 <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">CreateReasons</a> getCreateReason() <span class="keyword">const</span>; <a name="l00269"></a>00269 <a name="l00277"></a>00277 <span class="keywordtype">bool</span> isExternal() <span class="keyword">const</span>; <a name="l00278"></a>00278 <a name="l00286"></a>00286 <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* getMemoryManager() <span class="keyword">const</span>; <a name="l00287"></a>00287 <a name="l00289"></a>00289 <a name="l00290"></a>00290 <a name="l00291"></a>00291 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00292"></a>00292 <span class="comment">// Setter methods</span> <a name="l00293"></a>00293 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00294"></a>00294 <a name="l00297"></a>00297 <a name="l00306"></a>00306 <span class="keywordtype">void</span> setDefaultType(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">XMLAttDef::DefAttTypes</a> newValue); <a name="l00307"></a>00307 <a name="l00316"></a>00316 <span class="keywordtype">void</span> setId(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> newId); <a name="l00317"></a>00317 <a name="l00325"></a>00325 <span class="keywordtype">void</span> setType(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">XMLAttDef::AttTypes</a> newValue); <a name="l00326"></a>00326 <a name="l00337"></a>00337 <span class="keywordtype">void</span> setValue(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span> newValue); <a name="l00338"></a>00338 <a name="l00349"></a>00349 <span class="keywordtype">void</span> setEnumeration(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span> newValue); <a name="l00350"></a>00350 <a name="l00358"></a>00358 <span class="keywordtype">void</span> setCreateReason(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">CreateReasons</a> newReason); <a name="l00359"></a>00359 <a name="l00365"></a>00365 <span class="keywordtype">void</span> setExternalAttDeclaration(<span class="keyword">const</span> <span class="keywordtype">bool</span> aValue); <a name="l00366"></a>00366 <a name="l00368"></a>00368 <a name="l00369"></a>00369 <span class="comment">/***</span> <a name="l00370"></a>00370 <span class="comment"> * Support for Serialization/De-serialization</span> <a name="l00371"></a>00371 <span class="comment"> ***/</span> <a name="l00372"></a>00372 DECL_XSERIALIZABLE(<a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a>) <a name="l00373"></a>00373 <a name="l00374"></a>00374 protected : <a name="l00375"></a>00375 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00376"></a>00376 <span class="comment">// Hidden constructors</span> <a name="l00377"></a>00377 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00378"></a>00378 <a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a> <a name="l00379"></a>00379 ( <a name="l00380"></a>00380 const <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> type = CData <a name="l00381"></a>00381 , const <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> defType= Implied <a name="l00382"></a>00382 , <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* const manager = <a class="code" href="classXMLPlatformUtils.html" title="Utilities that must be implemented in a platform-specific way.">XMLPlatformUtils</a>::fgMemoryManager <a name="l00383"></a>00383 ); <a name="l00384"></a>00384 <a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a> <a name="l00385"></a>00385 ( <a name="l00386"></a>00386 const <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* const attValue <a name="l00387"></a>00387 , const <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> type <a name="l00388"></a>00388 , const <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> defType <a name="l00389"></a>00389 , const <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* const enumValues = 0 <a name="l00390"></a>00390 , <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* const manager = <a class="code" href="classXMLPlatformUtils.html" title="Utilities that must be implemented in a platform-specific way.">XMLPlatformUtils</a>::fgMemoryManager <a name="l00391"></a>00391 ); <a name="l00392"></a>00392 <a name="l00393"></a>00393 <a name="l00394"></a>00394 private : <a name="l00395"></a>00395 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00396"></a>00396 <span class="comment">// Unimplemented constructors and operators</span> <a name="l00397"></a>00397 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00398"></a>00398 <a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a>(const <a class="code" href="classXMLAttDef.html" title="Represents the core information of an atribute definition.">XMLAttDef</a>&); <a name="l00399"></a>00399 XMLAttDef& operator=(const XMLAttDef&); <a name="l00400"></a>00400 <a name="l00401"></a>00401 <a name="l00402"></a>00402 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00403"></a>00403 <span class="comment">// Private helper methods</span> <a name="l00404"></a>00404 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00405"></a>00405 <span class="keywordtype">void</span> cleanUp(); <a name="l00406"></a>00406 <a name="l00407"></a>00407 <a name="l00408"></a>00408 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00409"></a>00409 <span class="comment">// Private data members</span> <a name="l00410"></a>00410 <span class="comment">//</span> <a name="l00411"></a>00411 <span class="comment">// fDefaultType</span> <a name="l00412"></a>00412 <span class="comment">// Indicates what, if any, default stuff this attribute has.</span> <a name="l00413"></a>00413 <span class="comment">//</span> <a name="l00414"></a>00414 <span class="comment">// fEnumeration</span> <a name="l00415"></a>00415 <span class="comment">// If its an enumeration, this is the list of values as space</span> <a name="l00416"></a>00416 <span class="comment">// separated values.</span> <a name="l00417"></a>00417 <span class="comment">//</span> <a name="l00418"></a>00418 <span class="comment">// fId</span> <a name="l00419"></a>00419 <span class="comment">// This is the unique id of this attribute, given to it when its put</span> <a name="l00420"></a>00420 <span class="comment">// into the validator's attribute decl pool. It defaults to the</span> <a name="l00421"></a>00421 <span class="comment">// special value XMLAttrDef::fgInvalidAttrId.</span> <a name="l00422"></a>00422 <span class="comment">//</span> <a name="l00423"></a>00423 <span class="comment">// fType</span> <a name="l00424"></a>00424 <span class="comment">// The type of attribute, which is one of the AttTypes values.</span> <a name="l00425"></a>00425 <span class="comment">//</span> <a name="l00426"></a>00426 <span class="comment">// fValue</span> <a name="l00427"></a>00427 <span class="comment">// This is the value of the attribute, which is the default value</span> <a name="l00428"></a>00428 <span class="comment">// given in the attribute declaration.</span> <a name="l00429"></a>00429 <span class="comment">//</span> <a name="l00430"></a>00430 <span class="comment">// fCreateReason</span> <a name="l00431"></a>00431 <span class="comment">// This flag tells us how this attribute got created. Sometimes even</span> <a name="l00432"></a>00432 <span class="comment">// the attribute was not declared for the element, we want to fault</span> <a name="l00433"></a>00433 <span class="comment">// fault it into the pool to avoid lots of redundant errors.</span> <a name="l00434"></a>00434 <span class="comment">//</span> <a name="l00435"></a>00435 <span class="comment">// fExternalAttribute</span> <a name="l00436"></a>00436 <span class="comment">// This flag indicates whether or not the attribute was declared externally.</span> <a name="l00437"></a>00437 <span class="comment">// -----------------------------------------------------------------------</span> <a name="l00438"></a>00438 <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> fDefaultType; <a name="l00439"></a>00439 <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">AttTypes</a> fType; <a name="l00440"></a>00440 <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">CreateReasons</a> fCreateReason; <a name="l00441"></a>00441 <span class="keywordtype">bool</span> fExternalAttribute; <a name="l00442"></a>00442 <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> fId; <a name="l00443"></a>00443 <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* fValue; <a name="l00444"></a>00444 <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* fEnumeration; <a name="l00445"></a>00445 <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* fMemoryManager; <a name="l00446"></a>00446 }; <a name="l00447"></a>00447 <a name="l00448"></a>00448 <a name="l00449"></a>00449 <span class="comment">// ---------------------------------------------------------------------------</span> <a name="l00450"></a>00450 <span class="comment">// Getter methods</span> <a name="l00451"></a>00451 <span class="comment">// ---------------------------------------------------------------------------</span> <a name="l00452"></a><a class="code" href="classXMLAttDef.html#0e7ac147ebdd7952acb412972e717022">00452</a> inline XMLAttDef::<a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">DefAttTypes</a> XMLAttDef::getDefaultType()<span class="keyword"> const</span> <a name="l00453"></a>00453 <span class="keyword"></span>{ <a name="l00454"></a>00454 <span class="keywordflow">return</span> fDefaultType; <a name="l00455"></a>00455 } <a name="l00456"></a>00456 <a name="l00457"></a><a class="code" href="classXMLAttDef.html#cdb1d7a844ec3b9f03494cc619d00ed2">00457</a> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <a class="code" href="classXMLAttDef.html#cdb1d7a844ec3b9f03494cc619d00ed2" title="Get the enumeration value (if any) of this attribute type.">XMLAttDef::getEnumeration</a>()<span class="keyword"> const</span> <a name="l00458"></a>00458 <span class="keyword"></span>{ <a name="l00459"></a>00459 <span class="keywordflow">return</span> fEnumeration; <a name="l00460"></a>00460 } <a name="l00461"></a>00461 <a name="l00462"></a><a class="code" href="classXMLAttDef.html#5a35a0223db8303314cca2e0b87ea2f0">00462</a> <span class="keyword">inline</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> <a class="code" href="classXMLAttDef.html#5a35a0223db8303314cca2e0b87ea2f0" title="Get the pool id of this attribute type.">XMLAttDef::getId</a>()<span class="keyword"> const</span> <a name="l00463"></a>00463 <span class="keyword"></span>{ <a name="l00464"></a>00464 <span class="keywordflow">return</span> fId; <a name="l00465"></a>00465 } <a name="l00466"></a>00466 <a name="l00467"></a><a class="code" href="classXMLAttDef.html#44e92262a33da395468cfcfb5b6b6abd">00467</a> <span class="keyword">inline</span> <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">XMLAttDef::AttTypes</a> <a class="code" href="classXMLAttDef.html#44e92262a33da395468cfcfb5b6b6abd" title="Get the type of this attribute.">XMLAttDef::getType</a>()<span class="keyword"> const</span> <a name="l00468"></a>00468 <span class="keyword"></span>{ <a name="l00469"></a>00469 <span class="keywordflow">return</span> fType; <a name="l00470"></a>00470 } <a name="l00471"></a>00471 <a name="l00472"></a><a class="code" href="classXMLAttDef.html#c6a04434627143abf6b4cf83c975001c">00472</a> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <a class="code" href="classXMLAttDef.html#c6a04434627143abf6b4cf83c975001c" title="Get the default/fixed value of this attribute (if any.">XMLAttDef::getValue</a>()<span class="keyword"> const</span> <a name="l00473"></a>00473 <span class="keyword"></span>{ <a name="l00474"></a>00474 <span class="keywordflow">return</span> fValue; <a name="l00475"></a>00475 } <a name="l00476"></a>00476 <a name="l00477"></a><a class="code" href="classXMLAttDef.html#0b760da965b5ceed724a493b831fb081">00477</a> <span class="keyword">inline</span> <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">XMLAttDef::CreateReasons</a> <a class="code" href="classXMLAttDef.html#0b760da965b5ceed724a493b831fb081" title="Get the create reason for this attribute.">XMLAttDef::getCreateReason</a>()<span class="keyword"> const</span> <a name="l00478"></a>00478 <span class="keyword"></span>{ <a name="l00479"></a>00479 <span class="keywordflow">return</span> fCreateReason; <a name="l00480"></a>00480 } <a name="l00481"></a>00481 <a name="l00482"></a><a class="code" href="classXMLAttDef.html#46707a69c2c754a0d205d12789d95306">00482</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classXMLAttDef.html#46707a69c2c754a0d205d12789d95306" title="Indicate whether this attribute has been declared externally.">XMLAttDef::isExternal</a>()<span class="keyword"> const</span> <a name="l00483"></a>00483 <span class="keyword"></span>{ <a name="l00484"></a>00484 <span class="keywordflow">return</span> fExternalAttribute; <a name="l00485"></a>00485 } <a name="l00486"></a>00486 <a name="l00487"></a><a class="code" href="classXMLAttDef.html#d8c83665c3cbc0d9792c1dcc0703e56d">00487</a> <span class="keyword">inline</span> <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* <a class="code" href="classXMLAttDef.html#d8c83665c3cbc0d9792c1dcc0703e56d" title="Get the plugged-in memory manager.">XMLAttDef::getMemoryManager</a>()<span class="keyword"> const</span> <a name="l00488"></a>00488 <span class="keyword"></span>{ <a name="l00489"></a>00489 <span class="keywordflow">return</span> fMemoryManager; <a name="l00490"></a>00490 } <a name="l00491"></a>00491 <a name="l00492"></a>00492 <span class="comment">// ---------------------------------------------------------------------------</span> <a name="l00493"></a>00493 <span class="comment">// XMLAttDef: Setter methods</span> <a name="l00494"></a>00494 <span class="comment">// ---------------------------------------------------------------------------</span> <a name="l00495"></a><a class="code" href="classXMLAttDef.html#0d7f1a5da77dc100778b1dfe2eb092c6">00495</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#0d7f1a5da77dc100778b1dfe2eb092c6" title="Set the default attribute type.">XMLAttDef::setDefaultType</a>(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#dbac7febf3455722cc9736f1dc03c02f">XMLAttDef::DefAttTypes</a> newValue) <a name="l00496"></a>00496 { <a name="l00497"></a>00497 fDefaultType = newValue; <a name="l00498"></a>00498 } <a name="l00499"></a>00499 <a name="l00500"></a><a class="code" href="classXMLAttDef.html#79c8d9eb7c4ad1cbfd8b2d5e3daa129f">00500</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#79c8d9eb7c4ad1cbfd8b2d5e3daa129f" title="Set the enumerated value of this attribute type.">XMLAttDef::setEnumeration</a>(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span> newValue) <a name="l00501"></a>00501 { <a name="l00502"></a>00502 <span class="keywordflow">if</span> (fEnumeration) <a name="l00503"></a>00503 fMemoryManager-><a class="code" href="classMemoryManager.html#f7dce9eab3a2a41e5b887ba735180e67" title="This method deallocates memory.">deallocate</a>(fEnumeration); <a name="l00504"></a>00504 <a name="l00505"></a>00505 fEnumeration = <a class="code" href="classXMLString.html#bd917532682cddc53a96706f4c388fc9" title="Replicates a string NOTE: The returned buffer is allocated with the MemoryManager...">XMLString::replicate</a>(newValue, fMemoryManager); <a name="l00506"></a>00506 } <a name="l00507"></a>00507 <a name="l00508"></a><a class="code" href="classXMLAttDef.html#6dc53a87019d56306b36842f228b944d">00508</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#6dc53a87019d56306b36842f228b944d" title="Set the pool id for this attribute type.">XMLAttDef::setId</a>(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> newId) <a name="l00509"></a>00509 { <a name="l00510"></a>00510 fId = newId; <a name="l00511"></a>00511 } <a name="l00512"></a>00512 <a name="l00513"></a><a class="code" href="classXMLAttDef.html#244028a04f84de0b9b43d89b317f2d7e">00513</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#244028a04f84de0b9b43d89b317f2d7e" title="Set the type of this attribute type.">XMLAttDef::setType</a>(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#d029f037065bfaeb991ab7855de79255">XMLAttDef::AttTypes</a> newValue) <a name="l00514"></a>00514 { <a name="l00515"></a>00515 fType = newValue; <a name="l00516"></a>00516 } <a name="l00517"></a>00517 <a name="l00518"></a><a class="code" href="classXMLAttDef.html#b6c18545e394a61b07d3560191dab972">00518</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#b6c18545e394a61b07d3560191dab972" title="Set the default/fixed value of this attribute type.">XMLAttDef::setValue</a>(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span> newValue) <a name="l00519"></a>00519 { <a name="l00520"></a>00520 <span class="keywordflow">if</span> (fValue) <a name="l00521"></a>00521 fMemoryManager-><a class="code" href="classMemoryManager.html#f7dce9eab3a2a41e5b887ba735180e67" title="This method deallocates memory.">deallocate</a>(fValue); <a name="l00522"></a>00522 <a name="l00523"></a>00523 fValue = <a class="code" href="classXMLString.html#bd917532682cddc53a96706f4c388fc9" title="Replicates a string NOTE: The returned buffer is allocated with the MemoryManager...">XMLString::replicate</a>(newValue, fMemoryManager); <a name="l00524"></a>00524 } <a name="l00525"></a>00525 <a name="l00526"></a>00526 <span class="keyword">inline</span> <span class="keywordtype">void</span> <a name="l00527"></a><a class="code" href="classXMLAttDef.html#70fa7490dabaa8f48ce9cbc4390d86fc">00527</a> <a class="code" href="classXMLAttDef.html#70fa7490dabaa8f48ce9cbc4390d86fc" title="Update the create reason for this attribute type.">XMLAttDef::setCreateReason</a>(<span class="keyword">const</span> <a class="code" href="classXMLAttDef.html#7555277eb326f0985448cb32b0f102a6">XMLAttDef::CreateReasons</a> newReason) <a name="l00528"></a>00528 { <a name="l00529"></a>00529 fCreateReason = newReason; <a name="l00530"></a>00530 } <a name="l00531"></a>00531 <a name="l00532"></a><a class="code" href="classXMLAttDef.html#4dcda30a9beeb6f3ff56e3658374e201">00532</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLAttDef.html#4dcda30a9beeb6f3ff56e3658374e201" title="Set the attribute decl to indicate external declaration.">XMLAttDef::setExternalAttDeclaration</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> aValue) <a name="l00533"></a>00533 { <a name="l00534"></a>00534 fExternalAttribute = aValue; <a name="l00535"></a>00535 } <a name="l00536"></a>00536 <a name="l00537"></a>00537 <a class="code" href="XercesDefs_8hpp.html#f03d5cb905763ef7a7bd22ab82718285">XERCES_CPP_NAMESPACE_END</a> <a name="l00538"></a>00538 <a name="l00539"></a>00539 <span class="preprocessor">#endif</span> </pre></div></div> <hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 29 15:30:48 2010 for Xerces-C++ by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> </body> </html>