FDO API Reference | Feature Data Objects |
00001 #ifndef _GEOMETRYVALUE_H_ 00002 #define _GEOMETRYVALUE_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/Expression/LiteralValue.h> 00028 00029 /// \brief 00030 /// The FdoGeometryValue class derives from FdoLiteralValue and represents a geometric value. 00031 class FdoGeometryValue : public FdoLiteralValue 00032 { 00033 protected: 00034 /// \cond DOXYGEN-IGNORE 00035 /// Constructs a default instance of an FdoGeometryValue with a value of null. 00036 FdoGeometryValue(); 00037 00038 /// Constructs an instance of an FdoGeometryValue using the specified arguments. 00039 FdoGeometryValue(FdoByteArray* geometry); 00040 00041 /// Default destructor for GeometryValue. 00042 virtual ~FdoGeometryValue(); 00043 00044 virtual void Dispose(); 00045 /// \endcond 00046 00047 public: 00048 00049 /// \brief 00050 /// Constructs a default instance of an FdoGeometryValue with a value of null. 00051 /// 00052 /// \return 00053 /// Returns FdoGeometryValue 00054 /// 00055 FDO_API static FdoGeometryValue* Create(); 00056 00057 /// \brief 00058 /// Constructs an instance of an FdoGeometryValue using the specified arguments. 00059 /// 00060 /// \param geometry 00061 /// Input geometry byte array 00062 /// 00063 /// \return 00064 /// Returns FdoGeometryValue 00065 /// 00066 FDO_API static FdoGeometryValue* Create(FdoByteArray* geometry); 00067 00068 /// \brief 00069 /// Returns true if the FdoGeometryValue represents a null value. 00070 /// 00071 /// \return 00072 /// Returns true if null geometry 00073 /// 00074 FDO_API bool IsNull(); 00075 00076 /// \brief 00077 /// Gets the geometry as a byte array. The geometry is expected to be 00078 /// encoded in Autodesk Well-Known Binary format. 00079 /// 00080 /// \return 00081 /// Returns geometry in FGF format 00082 /// 00083 FDO_API FdoByteArray* GetGeometry(); 00084 00085 /// \brief 00086 /// Sets the geometry as a byte array. The geometry is expected to be 00087 /// encoded in Autodesk Well-Known Binary format. 00088 /// 00089 /// \param value 00090 /// Input geometry in FGF format 00091 /// 00092 /// \return 00093 /// Returns nothing 00094 /// 00095 FDO_API void SetGeometry(FdoByteArray* value); 00096 00097 /// \brief 00098 /// Sets the FdoGeometryValue to a null value. 00099 /// 00100 /// \return 00101 /// Returns nothing 00102 /// 00103 FDO_API void SetNullValue(); 00104 00105 /// \brief 00106 /// Overrides FdoExpression.Process to pass the FdoGeometryValue to the 00107 /// appropriate expression processor operation. 00108 /// 00109 /// \param p 00110 /// Input the expression processor interface 00111 /// 00112 /// \return 00113 /// Returns nothing 00114 /// 00115 FDO_API void Process(FdoIExpressionProcessor* p); 00116 00117 /// \brief 00118 /// Returns the well defined text representation of this expression. 00119 /// 00120 /// \return 00121 /// Returns the well defined text string 00122 /// 00123 FDO_API FdoString* ToString(); 00124 00125 protected: 00126 FdoByteArray* m_geometry; 00127 }; 00128 #endif 00129 00130
Comments or suggestions? Send us feedback. |