Xerces-C++: XSMultiValueFacet.hpp Source File

| API Docs for SAX and DOM |
| Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages # XSMultiValueFacet.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  * $Id: XSMultiValueFacet.hpp 191054 2005-06-17 02:56:35Z jberry $
    00019  */
    00020
    00021 #if !defined(XSMULTIVALUEFACET_HPP)
    00022 #define XSMULTIVALUEFACET_HPP
    00023
    00024 #include <xercesc/framework/psvi/XSObject.hpp>
    00025 #include <xercesc/framework/psvi/XSSimpleTypeDefinition.hpp>
    00026
    00027 XERCES_CPP_NAMESPACE_BEGIN
    00028
    00036 // forward declarations
    00037 class XSAnnotation;
    00038
    00039 class  XSMultiValueFacet : public XSObject
    00040 {
    00041 public:
    00042
    00043     //  Constructors and Destructor
    00044     // -----------------------------------------------------------------------
    00047
    00058     XSMultiValueFacet
    00059     (
    00060         XSSimpleTypeDefinition::FACET facetKind
    00061         , StringList*                 lexicalValues
    00062         , bool                        isFixed
    00063         , XSAnnotation* const         headAnnot
    00064         , XSModel* const              xsModel
    00065         , MemoryManager* const        manager = XMLPlatformUtils::fgMemoryManager
    00066     );
    00067
    00069
    00072     ~XSMultiValueFacet();
    00074
    00075     //---------------------
    00079
    00083     XSSimpleTypeDefinition::FACET getFacetKind() const;
    00084
    00088     StringList *getLexicalFacetValues();
    00089
    00093     bool isFixed() const;
    00094
    00098     XSAnnotationList *getAnnotations();
    00099
    00101
    00102     //----------------------------------
    00106
    00108 private:
    00109
    00110     // -----------------------------------------------------------------------
    00111     //  Unimplemented constructors and operators
    00112     // -----------------------------------------------------------------------
    00113     XSMultiValueFacet(const XSMultiValueFacet&);
    00114     XSMultiValueFacet & operator=(const XSMultiValueFacet &);
    00115
    00116 protected:
    00117
    00118     // -----------------------------------------------------------------------
    00119     //  data members
    00120     // -----------------------------------------------------------------------
    00121     XSSimpleTypeDefinition::FACET fFacetKind;
    00122     bool                          fIsFixed;
    00123     StringList*                   fLexicalValues;  // not owned by this class
    00124     XSAnnotationList*             fXSAnnotationList;
    00125 };
    00126
    00127
    00128 inline XSSimpleTypeDefinition::FACET XSMultiValueFacet::getFacetKind() const
    00129 {
    00130     return fFacetKind;
    00131 }
    00132
    00133 inline bool XSMultiValueFacet::isFixed() const
    00134 {
    00135     return fIsFixed;
    00136 }
    00137
    00138 inline StringList *XSMultiValueFacet::getLexicalFacetValues()
    00139 {
    00140     return fLexicalValues;
    00141 }
    00142
    00143 inline XSAnnotationList *XSMultiValueFacet::getAnnotations()
    00144 {
    00145     return fXSAnnotationList;
    00146 }
    00147
    00148
    00149 XERCES_CPP_NAMESPACE_END
    00150
    00151 #endif

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