00001 /*
00002 * (C) Copyright 2004 by Autodesk, Inc. All Rights Reserved.
00003 *
00004 * By using this code, you are agreeing to the terms and conditions of
00005 * the License Agreement included in the documentation for this code.
00006 *
00007 * AUTODESK MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE
00008 * CORRECTNESS OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE
00009 * IT. AUTODESK PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY
00010 * DISCLAIMS ANY LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL
00011 * DAMAGES FOR ERRORS, OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00012 *
00013 * Use, duplication, or disclosure by the U.S. Government is subject
00014 * to restrictions set forth in FAR 52.227-19 (Commercial Computer
00015 * Software Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
00016 * (Rights in Technical Data and Computer Software), as applicable.
00017 *
00018 */
00019 #ifndef FDORFPRASTERDEFINITION_H
00020 #define FDORFPRASTERDEFINITION_H
00021
00022 #ifdef _WIN32
00023 #pragma once
00024 #endif //_WIN32
00025
00026 class FdoRfpRasterLocationCollection;
00027
00028 /// \brief
00029 ///
00030 /// The FdoRfpRasterDefinition class contains a collection of raster locations.
00031 class FdoRfpRasterDefinition : public FdoPhysicalElementMapping
00032 {
00033 typedef FdoPhysicalElementMapping BaseType;
00034 friend class FdoRfpClassDefinition;
00035
00036 public:
00037 /// \brief
00038 /// Constructs a new Raster Definition.
00039 ///
00040 /// \return
00041 /// Returns the newly created FdoRfpRasterDefinition instance.
00042 ///
00043 FDORFP_API static FdoRfpRasterDefinition* Create();
00044
00045 /// \brief
00046 /// Gets the collection of raster locations.
00047 ///
00048 /// \return
00049 /// Returns the collection of raster locations.
00050 ///
00051 FDORFP_API FdoRfpRasterLocationCollection* GetLocations();
00052
00053 /// \cond DOXYGEN-IGNORE
00054
00055 /// XML Serialization functions, not part of supported API.
00056 FDORFP_API virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs);
00057 FDORFP_API virtual FdoXmlSaxHandler* XmlStartElement(
00058 FdoXmlSaxContext* context,
00059 FdoString* uri,
00060 FdoString* name,
00061 FdoString* qname,
00062 FdoXmlAttributeCollection* atts
00063 );
00064 FDORFP_API virtual FdoBoolean XmlEndElement(FdoXmlSaxContext* context, FdoString* uri, FdoString* name, FdoString* qname);
00065 FDORFP_API void _writeXml( FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags );
00066
00067 protected:
00068 FDORFP_API FdoRfpRasterDefinition(void);
00069 FDORFP_API virtual ~FdoRfpRasterDefinition(void);
00070 void Dispose(void);
00071
00072 private:
00073 FdoPtr<FdoRfpRasterLocationCollection> m_rasterLocations;
00074
00075 /// \endcond
00076
00077 };
00078
00079 /// \brief
00080 /// FdoRfpRasterDefinitionP is a FdoPtr on FdoRfpRasterDefinition, provided for convenience.
00081 typedef FdoPtr<FdoRfpRasterDefinition> FdoRfpRasterDefinitionP;
00082
00083 #endif
00084
00085