FDO .NET API Reference Feature Data Objects

mgIFilterProcessorImp.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\Filter\mgIFilterProcessor.h"
00022 
00023 class FdoIFilterProcessor;
00024 
00025 BEGIN_NAMESPACE_OSGEO_FDO_FILTER
00026 
00027 /// \ingroup (OSGeoFDOFilter)
00028 /// \brief
00029 /// The IFilterProcessor interface can be used to process the nodes in a filter
00030 /// tree. It declares a process operation for each concrete class in the filter
00031 /// hierarchy. Providers or client applications can create classes that realize
00032 /// this interface to do something meaningful with a filter hierarchy. For
00033 /// example, a RDBMS feature provider can implement a processor class to convert a
00034 /// filter hierarchy to the SQL equivalent syntax.
00035 private __gc class IFilterProcessorImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, public NAMESPACE_OSGEO_FDO_FILTER::IFilterProcessor
00036 {
00037 public:
00038     /// \brief
00039     /// Constructs a IFilterProcessorImp object based on an unmanaged instance of the object
00040     /// 
00041     /// \param unmanaged 
00042     /// Input A Pointer to the unmanaged object.
00043     /// 
00044     /// \param autoDelete 
00045     /// Input Indicates if the constructed object should be automatically deleted 
00046     /// once it no longer referenced.
00047     /// 
00048     IFilterProcessorImp(System::IntPtr unmanaged, System::Boolean autoDelete);
00049 
00050 public private:
00051     inline FdoIFilterProcessor* GetImpObj();
00052 
00053 /// \cond DOXYGEN-IGNORE
00054 protected:
00055     System::Void ReleaseUnmanagedObject();
00056 /// \endcond
00057 };
00058 END_NAMESPACE_OSGEO_FDO_FILTER
00059 
00060 

Comments or suggestions? Send us feedback.