FDO .NET API Reference Feature Data Objects

mgIPhysicalElementMapping.h

Go to the documentation of this file.
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.