00001 /*00002 * Licensed to the Apache Software Foundation (ASF) under one or more00003 * contributor license agreements. See the NOTICE file distributed with00004 * this work for additional information regarding copyright ownership.00005 * The ASF licenses this file to You under the Apache License, Version 2.000006 * (the "License"); you may not use this file except in compliance with00007 * the License. You may obtain a copy of the License at00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.000010 * 00011 * Unless required by applicable law or agreed to in writing, software00012 * distributed under the License is distributed on an "AS IS" BASIS,00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.00014 * See the License for the specific language governing permissions and00015 * limitations under the License.00016 */00017
00018 /*00019 * $Id: XSNotationDeclaration.hpp 568078 2007-08-21 11:43:25Z amassari $00020 */00021
00022 #if !defined(XSNOTATIONDECLARATION_HPP)00023#define XSNOTATIONDECLARATION_HPP00024
00025 #include <xercesc/framework/psvi/XSObject.hpp>00026
00027 XERCES_CPP_NAMESPACE_BEGIN00028
00036 // forward declarations00037 class XSAnnotation;
00038 class XMLNotationDecl;
00039
00040class XSNotationDeclaration : publicXSObject00041 {
00042 public:
00043
00044 // Constructors and Destructor00045 // -----------------------------------------------------------------------00048
00057 XSNotationDeclaration00058 (
00059 XMLNotationDecl* const xmlNotationDecl
00060 , XSAnnotation* const annot
00061 , XSModel* const xsModel
00062 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager00063 );
00064
00066
00069 ~XSNotationDeclaration();
00071
00072 //---------------------00076
00081 const XMLCh* getName();
00082
00087 const XMLCh* getNamespace();
00088
00094 XSNamespaceItem *getNamespaceItem();
00095
00097
00098 //---------------------00102
00107 const XMLCh *getSystemId();
00108
00113 const XMLCh *getPublicId();
00114
00118 XSAnnotation *getAnnotation() const;
00119
00121
00122 //----------------------------------00126
00128 private:
00129
00130 // -----------------------------------------------------------------------00131 // Unimplemented constructors and operators00132 // -----------------------------------------------------------------------00133 XSNotationDeclaration(constXSNotationDeclaration&);
00134 XSNotationDeclaration & operator=(constXSNotationDeclaration &);
00135
00136 protected:
00137
00138 // -----------------------------------------------------------------------00139 // data members00140 // -----------------------------------------------------------------------00141XMLNotationDecl* fXMLNotationDecl;
00142XSAnnotation* fAnnotation;
00143 };
00144
00145inlineXSAnnotation* XSNotationDeclaration::getAnnotation() const00146 {
00147 returnfAnnotation;
00148 }
00149
00150
00151
00152 XERCES_CPP_NAMESPACE_END00153
00154 #endif