Sophie

Sophie

distrib > Mandriva > 2010.1 > i586 > by-pkgid > 59e136c5713357bec32fa00e9f43af8f > files > 286

xerces-c-doc-3.1.0-2mdv2010.1.i586.rpm

<!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++: XMLElementDecl.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&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;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>XMLElementDecl.hpp</h1><a href="XMLElementDecl_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: XMLElementDecl.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_XMLELEMENTDECL_HPP)</span>
<a name="l00023"></a><a class="code" href="XMLElementDecl_8hpp.html#b2a5a0a0e047960591bf9ef7ed383db4">00023</a> <span class="preprocessor"></span><span class="preprocessor">#define XERCESC_INCLUDE_GUARD_XMLELEMENTDECL_HPP</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;<a class="code" href="XMLAttr_8hpp.html">xercesc/framework/XMLAttr.hpp</a>&gt;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;<a class="code" href="XMLAttDefList_8hpp.html">xercesc/framework/XMLAttDefList.hpp</a>&gt;</span>
<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;<a class="code" href="XMLString_8hpp.html">xercesc/util/XMLString.hpp</a>&gt;</span>
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;<a class="code" href="PlatformUtils_8hpp.html">xercesc/util/PlatformUtils.hpp</a>&gt;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;xercesc/internal/XSerializable.hpp&gt;</span>
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 <a class="code" href="XercesDefs_8hpp.html#43d74fa53d868d978f3e97cbb78b194d">XERCES_CPP_NAMESPACE_BEGIN</a>
<a name="l00032"></a>00032 
<a name="l00033"></a>00033 <span class="keyword">class </span>ContentSpecNode;
<a name="l00034"></a>00034 <span class="keyword">class </span><a class="code" href="classXMLContentModel.html" title="This class defines the abstract interface for all content models.">XMLContentModel</a>;
<a name="l00035"></a>00035 
<a name="l00051"></a><a class="code" href="classXMLElementDecl.html">00051</a> <span class="keyword">class </span><a class="code" href="XercesDefs_8hpp.html#13df5a01e63e51f62a1467b588b59054">XMLPARSER_EXPORT</a> <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</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="l00052"></a>00052 {
<a name="l00053"></a>00053  <span class="keyword">public</span>:
<a name="l00054"></a>00054     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00055"></a>00055     <span class="comment">//  Class specific types</span>
<a name="l00056"></a>00056     <span class="comment">//</span>
<a name="l00057"></a>00057     <span class="comment">//  CreateReasons</span>
<a name="l00058"></a>00058     <span class="comment">//      This type is used to store how an element declaration got into</span>
<a name="l00059"></a>00059     <span class="comment">//      the grammar's element pool. They are faulted in for various</span>
<a name="l00060"></a>00060     <span class="comment">//      reasons.</span>
<a name="l00061"></a>00061     <span class="comment">//</span>
<a name="l00062"></a>00062     <span class="comment">//  LookupOpts</span>
<a name="l00063"></a>00063     <span class="comment">//      These are the values used by the attribute lookup methods.</span>
<a name="l00064"></a>00064     <span class="comment">//</span>
<a name="l00065"></a>00065     <span class="comment">//  CharDataOpts</span>
<a name="l00066"></a>00066     <span class="comment">//      This is used to indicate how this type of element reacts to</span>
<a name="l00067"></a>00067     <span class="comment">//      character data as content.</span>
<a name="l00068"></a>00068     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00069"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">00069</a>     <span class="keyword">enum</span> <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">CreateReasons</a>
<a name="l00070"></a>00070     {
<a name="l00071"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa6ea7ebbb617f944752e95c68cbd8bbd0">00071</a>         NoReason
<a name="l00072"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa5b140b134d9b9f934b740c7e995aa836">00072</a>         , Declared
<a name="l00073"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aaf89d8c19c104e67286afeff0d401ce89">00073</a>         , AttList
<a name="l00074"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aafeee0959f6ea3c8db3e3bb651364af5d">00074</a>         , InContentModel
<a name="l00075"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa3698d0f84f817958f37821f0eb205382">00075</a>         , AsRootElem
<a name="l00076"></a><a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aae8a7a59607f85cd925e175f5c0e26d85">00076</a>         , JustFaultIn
<a name="l00077"></a>00077     };
<a name="l00078"></a>00078 
<a name="l00079"></a><a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b0">00079</a>     <span class="keyword">enum</span> <a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b0">CharDataOpts</a>
<a name="l00080"></a>00080     {
<a name="l00081"></a><a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b00a2b984dff23855ba968a2d92fd800a7">00081</a>         NoCharData
<a name="l00082"></a><a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b0a3ed5983fbb5d209246f4aae94a558a8">00082</a>         , SpacesOk
<a name="l00083"></a><a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b02f1f5a4d2563647af3ebf576d4988021">00083</a>         , AllCharData
<a name="l00084"></a>00084     };
<a name="l00085"></a>00085 
<a name="l00086"></a>00086 
<a name="l00087"></a>00087     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00088"></a>00088     <span class="comment">//  Public static data</span>
<a name="l00089"></a>00089     <span class="comment">//</span>
<a name="l00090"></a>00090     <span class="comment">//  fgInvalidElemId</span>
<a name="l00091"></a>00091     <span class="comment">//      A value to represent an invalid element node id.</span>
<a name="l00092"></a>00092     <span class="comment">//</span>
<a name="l00093"></a>00093     <span class="comment">//  fgPCDataElemId</span>
<a name="l00094"></a>00094     <span class="comment">//      This is the value to use to represent a PCDATA node when an</span>
<a name="l00095"></a>00095     <span class="comment">//      element id is required.</span>
<a name="l00096"></a>00096     <span class="comment">//</span>
<a name="l00097"></a>00097     <span class="comment">//  fgPCDataElemName</span>
<a name="l00098"></a>00098     <span class="comment">//      This is the value to use to represent a PCDATA node when an</span>
<a name="l00099"></a>00099     <span class="comment">//      element name is required.</span>
<a name="l00100"></a>00100     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00101"></a><a class="code" href="classXMLElementDecl.html#afc21717d7759f3fe357e92707d1870d">00101</a>     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>   fgInvalidElemId;
<a name="l00102"></a><a class="code" href="classXMLElementDecl.html#79dd4823913a168fb46ffb6b0bfc78ab">00102</a>     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>   fgPCDataElemId;
<a name="l00103"></a><a class="code" href="classXMLElementDecl.html#a7b8ed177aca128f956132dea880cf6b">00103</a>     <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>          fgPCDataElemName[];
<a name="l00104"></a>00104 
<a name="l00105"></a>00105 
<a name="l00106"></a>00106 
<a name="l00107"></a>00107     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00108"></a>00108     <span class="comment">//  Destructor</span>
<a name="l00109"></a>00109     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00112"></a>00112 <span class="comment"></span>    <span class="keyword">virtual</span> ~<a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>();
<a name="l00114"></a>00114 
<a name="l00115"></a>00115 
<a name="l00116"></a>00116     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00117"></a>00117     <span class="comment">//  The virtual element decl interface</span>
<a name="l00118"></a>00118     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00119"></a>00119 
<a name="l00122"></a>00122 
<a name="l00134"></a>00134     <span class="keyword">virtual</span> <a class="code" href="classXMLAttDefList.html" title="This class defines an abstract interface that all validators must support.">XMLAttDefList</a>&amp; getAttDefList() <span class="keyword">const</span> = 0;
<a name="l00135"></a>00135 
<a name="l00143"></a>00143     <span class="keyword">virtual</span> <a class="code" href="classXMLElementDecl.html#44870fe57f7421bc6506b835046ed1b0">CharDataOpts</a> getCharDataOpts() <span class="keyword">const</span> = 0;
<a name="l00144"></a>00144 
<a name="l00151"></a>00151     <span class="keyword">virtual</span> <span class="keywordtype">bool</span> hasAttDefs() <span class="keyword">const</span> = 0;
<a name="l00152"></a>00152 
<a name="l00160"></a>00160     <span class="keyword">virtual</span> <span class="keyword">const</span> ContentSpecNode* getContentSpec() <span class="keyword">const</span> = 0;
<a name="l00161"></a>00161 
<a name="l00167"></a>00167     <span class="keyword">virtual</span> ContentSpecNode* getContentSpec() = 0;
<a name="l00168"></a>00168 
<a name="l00178"></a>00178     <span class="keyword">virtual</span> <span class="keywordtype">void</span> setContentSpec(ContentSpecNode* toAdopt) = 0;
<a name="l00179"></a>00179 
<a name="l00191"></a>00191     <span class="keyword">virtual</span> <a class="code" href="classXMLContentModel.html" title="This class defines the abstract interface for all content models.">XMLContentModel</a>* getContentModel() = 0;
<a name="l00192"></a>00192 
<a name="l00204"></a>00204     <span class="keyword">virtual</span> <span class="keywordtype">void</span> setContentModel(<a class="code" href="classXMLContentModel.html" title="This class defines the abstract interface for all content models.">XMLContentModel</a>* <span class="keyword">const</span> newModelToAdopt) = 0;
<a name="l00205"></a>00205 
<a name="l00218"></a>00218     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getFormattedContentModel ()   <span class="keyword">const</span> = 0;
<a name="l00219"></a>00219 
<a name="l00221"></a>00221 
<a name="l00222"></a>00222 
<a name="l00223"></a>00223     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00224"></a>00224     <span class="comment">//  Getter methods</span>
<a name="l00225"></a>00225     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00226"></a>00226 
<a name="l00229"></a>00229 
<a name="l00237"></a>00237     <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getBaseName() <span class="keyword">const</span>;
<a name="l00238"></a>00238     <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getBaseName();
<a name="l00239"></a>00239 
<a name="l00246"></a>00246     <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getURI() <span class="keyword">const</span>;
<a name="l00247"></a>00247 
<a name="l00255"></a>00255     <span class="keyword">const</span> <a class="code" href="classQName.html">QName</a>* getElementName() <span class="keyword">const</span>;
<a name="l00256"></a>00256     <a class="code" href="classQName.html">QName</a>* getElementName();
<a name="l00257"></a>00257 
<a name="l00266"></a>00266     <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* getFullName() <span class="keyword">const</span>;
<a name="l00267"></a>00267 
<a name="l00279"></a>00279     <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">CreateReasons</a> getCreateReason() <span class="keyword">const</span>;
<a name="l00280"></a>00280 
<a name="l00290"></a>00290     <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> getId() <span class="keyword">const</span>;
<a name="l00291"></a>00291 
<a name="l00301"></a>00301     <span class="keywordtype">bool</span> isDeclared() <span class="keyword">const</span>;
<a name="l00302"></a>00302 
<a name="l00311"></a>00311     <span class="keywordtype">bool</span> isExternal() <span class="keyword">const</span>;
<a name="l00312"></a>00312 
<a name="l00320"></a>00320     <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* getMemoryManager() <span class="keyword">const</span>;
<a name="l00321"></a>00321 
<a name="l00323"></a>00323 
<a name="l00324"></a>00324 
<a name="l00325"></a>00325     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00326"></a>00326     <span class="comment">//  Setter methods</span>
<a name="l00327"></a>00327     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00328"></a>00328 
<a name="l00331"></a>00331 
<a name="l00342"></a>00342       <span class="keywordtype">void</span> setElementName(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span>       prefix
<a name="l00343"></a>00343                         , <span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span>       localPart
<a name="l00344"></a>00344                         , <span class="keyword">const</span> <span class="keywordtype">int</span>                uriId );
<a name="l00345"></a>00345 
<a name="l00355"></a>00355       <span class="keywordtype">void</span> setElementName(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <span class="keyword">const</span>    rawName
<a name="l00356"></a>00356                         , <span class="keyword">const</span> <span class="keywordtype">int</span>             uriId );
<a name="l00357"></a>00357 
<a name="l00366"></a>00366       <span class="keywordtype">void</span> setElementName(<span class="keyword">const</span> <a class="code" href="classQName.html">QName</a>* <span class="keyword">const</span>    elementName);
<a name="l00367"></a>00367 
<a name="l00378"></a>00378     <span class="keywordtype">void</span> setCreateReason(<span class="keyword">const</span> <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">CreateReasons</a> newReason);
<a name="l00379"></a>00379 
<a name="l00386"></a>00386     <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="l00387"></a>00387 
<a name="l00388"></a>00388 
<a name="l00392"></a>00392     <span class="keywordtype">void</span> setExternalElemDeclaration(<span class="keyword">const</span> <span class="keywordtype">bool</span> aValue);
<a name="l00393"></a>00393 
<a name="l00395"></a>00395 
<a name="l00396"></a>00396 
<a name="l00397"></a>00397     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00398"></a>00398     <span class="comment">//  Miscellaneous methods</span>
<a name="l00399"></a>00399     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00400"></a>00400 
<a name="l00403"></a>00403 
<a name="l00405"></a>00405 
<a name="l00406"></a>00406     <span class="comment">/***</span>
<a name="l00407"></a>00407 <span class="comment">     * Support for Serialization/De-serialization</span>
<a name="l00408"></a>00408 <span class="comment">     ***/</span>
<a name="l00409"></a>00409     DECL_XSERIALIZABLE(<a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>)
<a name="l00410"></a>00410 
<a name="l00411"></a><a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de">00411</a>     enum <a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de">objectType</a>
<a name="l00412"></a>00412     {
<a name="l00413"></a><a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de1cedeaedd7216de31223a41e2bd1bc2f">00413</a>         Schema
<a name="l00414"></a><a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de5ef04d628563f5b7f64880851c37ceba">00414</a>       , DTD
<a name="l00415"></a><a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de697bb7c4ff963ec996716075a91bd1bd">00415</a>       , UnKnown
<a name="l00416"></a>00416     };
<a name="l00417"></a>00417 
<a name="l00418"></a>00418     <span class="keyword">virtual</span> <a class="code" href="classXMLElementDecl.html#29b943d4557d3922d520ba034c8276de">XMLElementDecl::objectType</a>  getObjectType() <span class="keyword">const</span> = 0;
<a name="l00419"></a>00419 
<a name="l00420"></a>00420     <span class="keyword">static</span> <span class="keywordtype">void</span>            storeElementDecl(XSerializeEngine&amp;        serEng
<a name="l00421"></a>00421                                           , <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>*    <span class="keyword">const</span> element);
<a name="l00422"></a>00422 
<a name="l00423"></a>00423     <span class="keyword">static</span> <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>* loadElementDecl(XSerializeEngine&amp; serEng);
<a name="l00424"></a>00424 
<a name="l00425"></a>00425 <span class="keyword">protected</span> :
<a name="l00426"></a>00426     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00427"></a>00427     <span class="comment">//  Hidden constructors</span>
<a name="l00428"></a>00428     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00429"></a>00429     <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>(<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="l00430"></a>00430 
<a name="l00431"></a>00431 <span class="keyword">private</span> :
<a name="l00432"></a>00432     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00433"></a>00433     <span class="comment">//  Unimplemented constructors and operators</span>
<a name="l00434"></a>00434     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00435"></a>00435     <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>(<span class="keyword">const</span> <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>&amp;);
<a name="l00436"></a>00436     <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classXMLElementDecl.html" title="This class defines the core information of an element declaration.">XMLElementDecl</a>&amp;);
<a name="l00437"></a>00437 
<a name="l00438"></a>00438 
<a name="l00439"></a>00439     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00440"></a>00440     <span class="comment">//  Data members</span>
<a name="l00441"></a>00441     <span class="comment">//</span>
<a name="l00442"></a>00442     <span class="comment">//  fElementName</span>
<a name="l00443"></a>00443     <span class="comment">//      This is the name of the element decl.</span>
<a name="l00444"></a>00444     <span class="comment">//</span>
<a name="l00445"></a>00445     <span class="comment">//  fCreateReason</span>
<a name="l00446"></a>00446     <span class="comment">//      We sometimes have to put an element decl object into the elem</span>
<a name="l00447"></a>00447     <span class="comment">//      decl pool before the element's declaration is seen, such as when</span>
<a name="l00448"></a>00448     <span class="comment">//      its used in another element's content model or an att list is</span>
<a name="l00449"></a>00449     <span class="comment">//      seen for it. This flag tells us whether its been declared, and</span>
<a name="l00450"></a>00450     <span class="comment">//      if not why it had to be created.</span>
<a name="l00451"></a>00451     <span class="comment">//</span>
<a name="l00452"></a>00452     <span class="comment">//  fId</span>
<a name="l00453"></a>00453     <span class="comment">//      The unique id of this element. This is created by the derived</span>
<a name="l00454"></a>00454     <span class="comment">//      class, or more accurately the grammar that owns the objects</span>
<a name="l00455"></a>00455     <span class="comment">//      of the derived types. But, since they all have to have them, we</span>
<a name="l00456"></a>00456     <span class="comment">//      let them all store the id here. It is defaulted to have the</span>
<a name="l00457"></a>00457     <span class="comment">//      value fgInvalidElem until explicitly set.</span>
<a name="l00458"></a>00458     <span class="comment">//</span>
<a name="l00459"></a>00459     <span class="comment">//  fExternalElement</span>
<a name="l00460"></a>00460     <span class="comment">//      This flag indicates whether or the element was declared externally.</span>
<a name="l00461"></a>00461     <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00462"></a>00462     <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>*      fMemoryManager;
<a name="l00463"></a>00463     <a class="code" href="classQName.html">QName</a>*              fElementName;
<a name="l00464"></a>00464     CreateReasons       fCreateReason;
<a name="l00465"></a>00465     <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a>           fId;
<a name="l00466"></a>00466     <span class="keywordtype">bool</span>                fExternalElement;
<a name="l00467"></a>00467 };
<a name="l00468"></a>00468 
<a name="l00469"></a>00469 
<a name="l00470"></a>00470 <span class="comment">// ---------------------------------------------------------------------------</span>
<a name="l00471"></a>00471 <span class="comment">//  XMLElementDecl: Getter methods</span>
<a name="l00472"></a>00472 <span class="comment">// ---------------------------------------------------------------------------</span>
<a name="l00473"></a><a class="code" href="classXMLElementDecl.html#4b8e71ee50aafabc32c08c4b7024d00c">00473</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="classXMLElementDecl.html#4b8e71ee50aafabc32c08c4b7024d00c" title="Get the base name of this element type.">XMLElementDecl::getBaseName</a>()<span class="keyword"> const</span>
<a name="l00474"></a>00474 <span class="keyword"></span>{
<a name="l00475"></a>00475     <span class="keywordflow">return</span> fElementName-&gt;<a class="code" href="classQName.html#a22c091478cc3ec4fa64c9d448fdeb0d">getLocalPart</a>();
<a name="l00476"></a>00476 }
<a name="l00477"></a>00477 
<a name="l00478"></a><a class="code" href="classXMLElementDecl.html#8963b2d813cc5386096164147ed7d6e9">00478</a> <span class="keyword">inline</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#8cb107980a360c490ad7661f5d27cc0e">XMLCh</a>* <a class="code" href="classXMLElementDecl.html#4b8e71ee50aafabc32c08c4b7024d00c" title="Get the base name of this element type.">XMLElementDecl::getBaseName</a>()
<a name="l00479"></a>00479 {
<a name="l00480"></a>00480     <span class="keywordflow">return</span> fElementName-&gt;<a class="code" href="classQName.html#a22c091478cc3ec4fa64c9d448fdeb0d">getLocalPart</a>();
<a name="l00481"></a>00481 }
<a name="l00482"></a>00482 
<a name="l00483"></a><a class="code" href="classXMLElementDecl.html#c2d6e48600f45dcaaedd6f278e7d285e">00483</a> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classXMLElementDecl.html#c2d6e48600f45dcaaedd6f278e7d285e" title="Get the URI id of this element type.">XMLElementDecl::getURI</a>()<span class="keyword"> const</span>
<a name="l00484"></a>00484 <span class="keyword"></span>{
<a name="l00485"></a>00485     <span class="keywordflow">return</span> fElementName-&gt;<a class="code" href="classQName.html#e8a5c241b363084db7ca67c1982df060">getURI</a>();
<a name="l00486"></a>00486 }
<a name="l00487"></a>00487 
<a name="l00488"></a><a class="code" href="classXMLElementDecl.html#a8581855ead5baddd945aab819c91ead">00488</a> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classQName.html">QName</a>* <a class="code" href="classXMLElementDecl.html#a8581855ead5baddd945aab819c91ead" title="Get the QName of this element type.">XMLElementDecl::getElementName</a>()<span class="keyword"> const</span>
<a name="l00489"></a>00489 <span class="keyword"></span>{
<a name="l00490"></a>00490     <span class="keywordflow">return</span> fElementName;
<a name="l00491"></a>00491 }
<a name="l00492"></a>00492 
<a name="l00493"></a><a class="code" href="classXMLElementDecl.html#3f73052c506a1a8066c17c59e7485964">00493</a> <span class="keyword">inline</span> <a class="code" href="classQName.html">QName</a>* <a class="code" href="classXMLElementDecl.html#a8581855ead5baddd945aab819c91ead" title="Get the QName of this element type.">XMLElementDecl::getElementName</a>()
<a name="l00494"></a>00494 {
<a name="l00495"></a>00495     <span class="keywordflow">return</span> fElementName;
<a name="l00496"></a>00496 }
<a name="l00497"></a>00497 
<a name="l00498"></a><a class="code" href="classXMLElementDecl.html#ab7a3db5fbbe3c7e21956d78fa18ab6d">00498</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="classXMLElementDecl.html#ab7a3db5fbbe3c7e21956d78fa18ab6d" title="Get the full name of this element type.">XMLElementDecl::getFullName</a>()<span class="keyword"> const</span>
<a name="l00499"></a>00499 <span class="keyword"></span>{
<a name="l00500"></a>00500     <span class="keywordflow">return</span> fElementName-&gt;<a class="code" href="classQName.html#153e7cc021b9a63f3b1add304b6b0698">getRawName</a>();
<a name="l00501"></a>00501 }
<a name="l00502"></a>00502 
<a name="l00503"></a><a class="code" href="classXMLElementDecl.html#dc24848e8722ceed15af8366900206fd">00503</a> <span class="keyword">inline</span> <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">XMLElementDecl::CreateReasons</a> <a class="code" href="classXMLElementDecl.html#dc24848e8722ceed15af8366900206fd" title="Get the create reason for this element type.">XMLElementDecl::getCreateReason</a>()<span class="keyword"> const</span>
<a name="l00504"></a>00504 <span class="keyword"></span>{
<a name="l00505"></a>00505     <span class="keywordflow">return</span> fCreateReason;
<a name="l00506"></a>00506 }
<a name="l00507"></a>00507 
<a name="l00508"></a><a class="code" href="classXMLElementDecl.html#886b50fcd786d2b49ca6e56d9a0ecb78">00508</a> <span class="keyword">inline</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> <a class="code" href="classXMLElementDecl.html#886b50fcd786d2b49ca6e56d9a0ecb78" title="Get the element decl pool id for this element type.">XMLElementDecl::getId</a>()<span class="keyword"> const</span>
<a name="l00509"></a>00509 <span class="keyword"></span>{
<a name="l00510"></a>00510     <span class="keywordflow">return</span> fId;
<a name="l00511"></a>00511 }
<a name="l00512"></a>00512 
<a name="l00513"></a><a class="code" href="classXMLElementDecl.html#52c952aa2f0ddbebcbcc8a28dcbade89">00513</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classXMLElementDecl.html#52c952aa2f0ddbebcbcc8a28dcbade89" title="Indicate whether this element type has been declared yet.">XMLElementDecl::isDeclared</a>()<span class="keyword"> const</span>
<a name="l00514"></a>00514 <span class="keyword"></span>{
<a name="l00515"></a>00515     <span class="keywordflow">return</span> (fCreateReason == <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa5b140b134d9b9f934b740c7e995aa836">Declared</a>);
<a name="l00516"></a>00516 }
<a name="l00517"></a>00517 
<a name="l00518"></a>00518 
<a name="l00519"></a><a class="code" href="classXMLElementDecl.html#59f01f2cfbeb9280a5ffcc9baab39177">00519</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classXMLElementDecl.html#59f01f2cfbeb9280a5ffcc9baab39177" title="Indicate whether this element type has been declared externally.">XMLElementDecl::isExternal</a>()<span class="keyword"> const</span>
<a name="l00520"></a>00520 <span class="keyword"></span>{
<a name="l00521"></a>00521     <span class="keywordflow">return</span> fExternalElement;
<a name="l00522"></a>00522 }
<a name="l00523"></a>00523 
<a name="l00524"></a><a class="code" href="classXMLElementDecl.html#7fcea325660b738e0407cde416e5b4f4">00524</a> <span class="keyword">inline</span> <a class="code" href="classMemoryManager.html" title="Configurable memory manager.">MemoryManager</a>* <a class="code" href="classXMLElementDecl.html#7fcea325660b738e0407cde416e5b4f4" title="Get the memory manager.">XMLElementDecl::getMemoryManager</a>()<span class="keyword"> const</span>
<a name="l00525"></a>00525 <span class="keyword"></span>{
<a name="l00526"></a>00526     <span class="keywordflow">return</span> fMemoryManager;
<a name="l00527"></a>00527 }
<a name="l00528"></a>00528 
<a name="l00529"></a>00529 
<a name="l00530"></a>00530 <span class="comment">// ---------------------------------------------------------------------------</span>
<a name="l00531"></a>00531 <span class="comment">//  XMLElementDecl: Setter methods</span>
<a name="l00532"></a>00532 <span class="comment">// ---------------------------------------------------------------------------</span>
<a name="l00533"></a>00533 <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00534"></a><a class="code" href="classXMLElementDecl.html#205865ce4f892e83e273d0febb46fa1c">00534</a> <a class="code" href="classXMLElementDecl.html#205865ce4f892e83e273d0febb46fa1c" title="Update the create reason for this element type.">XMLElementDecl::setCreateReason</a>(<span class="keyword">const</span> <a class="code" href="classXMLElementDecl.html#1307bfa5455f69a27898614ed168f7aa">XMLElementDecl::CreateReasons</a> newReason)
<a name="l00535"></a>00535 {
<a name="l00536"></a>00536     fCreateReason = newReason;
<a name="l00537"></a>00537 }
<a name="l00538"></a>00538 
<a name="l00539"></a><a class="code" href="classXMLElementDecl.html#988371fcb81fb08d0ee6df81f9649f97">00539</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLElementDecl.html#988371fcb81fb08d0ee6df81f9649f97" title="Set the element decl pool id for this element type.">XMLElementDecl::setId</a>(<span class="keyword">const</span> <a class="code" href="Xerces__autoconf__config_8borland_8hpp.html#c0f7e36996cd03eb43bcee10321f77cd">XMLSize_t</a> newId)
<a name="l00540"></a>00540 {
<a name="l00541"></a>00541     fId = newId;
<a name="l00542"></a>00542 }
<a name="l00543"></a>00543 
<a name="l00544"></a>00544 
<a name="l00545"></a><a class="code" href="classXMLElementDecl.html#dd0cdf27f589ab23ea8de1a629b51dd7">00545</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classXMLElementDecl.html#dd0cdf27f589ab23ea8de1a629b51dd7" title="Set the element decl to indicate external declaration.">XMLElementDecl::setExternalElemDeclaration</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> aValue)
<a name="l00546"></a>00546 {
<a name="l00547"></a>00547     fExternalElement = aValue;
<a name="l00548"></a>00548 }
<a name="l00549"></a>00549 
<a name="l00550"></a>00550 <a class="code" href="XercesDefs_8hpp.html#f03d5cb905763ef7a7bd22ab82718285">XERCES_CPP_NAMESPACE_END</a>
<a name="l00551"></a>00551 
<a name="l00552"></a>00552 <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&nbsp;
<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>