Autodesk FDO Provider for SQL Server API Reference

SQLServer Provider API

API Reference Autodesk FDO Provider for SQL Server

SqlServerOvObjectPropertyDefinition.h

Go to the documentation of this file.
00001 #ifndef FDO_SqlServerOVOBJECTPROPERTYDEFINITION_H
00002 #define FDO_SqlServerOVOBJECTPROPERTYDEFINITION_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 #include <Fdo/Commands/Schema/PhysicalElementMapping.h>
00033 #include <Rdbms/Override/RdbmsOvObjectPropertyDefinition.h>
00034 #include <Rdbms/Override/SqlServer/SqlServerOv.h>
00035 #include <Rdbms/Override/SqlServer/SqlServerOvPropertyMappingDefinition.h>
00036 #include <Rdbms/Override/SqlServer/SqlServerOvPropertyDefinition.h>
00037 #include <Rdbms/Override/SqlServer/SqlServerOvPropertyMappingClass.h>
00038 #include <Rdbms/Override/SqlServer/SqlServerOvPropertyMappingConcrete.h>
00039 #include <Rdbms/Override/SqlServer/SqlServerOvPropertyMappingSingle.h>
00040 
00041 /// \brief
00042 /// Concrete class defining physical schema overrides for an object property definition.
00043 class FdoSqlServerOvObjectPropertyDefinition : public FdoRdbmsOvObjectPropertyDefinition, public FdoSqlServerOvPropertyDefinition
00044 {
00045 public:
00046     /// \brief
00047     /// Constructs a default of an FdoSqlServerOvObjectPropertyDefinition
00048     /// 
00049     /// \return
00050     /// Returns FdoSqlServerOvObjectPropertyDefinition
00051     /// 
00052     FDOSQLSERVER_OV_API static FdoSqlServerOvObjectPropertyDefinition* Create();
00053 
00054     /// \brief
00055     /// Constructs an instance of an FdoSqlServerOvObjectPropertyDefinition using the specified arguments
00056     /// 
00057     /// \param name 
00058     /// Input name
00059     /// 
00060     /// \return
00061     /// Returns FdoSqlServerOvObjectPropertyDefinition
00062     /// 
00063     FDOSQLSERVER_OV_API static FdoSqlServerOvObjectPropertyDefinition* Create(FdoString* name);
00064 
00065     /// \brief
00066     /// Gets the mapping definition
00067     /// 
00068     /// \return
00069     /// Returns the mapping definition
00070     /// 
00071     FDOSQLSERVER_OV_API FdoSqlServerOvPropertyMappingDefinition* GetMappingDefinition();
00072 
00073     /// \brief
00074     /// Sets the mapping definition
00075     /// 
00076     /// \return
00077     /// Returns nothing
00078     /// 
00079     FDOSQLSERVER_OV_API void SetMappingDefinition(FdoSqlServerOvPropertyMappingDefinition* propertyMappingDefinition);
00080 
00081 protected:
00082     FdoSqlServerOvObjectPropertyDefinition();
00083     FdoSqlServerOvObjectPropertyDefinition(FdoString* name);
00084     virtual ~FdoSqlServerOvObjectPropertyDefinition();
00085     virtual void Dispose();
00086 
00087     /// Create and optionally attach a Single table property mapping.
00088     virtual FdoRdbmsOvPropertyMappingSingle* CreateSingleMapping(
00089         bool attach
00090     );
00091 
00092     /// Create and optionally attach a Class table property mapping.
00093     virtual FdoRdbmsOvPropertyMappingClass* CreateClassMapping(
00094         bool attach
00095     );
00096 
00097     /// Create and optionally attach a Concrete table property mapping.
00098     virtual FdoRdbmsOvPropertyMappingConcrete* CreateConcreteMapping(
00099         bool attach
00100     );
00101 
00102 private:
00103 };
00104 
00105 
00106 /// \brief
00107 /// FdoSqlServerOvObjectPropertyP is a FdoPtr on FdoSqlServerOvObjectPropertyDefinition, provided for convenience.
00108 typedef FdoPtr<FdoSqlServerOvObjectPropertyDefinition> FdoSqlServerOvObjectPropertyP;
00109 
00110 #endif
00111 
00112 

Comments?