FDO API Reference | Feature Data Objects |
00001 #ifndef _IFEATURECOMMAND_H_ 00002 #define _IFEATURECOMMAND_H_ 00003 // 00004 00005 // 00006 // Copyright (C) 2004-2006 Autodesk, Inc. 00007 // 00008 // This library is free software; you can redistribute it and/or 00009 // modify it under the terms of version 2.1 of the GNU Lesser 00010 // General Public License as published by the Free Software Foundation. 00011 // 00012 // This library is distributed in the hope that it will be useful, 00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 // Lesser General Public License for more details. 00016 // 00017 // You should have received a copy of the GNU Lesser General Public 00018 // License along with this library; if not, write to the Free Software 00019 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00020 // 00021 00022 #ifdef _WIN32 00023 #pragma once 00024 #endif 00025 00026 #include <FdoStd.h> 00027 #include <Fdo/Commands/ICommand.h> 00028 #include <Fdo/Connections/IConnection.h> 00029 #include <Fdo/Expression/Identifier.h> 00030 #include <Fdo/Filter/Filter.h> 00031 00032 /// \brief 00033 /// The FdoIFeatureCommand interface defines the behavior common 00034 /// to all commands that operate on feature instances. The features to 00035 /// be operated on are identified by their class and a filter. If the feature 00036 /// provider supports inheritance in the schema capabilities, then the command 00037 /// will operate on instances of that class and any derived classes. 00038 /// In addition, feature commands can operate on related features if one or 00039 /// more relation directives are specified. Each relation directive specifies 00040 /// the relation to follow and how many levels of depth to follow it. 00041 class FdoIFeatureCommand : public FdoICommand 00042 { 00043 friend class FdoIConnection; 00044 00045 public: 00046 /// \brief 00047 /// Gets the name of the class to be operated upon as an identifier. 00048 /// 00049 /// \return 00050 /// Returns nothing 00051 /// 00052 FDO_API virtual FdoIdentifier* GetFeatureClassName() = 0; 00053 00054 /// \brief 00055 /// Sets the name of the class to be operated upon as an identifier. 00056 /// 00057 /// \param value 00058 /// Input the class identifier 00059 /// 00060 /// \return 00061 /// Returns nothing 00062 /// 00063 FDO_API virtual void SetFeatureClassName(FdoIdentifier* value) = 0; 00064 00065 /// \brief 00066 /// Sets the name of the class to be operated upon as an identifier. 00067 /// 00068 /// \param value 00069 /// Input the class name 00070 /// 00071 /// \return 00072 /// Returns nothing 00073 /// 00074 FDO_API virtual void SetFeatureClassName(FdoString* value) = 0; 00075 00076 /// \brief 00077 /// Gets the filter as a filter tree. 00078 /// 00079 /// \return 00080 /// Returns the filter object 00081 /// 00082 FDO_API virtual FdoFilter* GetFilter() = 0; 00083 00084 /// \brief 00085 /// Sets the filter as a Filter tree. 00086 /// 00087 /// \param value 00088 /// Input the filter object 00089 /// 00090 /// \return 00091 /// Returns nothing 00092 /// 00093 FDO_API virtual void SetFilter(FdoFilter* value) = 0; 00094 00095 /// \brief 00096 /// Sets the filter as a Filter tree. 00097 /// 00098 /// \param value 00099 /// Input the filter expression string 00100 /// 00101 /// \return 00102 /// Returns nothing 00103 /// 00104 FDO_API virtual void SetFilter(FdoString* value) = 0; 00105 }; 00106 #endif 00107 00108
Comments or suggestions? Send us feedback. |