FDO API Reference | Feature Data Objects |
00001 00002 // 00003 // Copyright (C) 2004-2006 Autodesk, Inc. 00004 // 00005 // This library is free software; you can redistribute it and/or 00006 // modify it under the terms of version 2.1 of the GNU Lesser 00007 // General Public License as published by the Free Software Foundation. 00008 // 00009 // This library is distributed in the hope that it will be useful, 00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 // Lesser General Public License for more details. 00013 // 00014 // You should have received a copy of the GNU Lesser General Public 00015 // License along with this library; if not, write to the Free Software 00016 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00017 // 00018 00019 #ifndef _FDOITOPOLOGYCAPABILITIES_H_ 00020 #define _FDOITOPOLOGYCAPABILITIES_H_ 00021 00022 /// \brief 00023 /// FDO supports properties that inform the client code about capabilities that 00024 /// may vary between providers. 00025 /// /note 00026 /// This Help topic is provided for informational use only. There is 00027 /// no interface or support provided. Autodesk reserves the right to change 00028 /// the software related to the content herein. 00029 class FdoITopologyCapabilities : public FdoIDisposable 00030 { 00031 public: 00032 /// True if the provider supports topology; if this is false, attempts to 00033 /// create topology-specific schema will fail. 00034 FDO_API virtual bool SupportsTopology() = 0; 00035 00036 /// True if the provider supports TopoGeometry properties that depend on 00037 /// each other in a hierarchy; if this is false, attempting to set a 00038 /// non-NULL for FdoTopoGeometryPropertyDefinition's "DependsOnTopoGeometry" 00039 /// property will fail. 00040 FDO_API virtual bool SupportsTopologicalHierarchy() = 0; 00041 00042 /// True if the provider automatically (as a result of geometry assignment) 00043 /// breaks curves and inserts nodes wherever curves cross or touch, or where 00044 /// a node touches a curve. 00045 FDO_API virtual bool BreaksCurveCrossingsAutomatically() = 0; 00046 00047 /// True if the provider supports the activation of a topology using an area 00048 /// (surface) restriction; this may involve the use of pessimistic locking. 00049 FDO_API virtual bool ActivatesTopologyByArea() = 0; 00050 00051 /// True if the provider constrains edits of TopoGeometry properties (by 00052 /// geometry value) to those that do not change topological relationships. 00053 FDO_API virtual bool ConstrainsFeatureMovements() = 0; 00054 }; 00055 00056 #endif /* _FDOITOPOLOGYCAPABILITIES_H_ */ 00057 00058
Comments or suggestions? Send us feedback. |