| API Docs for SAX and DOM |
| Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members # XSModelGroupDefinition.hpp Go to the documentation of this file.
    00001 /*
    00002  * Copyright 2003,2004 The Apache Software Foundation.
    00003  *
    00004  * Licensed under the Apache License, Version 2.0 (the "License");
    00005  * you may not use this file except in compliance with the License.
    00006  * You may obtain a copy of the License at
    00007  *
    00008  *      http://www.apache.org/licenses/LICENSE-2.0
    00009  *
    00010  * Unless required by applicable law or agreed to in writing, software
    00011  * distributed under the License is distributed on an "AS IS" BASIS,
    00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00013  * See the License for the specific language governing permissions and
    00014  * limitations under the License.
    00015  */
    00016
    00017 /*
    00018  * $Log: XSModelGroupDefinition.hpp,v $
    00019  * Revision 1.6  2004/09/08 13:56:08  peiyongz
    00020  * Apache License Version 2.0
    00021  *
    00022  * Revision 1.5  2003/12/01 23:23:26  neilg
    00023  * fix for bug 25118; thanks to Jeroen Witmond
    00024  *
    00025  * Revision 1.4  2003/11/21 17:29:53  knoaman
    00026  * PSVI update
    00027  *
    00028  * Revision 1.3  2003/11/14 22:47:53  neilg
    00029  * fix bogus log message from previous commit...
    00030  *
    00031  * Revision 1.2  2003/11/14 22:33:30  neilg
    00032  * Second phase of schema component model implementation.
    00033  * Implement XSModel, XSNamespaceItem, and the plumbing necessary
    00034  * to connect them to the other components.
    00035  * Thanks to David Cargill.
    00036  *
    00037  * Revision 1.1  2003/09/16 14:33:36  neilg
    00038  * PSVI/schema component model classes, with Makefile/configuration changes necessary to build them
    00039  *
    00040  */
    00041
    00042 #if !defined(XSMODELGROUPDEFINITION_HPP)
    00043 #define XSMODELGROUPDEFINITION_HPP
    00044
    00045 #include <xercesc/framework/psvi/XSObject.hpp>
    00046
    00047 XERCES_CPP_NAMESPACE_BEGIN
    00048
    00056 // forward declarations
    00057 class XSAnnotation;
    00058 class XSModelGroup;
    00059 class XSParticle;
    00060 class XercesGroupInfo;
    00061
    00062 class  XSModelGroupDefinition : public XSObject
    00063 {
    00064 public:
    00065
    00066     //  Constructors and Destructor
    00067     // -----------------------------------------------------------------------
    00070
    00080     XSModelGroupDefinition
    00081     (
    00082         XercesGroupInfo* const groupInfo
    00083         , XSParticle* const    groupParticle
    00084         , XSAnnotation* const  annot
    00085         , XSModel* const       xsModel
    00086         , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager
    00087     );
    00088
    00090
    00093     ~XSModelGroupDefinition();
    00095
    00096     //---------------------
    00099
    00104     const XMLCh* getName();
    00105
    00110     const XMLCh* getNamespace();
    00111
    00117     XSNamespaceItem *getNamespaceItem();
    00118
    00120
    00121     //---------------------
    00125
    00129     XSModelGroup *getModelGroup();
    00130
    00134     XSAnnotation *getAnnotation() const;
    00135
    00137
    00138     //----------------------------------
    00141
    00143 private:
    00144
    00145     // -----------------------------------------------------------------------
    00146     //  Unimplemented constructors and operators
    00147     // -----------------------------------------------------------------------
    00148     XSModelGroupDefinition(const XSModelGroupDefinition&);
    00149     XSModelGroupDefinition & operator=(const XSModelGroupDefinition &);
    00150
    00151 protected:
    00152
    00153     // -----------------------------------------------------------------------
    00154     //  data members
    00155     // -----------------------------------------------------------------------
    00156     XercesGroupInfo* fGroupInfo;
    00157     XSParticle*      fModelGroupParticle;
    00158     XSAnnotation*    fAnnotation;
    00159 };
    00160
    00161 inline XSAnnotation* XSModelGroupDefinition::getAnnotation() const
    00162 {
    00163     return fAnnotation;
    00164 }
    00165
    00166
    00167
    00168 XERCES_CPP_NAMESPACE_END
    00169
    00170 #endif

Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.