FDO .NET API Reference Feature Data Objects

mgClass.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 
00023 #include "FDO\Schema\mgClassType.h"
00024 
00025 class FdoClass;
00026 
00027 BEGIN_NAMESPACE_OSGEO_FDO_SCHEMA
00028 
00029 /// \ingroup (OSGeoFDOSchema)
00030 /// \brief
00031 /// Class derives ClassDefinition and can be used to represent any type of
00032 /// non-spatial data within a feature schema. Typically, classes are used in the
00033 /// feature schema to define complex properties of other feature types by
00034 /// containment. However, they can also be used at global scope and
00035 /// instances can be created, deleted, updated, and selected through FDO
00036 /// commands. The Class type does not pre-define any base properties.
00037 public __gc class Class : public NAMESPACE_OSGEO_FDO_SCHEMA::ClassDefinition
00038 {
00039 public:
00040     /// \brief
00041     /// Constructs a default instance of an Class.
00042     /// 
00043     Class();
00044 
00045     /// \brief
00046     /// Constructs an instance of an FDO Class using the specified arguments.
00047     /// 
00048     /// \param name 
00049     /// Input the name of the class
00050     /// \param description 
00051     /// Input the description of the class
00052     /// 
00053     /// \return
00054     /// Returns an FDO Class
00055     /// 
00056     Class(System::String* name, System::String* description);
00057 
00058     /// \brief
00059     /// Gets the concrete FDO class type.
00060     /// 
00061     /// \return
00062     /// Returns the FDO class type
00063     /// 
00064     __property NAMESPACE_OSGEO_FDO_SCHEMA::ClassType get_ClassType();
00065 
00066     /// \brief
00067     /// Constructs an FDO Class object based on an unmanaged instance of the object
00068     /// 
00069     /// \param unmanaged 
00070     /// Input A Pointer to the unmanaged object.
00071     /// 
00072     /// \param autoDelete 
00073     /// Input Indicates if the constructed object should be automatically deleted 
00074     /// once it no longer referenced.
00075     /// 
00076     Class(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_SCHEMA::ClassDefinition(unmanaged, autoDelete)
00077     {
00078 
00079     }
00080 
00081 public private:
00082     inline FdoClass* GetImpObj();
00083 };
00084 
00085 END_NAMESPACE_OSGEO_FDO_SCHEMA
00086 
00087 

Comments or suggestions? Send us feedback.