FDO API Reference | Feature Data Objects |
00001 #ifndef _PROPERTYVALUECONSTRAINT_H_ 00002 #define _PROPERTYVALUECONSTRAINT_H_ 00003 00004 // 00005 // Copyright (C) 2004-2006 Autodesk, Inc. 00006 // 00007 // This library is free software; you can redistribute it and/or 00008 // modify it under the terms of version 2.1 of the GNU Lesser 00009 // General Public License as published by the Free Software Foundation. 00010 // 00011 // This library is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 // Lesser General Public License for more details. 00015 // 00016 // You should have received a copy of the GNU Lesser General Public 00017 // License along with this library; if not, write to the Free Software 00018 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00019 // 00020 00021 #ifdef _WIN32 00022 #pragma once 00023 #endif 00024 00025 #include <FdoStd.h> 00026 #include <Fdo/Schema/PropertyValueConstraintType.h> 00027 #include <Fdo/Schema/SchemaException.h> 00028 00029 class FdoSchemaMergeContext; 00030 00031 /// \brief 00032 /// FdoPropertyValueConstraint is an abstract class that derives from FdoIDisposable. 00033 /// FdoPropertyValueConstraint is the base class of FdoPropertyValueConstraintRange 00034 /// and FdoPropertyValueConstraintList. 00035 class FdoPropertyValueConstraint : public FdoIDisposable 00036 { 00037 00038 public: 00039 /// \brief 00040 /// Abstract operation that must be implemented by derived classes to return the constraint type. 00041 /// 00042 /// \return 00043 /// Returns the constraint type 00044 /// 00045 FDO_API virtual FdoPropertyValueConstraintType GetConstraintType() = 0; 00046 00047 /// \cond DOXYGEN-IGNORE 00048 // Public non-API functions for XML and Schema Merge support 00049 00050 // Update this value constraint from the given value constraint. 00051 virtual void Set( FdoPropertyValueConstraint* /*pConstraint*/, FdoString* /*parentName*/, FdoSchemaMergeContext* /*pContext*/ ) 00052 { 00053 } 00054 00055 // \brief 00056 // Compares this value constraint with another one. 00057 // 00058 // \param value 00059 // The Property Value constraint to compare with 00060 // 00061 // \return 00062 // Returns true if this Property Value Constraint is the same as pConstraint 00063 // (all members have the same values). 00064 virtual bool Equals( FdoPropertyValueConstraint* pConstraint ) = 0; 00065 /// \endcond 00066 }; 00067 00068 #endif 00069 00070
Comments or suggestions? Send us feedback. |