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

EPlotSectionDescriptorReader.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 #ifndef _DWFTK_EPLOT_SECTION_DESCRIPTOR_READER_H
00020 #define _DWFTK_EPLOT_SECTION_DESCRIPTOR_READER_H
00021 
00026 
00027 
00028 #include "dwfcore/Core.h"
00029 using namespace DWFCore;
00030 
00031 #include "dwf/package/Paper.h"
00032 #include "dwf/package/Property.h"
00033 #include "dwf/package/FontResource.h"
00034 #include "dwf/package/GraphicResource.h"
00035 #include "dwf/package/reader/SectionDescriptorReader.h"
00036 
00037 
00038 namespace DWFToolkit
00039 {
00040 
00070 class DWFEPlotSectionDescriptorReader : public DWFSectionDescriptorReader
00071 {
00072 
00073 public:
00074 
00082     typedef enum
00083     {
00087         eProvideNone            =   0x000,
00088 
00092         eProvideName            =   0x001,
00096         eProvideVersion         =   0x002,
00100         eProvidePlotOrder       =   0x004,
00104         eProvideColor           =   0x008,
00108         eProvideObjectID        =   0x010,
00109 
00113         eProvidePaper           =   0x020,
00117         eProvideProperties      =   0x040,
00121         eProvideResources       =   0x080,
00122 
00126         eProvideUntypedResource =   0x100,
00130         eProvideFontResource    =   0x200,
00134         eProvideGraphicResource =   0x400,
00138         eProvideImageResource   =   0x800,
00139 
00143         eProvideAttributes      =   0x00F,
00147         eProvideElements        =   0xFF0,
00148 
00152         eProvideAll             =   0xFFF
00153 
00154     } teProviderType;
00155 
00156 public:
00157 
00165     _DWFTK_API
00166     DWFEPlotSectionDescriptorReader( DWFPackageReader*  pPackageReader = NULL,
00167                                      unsigned int       nProviderFlags = eProvideAll )
00168         throw();
00169 
00175     _DWFTK_API
00176     virtual ~DWFEPlotSectionDescriptorReader()
00177         throw();
00178 
00182     _DWFTK_API
00183     DWFEPlotSectionDescriptorReader* filter() const
00184         throw();
00185 
00189     _DWFTK_API
00190     void setFilter( DWFEPlotSectionDescriptorReader* pFilter )
00191         throw();
00192 
00200     _DWFTK_API
00201     virtual const char* provideName( const char* zName )
00202         throw();
00203 
00211     _DWFTK_API
00212     virtual const char* provideObjectID( const char* zObjectID )
00213         throw();
00214 
00222     _DWFTK_API
00223     virtual double provideVersion( double nVersion )
00224         throw();
00225 
00233     _DWFTK_API
00234     virtual double providePlotOrder( double nPlotOrder )
00235         throw();
00236 
00244     _DWFTK_API
00245     virtual unsigned int provideColor( unsigned int nColorARGB )
00246         throw();
00247 
00256     _DWFTK_API
00257     virtual DWFPaper* providePaper( DWFPaper* pPaper )
00258         throw();
00259 
00268     _DWFTK_API
00269     virtual DWFProperty* provideProperty( DWFProperty* pProperty )
00270         throw();
00271 
00280     _DWFTK_API
00281     virtual DWFResource* provideResource( DWFResource* pResource )
00282         throw();
00283 
00292     _DWFTK_API
00293     virtual DWFFontResource* provideFontResource( DWFFontResource* pResource )
00294         throw();
00295 
00304     _DWFTK_API
00305     virtual DWFGraphicResource* provideGraphicResource( DWFGraphicResource* pResource )
00306         throw();
00307 
00316     _DWFTK_API
00317     virtual DWFImageResource* provideImageResource( DWFImageResource* pResource )
00318         throw();
00319 
00323     _DWFTK_API
00324     void notifyStartElement( const char*   zName,
00325                              const char**  ppAttributeList )
00326         throw();
00327 
00331     _DWFTK_API
00332     void notifyEndElement( const char*     zName )
00333         throw();
00334 
00338     _DWFTK_API
00339     void notifyStartNamespace( const char* zPrefix,
00340                                const char* zURI )
00341         throw();
00342 
00346     _DWFTK_API
00347     void notifyEndNamespace( const char*   zPrefix )
00348         throw();
00349 
00350 protected:
00351 
00355     void _provideAttributes( const char**   ppAttributeList )
00356         throw();
00357 
00358 private:
00359 
00360     void _provideName( const char* zName )
00361         throw();
00362 
00363     void _provideObjectID( const char* zObjectID )
00364         throw();
00365 
00366     void _provideVersion( double nVersion )
00367         throw();
00368 
00369     void _providePlotOrder( double nPlotOrder )
00370         throw();
00371 
00372     void _provideColor( unsigned int nColorARGB )
00373         throw();
00374 
00375     void _providePaper( DWFPaper* pPaper )
00376         throw();
00377 
00378     void _provideProperty( DWFProperty* pProperty )
00379         throw();
00380 
00381     void _provideResource( DWFResource* pResource )
00382         throw();
00383 
00384     void _provideFontResource( DWFFontResource* pResource )
00385         throw();
00386 
00387     void _provideGraphicResource( DWFGraphicResource* pResource )
00388         throw();
00389 
00390     void _provideImageResource( DWFImageResource* pResource )
00391         throw();
00392 
00393 private:
00394 
00395     unsigned int _nProviderFlags;
00396     unsigned int _nCurrentCollectionProvider;
00397 
00398     DWFResource* _pCurrentResource;
00399     DWFEPlotSectionDescriptorReader* _pFilter;
00400 
00401 private:
00402 
00403     //
00404     // Not implemented
00405     //
00406 
00407     DWFEPlotSectionDescriptorReader( const DWFEPlotSectionDescriptorReader& );
00408     DWFEPlotSectionDescriptorReader& operator=( const DWFEPlotSectionDescriptorReader& );
00409 };
00410 
00411 }
00412 
00413 #endif

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