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 #include "FDO\Commands\Feature\mgIReader.h" 00022 00023 BEGIN_NAMESPACE_OSGEO_FDO_SCHEMA 00024 public __gc class ClassDefinition; 00025 END_NAMESPACE_OSGEO_FDO_SCHEMA 00026 00027 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_FEATURE 00028 00029 /// \ingroup (OSGeoFDOCommandsFeature) 00030 /// \interface OSGeo::FDO::Commands::Feature::IFeatureReader 00031 /// \brief 00032 /// The IFeatureReader interface provides a forward-only, read-only iterator 00033 /// for reading feature data. A reference to an IFeatureReader is returned 00034 /// from the Select and SelectAndLock commands. Because the initial position of the 00035 /// IFeatureReader is prior to the first item, you must call 00036 /// ReadNext to begin accessing any data. 00037 public __gc __interface IFeatureReader : public NAMESPACE_OSGEO_FDO_COMMANDS_FEATURE::IReader 00038 { 00039 public: 00040 /// \brief 00041 /// Gets the definition of the object currently being read. If the user 00042 /// has requested only a subset of the class properties, the class 00043 /// definition reflects what the user has asked, rather than the full class 00044 /// definition. 00045 /// 00046 /// \return 00047 /// Returns the class definition object. 00048 /// 00049 NAMESPACE_OSGEO_FDO_SCHEMA::ClassDefinition* GetClassDefinition(); 00050 00051 /// \brief 00052 /// Gets a value indicating the depth of nesting for the current reader. 00053 /// The depth value increases each time GetFeatureObject is called and a new 00054 /// reader is returned. The outermost reader has a depth of 0. 00055 /// 00056 /// \return 00057 /// Returns the reader depth 00058 /// 00059 System::Int32 GetDepth(); 00060 00061 /// \brief 00062 /// Gets the geometry value of the specified property as a byte array in 00063 /// FGF format. Because no conversion is performed, the property must be 00064 /// of Geometric type; otherwise, an exception is thrown. 00065 /// This method is a language-specific performance optimization that returns a 00066 /// pointer to the array data, rather than to an object that encapsulates 00067 /// the array. The array's memory area is only guaranteed to be valid 00068 /// until a call to ReadNext() or Close(), or the disposal of this reader 00069 /// object. 00070 /// 00071 /// \param name 00072 /// Input the property name. 00073 /// 00074 /// \return 00075 /// Returns a pointer to the byte array in FGF format. 00076 /// 00077 System::Byte GetGeometry(System::String* name) []; 00078 00079 /// \brief 00080 /// Gets a reference to an IFeatureReader to read the data contained in 00081 /// the object or object collection property. If the property is not an 00082 /// object property, an exception is thrown. 00083 /// 00084 /// \param propertyName 00085 /// Input the property name. 00086 /// 00087 /// \return 00088 /// Returns the nested feature reader 00089 /// 00090 NAMESPACE_OSGEO_FDO_COMMANDS_FEATURE::IFeatureReader* GetFeatureObject(System::String* propertyName); 00091 }; 00092 00093 END_NAMESPACE_OSGEO_FDO_COMMANDS_FEATURE 00094 00095
Comments or suggestions? Send us feedback. |