FDO .NET API Reference Feature Data Objects

mgFeatureClass.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\Schema\mgClassDefinition.h"
00022 #include "FDO\Schema\mgClassType.h"
00023 
00024 class FdoFeatureClass;
00025 
00026 BEGIN_NAMESPACE_OSGEO_FDO_SCHEMA
00027 public __gc class GeometricPropertyDefinition;
00028 
00029 /// \ingroup (OSGeoFDOSchema)
00030 /// \brief
00031 /// The FeatureClass class can be used to represent spatial or non-spatial features.
00032 /// Spatial features must have at lease one geometric property. FeatureClass
00033 /// type has one pre-defined base property "Bounds". The "Bounds" read-only
00034 /// property can be used to get the geometric boundary of the spatial feature.
00035 /// The value of this property will be null if the feature is not a spatial
00036 /// feature.
00037 public __gc class FeatureClass : public NAMESPACE_OSGEO_FDO_SCHEMA::ClassDefinition
00038 {
00039 public:
00040     /// \brief
00041     /// Constructs a default instance of an FeatureClass.
00042     /// 
00043     FeatureClass();
00044 
00045     /// \brief
00046     /// Constructs an instance of an FeatureClass using the specified arguments.
00047     /// 
00048     /// \param name 
00049     /// Input name
00050     /// \param description 
00051     /// Input description
00052     /// 
00053     FeatureClass(System::String* name, System::String* description);
00054 
00055     /// \brief
00056     /// Gets the concrete class type.
00057     /// 
00058     /// \return
00059     /// Returns class type
00060     /// 
00061     __property NAMESPACE_OSGEO_FDO_SCHEMA::ClassType get_ClassType();
00062 
00063     /// \brief
00064     /// Gets the geometric property that defines the geometry for this spatial 
00065     /// feature class.
00066     /// 
00067     /// \return
00068     /// Returns the geometric property
00069     /// 
00070     __property NAMESPACE_OSGEO_FDO_SCHEMA::GeometricPropertyDefinition* get_GeometryProperty();
00071 
00072     /// \brief
00073     /// Sets the geometric property that defines the geometry for this spatial 
00074     /// feature class. The specified GeometricPropertyDefinition must be a member 
00075     /// of either ClassDefinition.GetBaseProperties or ClassDefinition.GetProperties 
00076     /// collection.
00077     /// 
00078     /// \param value 
00079     /// Input the geometric property
00080     /// 
00081     /// \return
00082     /// Returns nothing
00083     /// 
00084     __property System::Void set_GeometryProperty(NAMESPACE_OSGEO_FDO_SCHEMA::GeometricPropertyDefinition* value);
00085 
00086     /// \brief
00087     /// Constructs a FeatureClass object based on an unmanaged instance of the object
00088     /// 
00089     /// \param unmanaged 
00090     /// Input A Pointer to the unmanaged object.
00091     /// 
00092     /// \param autoDelete 
00093     /// Input Indicates if the constructed object should be automatically deleted 
00094     /// once it no longer referenced.
00095     /// 
00096     FeatureClass(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_SCHEMA::ClassDefinition(unmanaged, autoDelete)
00097     {
00098 
00099     }
00100 
00101 public private:
00102     inline FdoFeatureClass* GetImpObj();
00103 };
00104 
00105 END_NAMESPACE_OSGEO_FDO_SCHEMA
00106 
00107 

Comments or suggestions? Send us feedback.