- Main Page
- Related Pages
- Classes
- Files

# XSAttributeGroupDefinition.hpp

Go to the documentation of this file.

    00001 /*
    00002  * Licensed to the Apache Software Foundation (ASF) under one or more
    00003  * contributor license agreements.  See the NOTICE file distributed with
    00004  * this work for additional information regarding copyright ownership.
    00005  * The ASF licenses this file to You under the Apache License, Version 2.0
    00006  * (the "License"); you may not use this file except in compliance with
    00007  * the License.  You may obtain a copy of the License at
    00008  *
    00009  *      http://www.apache.org/licenses/LICENSE-2.0
    00010  *
    00011  * Unless required by applicable law or agreed to in writing, software
    00012  * 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 and
    00015  * limitations under the License.
    00016  */
    00017
    00018 /*
    00019  * $Id: XSAttributeGroupDefinition.hpp 527149 2007-04-10 14:56:39Z amassari $
    00020  */
    00021
    00022 #if !defined(XERCESC_INCLUDE_GUARD_XSATTRIBUTEGROUPDEFINITION_HPP)
    00023 #define XERCESC_INCLUDE_GUARD_XSATTRIBUTEGROUPDEFINITION_HPP
    00024
    00025 #include <xercesc/framework/psvi/XSObject.hpp>
    00026
    00027 XERCES_CPP_NAMESPACE_BEGIN
    00028
    00036 // forward declarations
    00037 class XSAnnotation;
    00038 class XSAttributeUse;
    00039 class XSWildcard;
    00040 class XercesAttGroupInfo;
    00041
    00042 class XMLPARSER_EXPORT XSAttributeGroupDefinition : public XSObject
    00043 {
    00044 public:
    00045
    00046     //  Constructors and Destructor
    00047     // -----------------------------------------------------------------------
    00050
    00061     XSAttributeGroupDefinition
    00062     (
    00063         XercesAttGroupInfo* const   xercesAttGroupInfo
    00064         , XSAttributeUseList* const xsAttList
    00065         , XSWildcard* const         xsWildcard
    00066         , XSAnnotation* const       xsAnnot
    00067         , XSModel* const            xsModel
    00068         , MemoryManager* const      manager = XMLPlatformUtils::fgMemoryManager
    00069     );
    00070
    00072
    00075     ~XSAttributeGroupDefinition();
    00077
    00078     //---------------------
    00081
    00086     const XMLCh* getName() const;
    00087
    00092     const XMLCh* getNamespace();
    00093
    00099     XSNamespaceItem* getNamespaceItem();
    00100
    00102
    00103     //---------------------
    00107
    00111     XSAttributeUseList *getAttributeUses();
    00112
    00116     XSWildcard *getAttributeWildcard() const;
    00117
    00121     XSAnnotation *getAnnotation() const;
    00122
    00124
    00125     //----------------------------------
    00129
    00131 private:
    00132
    00133     // -----------------------------------------------------------------------
    00134     //  Unimplemented constructors and operators
    00135     // -----------------------------------------------------------------------
    00136     XSAttributeGroupDefinition(const XSAttributeGroupDefinition&);
    00137     XSAttributeGroupDefinition & operator=(const XSAttributeGroupDefinition &);
    00138
    00139 protected:
    00140
    00141     // -----------------------------------------------------------------------
    00142     //  data members
    00143     // -----------------------------------------------------------------------
    00144     XercesAttGroupInfo*     fXercesAttGroupInfo;
    00145     XSAttributeUseList*     fXSAttributeUseList;
    00146     XSWildcard*             fXSWildcard;
    00147     XSAnnotation*           fAnnotation;
    00148 };
    00149
    00150 inline XSAttributeUseList* XSAttributeGroupDefinition::getAttributeUses()
    00151 {
    00152     return fXSAttributeUseList;
    00153 }
    00154
    00155 inline XSWildcard* XSAttributeGroupDefinition::getAttributeWildcard() const
    00156 {
    00157     return fXSWildcard;
    00158 }
    00159
    00160 inline XSAnnotation* XSAttributeGroupDefinition::getAnnotation() const
    00161 {
    00162     return fAnnotation;
    00163 }
    00164
    00165 XERCES_CPP_NAMESPACE_END
    00166
    00167 #endif