FDO .NET API Reference Feature Data Objects

mgITopologyCapabilitiesImp.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 #include "FDO\Connections\Capabilities\mgITopologyCapabilities.h"
00022 
00023 class FdoITopologyCapabilities;
00024 
00025 BEGIN_NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES
00026 
00027 /// \ingroup (OSGeoFDOConnectionsCapabilities)
00028 /// \brief
00029 /// FDO supports properties that inform the client code about capabilities that
00030 /// may vary between providers. 
00031 /// <p><b>Note:</b> <span class="red_text">This Help topic is provided for informational use only. There is
00032 /// no interface or support provided. OSGeo reserves the right to change
00033 /// the software related to the content herein.</span>
00034 private __gc class ITopologyCapabilitiesImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, 
00035                                               public NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES::ITopologyCapabilities
00036 {
00037 public:
00038     /// True if the provider supports topology; if this is false, attempts to
00039     /// create topology-specific schema will fail.
00040     System::Boolean SupportsTopology();
00041 
00042     /// True if the provider supports TopoGeometry properties that depend on
00043     /// each other in a hierarchy; if this is false, attempting to set a
00044     /// non-NULL for TopoGeometryPropertyDefinition's "DependsOnTopoGeometry"
00045     /// property will fail.
00046     System::Boolean SupportsTopologicalHierarchy();
00047 
00048     /// True if the provider automatically (as a result of geometry assignment)
00049     /// breaks curves and inserts nodes wherever curves cross or touch, or where
00050     /// a node touches a curve.
00051     System::Boolean BreaksCurveCrossingsAutomatically();
00052 
00053     /// True if the provider supports the activation of a topology using an area
00054     /// (surface) restriction; this may involve the use of pessimistic locking.
00055     System::Boolean ActivatesTopologyByArea();
00056 
00057     /// True if the provider constrains edits of TopoGeometry properties (by
00058     /// geometry value) to those that do not change topological relationships.
00059     System::Boolean ConstrainsFeatureMovements();
00060 
00061 /// \cond DOXYGEN-IGNORE
00062 protected:
00063     System::Void ReleaseUnmanagedObject();
00064 /// \endcond
00065 
00066 public private:
00067     ITopologyCapabilitiesImp(System::IntPtr unmanaged, System::Boolean autoDelete);
00068 
00069     inline FdoITopologyCapabilities* GetImpObj();
00070 };
00071 
00072 END_NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES
00073 
00074 

Comments or suggestions? Send us feedback.