Autodesk FDO Provider for Oracle API Reference

Oracle Provider API

API Reference Autodesk FDO Provider for Oracle

ICreateSpatialIndex.h

Go to the documentation of this file.
00001 #ifndef _ICREATESPATIALINDEX_H_
00002 #define _ICREATESPATIALINDEX_H_
00003 //
00004 //
00005 // (C) Copyright 1990-2005 by Autodesk, Inc.
00006 //
00007 //
00008 //
00009 // By using this code, you are agreeing to the terms
00010 // and conditions of the License Agreement that appeared
00011 // and was accepted upon download or installation
00012 // (or in connection with the download or installation)
00013 // of the Autodesk software in which this code is included.
00014 // All permissions on use of this code are as set forth
00015 // in such License Agreement provided that the above copyright
00016 // notice appears in all authorized copies and that both that
00017 // copyright notice and the limited warranty and
00018 // restricted rights notice below appear in all supporting
00019 // documentation.
00020 //
00021 // AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
00022 // AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
00023 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK, INC.
00024 // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
00025 // UNINTERRUPTED OR ERROR FREE.
00026 //
00027 // Use, duplication, or disclosure by the U.S. Government is subject to
00028 // restrictions set forth in FAR 52.227-19 (Commercial Computer
00029 // Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
00030 // (Rights in Technical Data and Computer Software), as applicable.
00031 // 
00032 #ifdef _WIN32
00033 #pragma once
00034 #endif
00035 
00036 #include "FdoStd.h"
00037 #include "Fdo/Commands/ICommand.h"
00038 #include "Rdbms/SpatialIndexDimensionType.h"
00039 #include "Rdbms/SpatialIndexType.h"
00040 #include "Fdo/Schema/PropertyDefinition.h"
00041 
00042 
00043 /// \brief
00044 /// The ICreateSpatialIndex interface defines the CreateSpatialIndex
00045 /// command, which is spatial indexing the speciified spatial context. 
00046 /// Input to the command includes the name, spatial context, special index type,
00047 /// the number of dimensions for the new spatial index.
00048 class FdoICreateSpatialIndex : public FdoICommand
00049 {
00050 
00051 public:
00052     /// \brief
00053     /// Gets the name of the Spatial index as a String.
00054     /// 
00055     /// \return
00056     /// Returns the name of the spatial Index 
00057     /// 
00058     FDO_API virtual const wchar_t* GetName() = 0;
00059 
00060     /// \brief
00061     /// Sets the name of the spatial Index  to create as a String.
00062     /// 
00063     /// \param value 
00064     /// Input the name of the spatial Index
00065     /// 
00066     /// \return
00067     /// Returns nothing
00068     /// 
00069     FDO_API virtual void SetName(const wchar_t* value) = 0;
00070 
00071     /// \brief
00072     /// Gets the name of the spatial context as a String.
00073     /// 
00074     /// \return
00075     /// Returns the description of the spatial context 
00076     /// 
00077     FDO_API virtual const wchar_t* GetSpatialContextName() = 0;
00078 
00079     /// \brief
00080     /// Sets the name of the spatial context to create as a String.
00081     /// 
00082     /// \param value 
00083     /// Input the description of the spatial spatial Index
00084     /// 
00085     /// \return
00086     /// Returns nothing
00087     /// 
00088     FDO_API virtual void SetSpatialContextName(const wchar_t* value) = 0;
00089 
00090     /// \brief
00091     /// Gets the type of the spatial Index, either Quad-Tree or R-Tree.
00092     /// 
00093     /// \return
00094     /// Returns the spatial index type
00095     /// 
00096     FDO_API virtual SpatialIndexType GetSpatialIndexType() = 0;
00097 
00098     /// \brief
00099     /// Sets the desired spatial Index  to create, either Quad-Tree or R-Tree.
00100     /// 
00101     /// \param value 
00102     /// Input the index type
00103     /// 
00104     /// \return
00105     /// Returns nothing
00106     /// 
00107     FDO_API virtual void SetSpatialIndexType(SpatialIndexType value) = 0;
00108 
00109     /// \brief
00110     /// Gets the number of dimensions of the spatial Index.
00111     /// 
00112     /// \return
00113     /// Returns the extent type
00114     /// 
00115     FDO_API virtual SpatialIndexDimensionType GetNumDimensions() = 0;
00116     
00117     /// \brief
00118     /// Sets the desired value of the spatial Index dimension.
00119     /// 
00120     /// \param value 
00121     /// Input the index dimension
00122     /// 
00123     /// \return
00124     /// Returns nothing
00125     /// 
00126     FDO_API virtual void SetNumDimensions(SpatialIndexDimensionType value) = 0;
00127 
00128     /// \brief
00129     /// Sets the geometric property.
00130     /// 
00131     /// \param value 
00132     /// Input the geometric property definition.
00133     /// 
00134     /// \return
00135     /// Returns nothing
00136     /// 
00137     FDO_API virtual void SetGeometricProperty(FdoGeometricPropertyDefinition *value) = 0;
00138 
00139     /// \brief
00140     /// Gets the geometric property previously set, if any.
00141     /// 
00142     /// \return
00143     /// Returns NULL if not set or a pointer to a geometry property definition
00144     /// 
00145     FDO_API virtual FdoGeometricPropertyDefinition *GetGeometricProperty() = 0;
00146 
00147     /// \brief
00148     /// Executes the CreateSpatialIndex command. An exception is thrown if
00149     /// the spatial index or the spatial context names are not indicated.
00150     /// 
00151     /// \return
00152     /// Returns nothing
00153     /// 
00154     FDO_API virtual void Execute() = 0;
00155 };
00156 #endif
00157 
00158 

Comments?