http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Charter
Release Info

Installation
Download
Build Instructions

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

Source Repository
User Mail Archive
Devel Mail Archive

API Docs for SAX and DOM
 

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.