00001 #ifndef FDO_RDBMSOVPROPERTYDEFINITIONCOLLECTION_H 00002 #define FDO_RDBMSOVPROPERTYDEFINITIONCOLLECTION_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 /// FdoRdbms.lib 00022 00023 #include <Fdo/Commands/Schema/PhysicalElementMappingCollection.h> 00024 #include <Rdbms/Override/RdbmsOvPropertyDefinition.h> 00025 00026 /// \cond DOXYGEN-IGNORE 00027 ///<summary>Concrete class defining physical schema overrides for a collection of property 00028 ///definitions.</summary> 00029 class FdoRdbmsOvPropertyDefinitionCollection : public FdoPhysicalElementMappingCollection<FdoRdbmsOvPropertyDefinition> 00030 { 00031 public: 00032 ///<summary>Constructs a default instance of an FdoRdbmsOvPropertyDefinitionCollection</summary> 00033 /// <returns>Returns FdoRdbmsOvPropertyDefinitionCollection</returns> 00034 static FdoRdbmsOvPropertyDefinitionCollection* Create(); 00035 00036 ///<summary>Constructs an instance of an FdoRdbmsOvPropertyDefinitionCollection using the specified arguments</summary> 00037 /// <param name="parent">Input parent</param> 00038 /// <returns>Returns FdoRdbmsOvPropertyDefinitionCollection</returns> 00039 static FdoRdbmsOvPropertyDefinitionCollection* Create(FdoPhysicalElementMapping* parent); 00040 00041 protected: 00042 FdoRdbmsOvPropertyDefinitionCollection(); 00043 FdoRdbmsOvPropertyDefinitionCollection(FdoPhysicalElementMapping* parent); 00044 virtual ~FdoRdbmsOvPropertyDefinitionCollection(); 00045 virtual void Dispose(); 00046 }; 00047 00048 ///<summary>FdoRdbmsOvPropertiesP is a FdoPtr on FdoRdbmsOvPropertyDefinitionCollection, provided for convenience.</summary> 00049 typedef FdoPtr<FdoRdbmsOvPropertyDefinitionCollection> FdoRdbmsOvPropertiesP; 00050 /// \endcond 00051 00052 ///<summary>Collection of property overrides for an RDBMS-type provider. 00053 ///Members cannot be added to or removed from this collection. 00054 ///</summary> 00055 class FdoRdbmsOvReadOnlyPropertyDefinitionCollection : public FdoReadOnlyNamedCollection<FdoRdbmsOvPropertyDefinition,FdoRdbmsOvPropertyDefinitionCollection> 00056 { 00057 /// \cond DOXYGEN-IGNORE 00058 public: 00059 ///<summary>Constructs a default of an FdoRdbmsReadOnlyOvPropertyDefinitionCollection</summary> 00060 /// <returns>Returns FdoRdbmsOvReadOnlyPropertyDefinitionCollection</returns> 00061 static FdoRdbmsOvReadOnlyPropertyDefinitionCollection* Create(); 00062 00063 ///<summary>Constructs an instance of an FdoRdbmsReadOnlyOvPropertyDefinitionCollection using the specified arguments</summary> 00064 /// <param name="parent">Input parent</param> 00065 /// <returns>Returns FdoRdbmsOvReadOnlyPropertyDefinitionCollection</returns> 00066 static FdoRdbmsOvReadOnlyPropertyDefinitionCollection* Create(FdoRdbmsOvPropertyDefinitionCollection* baseCollection); 00067 00068 protected: 00069 FdoRdbmsOvReadOnlyPropertyDefinitionCollection(); 00070 FdoRdbmsOvReadOnlyPropertyDefinitionCollection(FdoRdbmsOvPropertyDefinitionCollection* baseCollection); 00071 virtual ~FdoRdbmsOvReadOnlyPropertyDefinitionCollection(); 00072 virtual void Dispose(); 00073 /// \endcond 00074 }; 00075 00076 ///<summary>FdoRdbmsOvReadOnlyPropertiesP is a FdoPtr on FdoRdbmsOvReadOnlyPropertyDefinitionCollection, provided for convenience.</summary> 00077 typedef FdoPtr<FdoRdbmsOvReadOnlyPropertyDefinitionCollection> FdoRdbmsOvReadOnlyPropertiesP; 00078 00079 00080 #endif 00081