Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages | Examples

EPlotSection.h

Go to the documentation of this file.
00001 //
00002 //  Copyright (c) 1996-2005 by Autodesk, Inc.
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 CORRECTNESS
00008 //  OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE IT. AUTODESK
00009 //  PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY DISCLAIMS ANY
00010 //  LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL DAMAGES FOR ERRORS,
00011 //  OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00012 //
00013 //  Use, duplication, or disclosure by the U.S. Government is subject to
00014 //  restrictions set forth in FAR 52.227-19 (Commercial Computer Software
00015 //  Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) (Rights in Technical
00016 //  Data and Computer Software), as applicable.
00017 //
00018 
00019 
00020 #ifndef _DWFTK_EPLOT_SECTION_H
00021 #define _DWFTK_EPLOT_SECTION_H
00022 
00027 
00028 
00029 #include "dwfcore/STL.h"
00030 #include "dwfcore/SkipList.h"
00031 using namespace DWFCore;
00032 
00033 #include "dwf/Toolkit.h"
00034 #include "dwf/package/Section.h"
00035 #include "dwf/package/reader/EPlotSectionDescriptorReader.h"
00036 #include "dwf/package/writer/PackageWriter.h"
00037 
00038 
00039 namespace DWFToolkit
00040 {
00041 
00052 class DWFEPlotSection : public DWFSection
00053                       , public DWFEPlotSectionDescriptorReader
00054 {
00055 
00056 public:
00057 
00061     typedef vector<DWFEPlotSection*>                                            tList;
00065     typedef DWFWCharKeySkipList<DWFEPlotSection*>                               tMap;
00069     typedef multimap<const wchar_t*, DWFEPlotSection*, tDWFWCharCompareLess>    tMultiMap;
00070 
00071 public:
00072 
00078     class Factory : public DWFSection::Factory
00079     {
00080 
00081     public:
00082 
00088         _DWFTK_API
00089         Factory()
00090             throw();
00091 
00097         _DWFTK_API
00098         virtual ~Factory()
00099             throw();
00100 
00104         _DWFTK_API
00105         virtual DWFSection* build( const DWFString&     zName,
00106                                    const DWFString&     zTitle,
00107                                    DWFPackageReader*    pPackageReader )
00108             throw( DWFException );
00109     };
00110 
00111 public:
00112 
00127     _DWFTK_API
00128     DWFEPlotSection( const DWFString&  zName,
00129                      const DWFString&  zTitle,
00130                      DWFPackageReader* pPackageReader )
00131         throw();
00132 
00149     _DWFTK_API
00150     DWFEPlotSection( const DWFString& zTitle,
00151                      const DWFString& zObjectID,
00152                      double           nPlotOrder,
00153                      const DWFSource& rSource,
00154                      unsigned int     nColorARGB,
00155                      const DWFPaper*  pPaper )
00156         throw();
00157 
00163     _DWFTK_API
00164     virtual ~DWFEPlotSection()
00165         throw();
00166 
00170     _DWFTK_API
00171     unsigned int color() const
00172         throw()
00173     {
00174         return _nColorARGB;
00175     }
00176 
00183     _DWFTK_API
00184     DWFPaper* paper() const
00185         throw()
00186     {
00187         return _pPaper;
00188     }
00189 
00204     _DWFTK_API
00205     DWFInterface* buildInterface()
00206         throw( DWFException );
00207 
00233     _DWFTK_API
00234     const DWFResource& readDescriptor( DWFSectionDescriptorReader* pSectionDescriptorReader = NULL ) const
00235         throw( DWFException );
00236 
00237 #ifndef DWFTK_READ_ONLY
00238 
00242     _DWFTK_API
00243     void serializeXML( DWFXMLSerializer& rSerializer, unsigned int nFlags )
00244         throw( DWFException );
00245 
00246 #endif
00247 
00251     _DWFTK_API
00252     const char* provideName( const char* zName )
00253         throw();
00254 
00258     _DWFTK_API
00259     const char* provideObjectID( const char* zObjectID )
00260         throw();
00261 
00265     _DWFTK_API
00266     double provideVersion( double nVersion )
00267         throw();
00268 
00272     _DWFTK_API
00273     double providePlotOrder( double nPlotOrder )
00274         throw();
00275 
00279     _DWFTK_API
00280     unsigned int provideColor( unsigned int nColorARGB )
00281         throw();
00282 
00286     _DWFTK_API
00287     DWFPaper* providePaper( DWFPaper* pPaper )
00288         throw();
00289 
00293     _DWFTK_API
00294     DWFProperty* provideProperty( DWFProperty* pProperty )
00295         throw();
00296 
00300     _DWFTK_API
00301     DWFResource* provideResource( DWFResource* pResource )
00302         throw();
00303 
00307     _DWFTK_API
00308     DWFFontResource* provideFontResource( DWFFontResource* pResource )
00309         throw();
00310 
00314     _DWFTK_API
00315     DWFGraphicResource* provideGraphicResource( DWFGraphicResource* pResource )
00316         throw();
00317 
00321     _DWFTK_API
00322     DWFImageResource* provideImageResource( DWFImageResource* pResource )
00323         throw();
00324 
00325 private:
00326 
00327     DWFPaper*       _pPaper;
00328     unsigned int    _nColorARGB;
00329 
00330 private:
00331 
00332     DWFEPlotSection( const DWFEPlotSection& );
00333     DWFEPlotSection& operator=( const DWFEPlotSection& );
00334 };
00335 
00336 }
00337 
00338 #endif

Generated on Tue May 17 12:38:50 2005 for Autodesk DWF Toolkit by  doxygen 1.4.1