FDO .NET API Reference Feature Data Objects

mgIRasterCapabilitiesImp.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\mgIRasterCapabilities.h"
00022 
00023 class FdoIRasterCapabilities;
00024 
00025 BEGIN_NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES
00026 
00027 /// \ingroup (OSGeoFDOConnectionsCapabilities)
00028 /// \brief
00029 /// The IRasterCapabilities class delineates available support for raster processing from a provider.
00030 private __gc class IRasterCapabilitiesImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, 
00031                                             public NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES::IRasterCapabilities
00032 {
00033 public:
00034     /// \brief
00035     /// Returns true if the provider has raster capability.
00036     /// This implies the capability to define new raster properties on a class
00037     /// and store and retrieve raster images.
00038     /// 
00039     /// \return
00040     /// Returns true if raster images are supported, false otherwise.
00041     /// 
00042     System::Boolean SupportsRaster ();
00043 
00044     /// \brief
00045     /// Returns true if the provider has the capability to stitch images from a
00046     /// select command (query) together into a single image.
00047     /// 
00048     /// \return
00049     /// Returns false if this capability is not supported, and hence the
00050     /// IFeatureReader object returned from a select command will have one feature
00051     /// for each of the IRaster objects that match the select filter.
00052     /// Returns true if this capability is supported. If the MOSAIC function
00053     /// is specified in the select command, then a single image that is a combination
00054     /// of the selected images is returned.
00055     /// 
00056     System::Boolean SupportsStitching ();
00057 
00058     /// \brief
00059     /// Returns true if the provider can reduce the resolution of an image.
00060     /// 
00061     /// \return
00062     /// Returns true if this capability is supported, and hence the IRaster
00063     /// object returned by the IFeatureReader from a query will honour the
00064     /// SetImageXSize() and SetImageYSize() methods and reduce the resolution of the
00065     /// image by one of several means of subsampling. Returns false if attempting to set
00066     /// the image size of an IRaster object returned by a IFeatureReader will
00067     /// throw an Exception.
00068     /// 
00069     System::Boolean SupportsSubsampling ();
00070 
00071     /// \brief
00072     /// Returns true if the provider can handle the provided data model.
00073     /// It is expected that when used to transform between data models, the matrix defined
00074     /// by input and output data models is not sparse for every data model that is supported.
00075     /// 
00076     /// \param model 
00077     /// The model to check for validity with this provider.
00078     /// 
00079     /// \return
00080     /// Returns true if the specified data model is supported, and hence the
00081     /// IRaster object will dynamically transform an image to the specified data model.
00082     /// Returns false if the specified data model is not supported.
00083     /// 
00084     System::Boolean SupportsDataModel (NAMESPACE_OSGEO_FDO_RASTER::RasterDataModel* model);
00085 
00086 /// \cond DOXYGEN-IGNORE
00087 protected:
00088     System::Void ReleaseUnmanagedObject();
00089 /// \endcond
00090 
00091 public private:
00092     IRasterCapabilitiesImp(System::IntPtr unmanaged, System::Boolean autoDelete);
00093 
00094     inline FdoIRasterCapabilities* GetImpObj();
00095 };
00096 
00097 END_NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES
00098 
00099 

Comments or suggestions? Send us feedback.