FDO .NET API Reference | Feature Data Objects |
00001 /* 00002 * Copyright (C) 2004-2006 Autodesk, Inc. 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of version 2.1 of the GNU Lesser 00006 * General Public License as published by the Free Software Foundation. 00007 * 00008 * This library is distributed in the hope that it will be useful, 00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00011 * Lesser General Public License for more details. 00012 * 00013 * You should have received a copy of the GNU Lesser General Public 00014 * License along with this library; if not, write to the Free Software 00015 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00016 * 00017 */ 00018 00019 #pragma once 00020 00021 BEGIN_NAMESPACE_OSGEO_COMMON 00022 public __gc class StringCollection; 00023 END_NAMESPACE_OSGEO_COMMON 00024 00025 BEGIN_NAMESPACE_OSGEO_COMMON_XML 00026 public __gc class XmlSaxContext; 00027 public __gc class XmlWriter; 00028 public __gc class XmlAttributeCollection; 00029 END_NAMESPACE_OSGEO_COMMON_XML 00030 00031 BEGIN_NAMESPACE_OSGEO_FDO_XML 00032 public __gc class XmlFlags; 00033 END_NAMESPACE_OSGEO_FDO_XML 00034 00035 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA 00036 public __gc __interface IPhysicalElementMapping; 00037 public __gc class PhysicalSchemaMapping; 00038 00039 /// \ingroup (OSGeoFDOCommandsSchema) 00040 /// \interface OSGeo::FDO::Commands::Schema::IPhysicalElementMapping 00041 /// \brief 00042 /// IPhysicalElementMapping is an abstract interface that acts as a base interface for all 00043 /// Physical Schema Mapping Override classes. FDO also provides a number of sub-classes 00044 /// for particular types of Provider-specific override classes: 00045 /// 00046 /// \li \c PhysicalClassMapping: All classes corresponding to Feature Classes 00047 /// must be based on PhysicalClassMapping. 00048 /// \li \c PhysicalPropertyMapping: Must be the base for all classes corresponding to 00049 /// Properties. 00050 /// \li \c PhysicalSchemaMapping: Must be the base for all types of schema override sets. 00051 /// \li \c Other types of schema override classes can be based directly on 00052 /// PhysicalElementMapping. 00053 /// 00054 public __gc __interface IPhysicalElementMapping : public NAMESPACE_OSGEO_COMMON_XML::IXmlSaxHandler 00055 { 00056 public: 00057 /// \brief 00058 /// Gets the parent of this PhysicalElementMapping or null if this object has not 00059 /// been added to a parent object. 00060 /// 00061 /// \return 00062 /// Returns the PhysicalElementMapping of the parent 00063 /// 00064 __property NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::IPhysicalElementMapping* get_Parent(); 00065 00066 /// \brief 00067 /// Gets the PhysicalSchemaMapping that this element is a part of. Returns null if this 00068 /// object has not been added to a feature schema. 00069 /// 00070 /// \return 00071 /// Returns PhysicalSchemaMapping this object is a part of 00072 /// 00073 __property NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::PhysicalSchemaMapping* get_SchemaMapping(); 00074 00075 /// \brief 00076 /// Gets the name of this element. 00077 /// 00078 /// \return 00079 /// Returns the name of this element. 00080 /// 00081 __property System::Void set_Name(System::String* name); 00082 00083 /// \brief 00084 /// Gets the fully qualified name of this element 00085 /// 00086 /// \return 00087 /// default implementation simply returns the element name 00088 /// 00089 __property System::String* get_Name(); 00090 00091 /// \brief 00092 /// Gets the fully qualified name of this element. 00093 /// 00094 /// \return 00095 /// Returns the qualified name of this element. 00096 /// 00097 __property System::String* get_QualifiedName(); 00098 00099 /// \brief 00100 /// Indicates whether the name of the Element can be changed once 00101 /// it has been created. 00102 /// 00103 /// \return 00104 /// Returns true if the Element name can be changed; otherwise false. 00105 /// 00106 __property System::Boolean get_CanSetName(); 00107 00108 /// \brief 00109 /// Initializes this Physical Element Mapping from its XML attributes. Called when 00110 /// the element is deserialized from XML. Can be extended to handle 00111 /// particular XML attributes for derived classes. 00112 /// 00113 /// \param context 00114 /// Input context contain information about the current deserialization operation 00115 /// \param attributes 00116 /// Input the XML attributes. 00117 /// 00118 /// \return 00119 /// Returns nothing 00120 /// 00121 System::Void InitFromXml(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, NAMESPACE_OSGEO_COMMON_XML::XmlAttributeCollection* attributes); 00122 00123 /// \brief 00124 /// Writes this Physical Mapping Element to XML. Called when 00125 /// the element is serialized to XML. Can be extended to handle 00126 /// particular XML attributes and sub-elements for derived classes. 00127 /// 00128 /// \param xmlWriter 00129 /// Input write the element to this XML writer 00130 /// \param flags 00131 /// Input flags that control the writing of the element. 00132 /// 00133 /// \return 00134 /// Returns nothing 00135 /// 00136 System::Void WriteXml(NAMESPACE_OSGEO_COMMON_XML::XmlWriter* xmlWriter, NAMESPACE_OSGEO_FDO_XML::XmlFlags* flags); 00137 00138 /// \brief 00139 /// Error reporting function that are not yet part of the supported FDO API. 00140 /// Return a XmlSkipElementHandler, which can be used to skip over the element in error. 00141 /// 00142 /// \param context 00143 /// Input context contain information about the current deserialization operation 00144 /// 00145 /// \param parentElement 00146 /// Input the XML parent element 00147 /// 00148 /// \param subElement 00149 /// Input the XML sub element 00150 /// 00151 NAMESPACE_OSGEO_COMMON_XML::IXmlSaxHandler* SubElementError(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, System::String* parentElement, System::String* subElement); 00152 00153 /// \brief 00154 /// Error reporting function that are not yet part of the supported FDO API. 00155 /// Return a XmlSkipElementHandler, which can be used to skip over the element in error. 00156 /// 00157 /// \param context 00158 /// Input context contain information about the current deserialization operation 00159 /// 00160 /// \param parentElement 00161 /// Input the XML parent element 00162 /// 00163 /// \param subElement 00164 /// Input the XML sub element 00165 /// 00166 NAMESPACE_OSGEO_COMMON_XML::IXmlSaxHandler* MultiSubElementError(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, System::String* parentElement, System::String* subElement); 00167 00168 /// \brief 00169 /// Error reporting function that are not yet part of the supported FDO API. 00170 /// Return a XmlSkipElementHandler, which can be used to skip over the element in error. 00171 /// 00172 /// \param context 00173 /// Input context contain information about the current deserialization operation 00174 /// 00175 /// \param parentElement 00176 /// Input the XML parent element 00177 /// 00178 /// \param subElements 00179 /// Input the list of the XML sub elements 00180 /// 00181 NAMESPACE_OSGEO_COMMON_XML::IXmlSaxHandler* ChoiceSubElementError(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, System::String* parentElement, NAMESPACE_OSGEO_COMMON::StringCollection* subElements); 00182 00183 /// \brief 00184 /// Error reporting function that are not yet part of the supported FDO API. 00185 /// Return a XmlSkipElementHandler, which can be used to skip over the element in error. 00186 /// 00187 /// \param context 00188 /// Input context contain information about the current deserialization operation 00189 /// 00190 /// \param parentElement 00191 /// Input the XML parent element 00192 /// 00193 /// \param subElement 00194 /// Input the XML sub element 00195 /// 00196 /// \param subElementName 00197 /// Input the XML sub element name 00198 /// 00199 NAMESPACE_OSGEO_COMMON_XML::IXmlSaxHandler* DuplicateSubElementError(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, System::String* parentElement, System::String* subElement, System::String* subElementName); 00200 }; 00201 00202 END_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA 00203 00204
Comments or suggestions? Send us feedback. |