FDO .NET API Reference Feature Data Objects

mgPhysicalClassMapping.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 
00022 #include "FDO\Commands\Schema\mgPhysicalElementMapping.h"
00023 
00024 class FdoPhysicalClassMapping;
00025 
00026 BEGIN_NAMESPACE_OSGEO_COMMON_XML
00027 public __gc class XmlSaxContext;
00028 public __gc class XmlAttributeCollection;
00029 public __gc class XmlWriter;
00030 END_NAMESPACE_OSGEO_COMMON_XML
00031 
00032 BEGIN_NAMESPACE_OSGEO_FDO_XML
00033 public __gc class XmlFlags;
00034 END_NAMESPACE_OSGEO_FDO_XML
00035 
00036 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA
00037 
00038 /// \ingroup (OSGeoFDOCommandsSchema)
00039 /// \brief
00040 /// PhysicalClassMapping is an abstract class that acts as a base class for all 
00041 /// Physical Schema Mapping class overrides.
00042 public __gc class PhysicalClassMapping : public NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::PhysicalElementMapping
00043 {
00044 public:
00045     /// \brief
00046     /// Initializes this class from its XML attributes. Called when
00047     /// the class is deserialized from XML. This function decodes any
00048     /// encoded class names (See _writeXml) and strips off the "Type" suffix if present.
00049     /// Can be extended to handle 
00050     /// particular XML attributes for derived classes.
00051     /// 
00052     /// \param context 
00053     /// Input context contain information about the current deserialization operation
00054     /// \param attributes 
00055     /// Input the XML attributes.
00056     /// 
00057     /// \return
00058     /// Returns nothing
00059     /// 
00060     System::Void InitFromXml(NAMESPACE_OSGEO_COMMON_XML::XmlSaxContext* context, NAMESPACE_OSGEO_COMMON_XML::XmlAttributeCollection* attributes);
00061 
00062     /// \brief
00063     /// Writes this class to XML. Called when
00064     /// the class is serialized to XML. This function converts (encodes) 
00065     /// class names to be valid XML element names and appends the "Type"
00066     /// suffix to the name. Can be extended to handle 
00067     /// particular XML attributes for derived classes.
00068     /// <p><b>Note:</b> Schema Override elements that do not require name encoding
00069     /// should be based on PhysicalElementMapping instead of this class.
00070     /// 
00071     /// \param xmlWriter 
00072     /// Input write the class to this XML writer
00073     /// \param flags 
00074     /// Input flags that control the writing of the class.
00075     /// 
00076     /// \return
00077     /// Returns nothing
00078     /// 
00079     /// Write this element to XML.
00080     System::Void WriteXml(NAMESPACE_OSGEO_COMMON_XML::XmlWriter* xmlWriter, NAMESPACE_OSGEO_FDO_XML::XmlFlags* flags);
00081 
00082 /// \cond DOXYGEN-IGNORE
00083 public protected:
00084     PhysicalClassMapping(System::IntPtr unmanaged, System::Boolean autoDelete);
00085 /// \endcond
00086 
00087 public private:
00088     inline FdoPhysicalClassMapping* GetImpObj();
00089 };
00090 
00091 END_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA
00092 
00093 

Comments or suggestions? Send us feedback.