DWF6PackageVersionExtension.h

Go to the documentation of this file.
00001 //
00002 //  Copyright (c) 1996-2006 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_DWF6_PACKAGE_VERSION_EXTENSION_H
00021 #define _DWFTK_DWF6_PACKAGE_VERSION_EXTENSION_H
00022 
00027 
00028 #ifndef DWFTK_READ_ONLY
00029 
00030 
00031 #include "dwfcore/String.h"
00032 #include "dwfcore/Exception.h"
00033 using namespace DWFCore;
00034 
00035 #include "dwf/Toolkit.h"
00036 #include "dwf/package/utility/DWFPackageFileDescriptor.h"
00037 
00038 namespace DWFCore
00039 {
00040 class DWFXMLSerializer;
00041 }
00042 
00043 
00044 namespace DWFToolkit
00045 {
00046 
00047 //
00048 // fwd decl
00049 //
00050 class DWFInterface;
00051 class DWFSection;
00052 class DWFGlobalSection;
00053 class DWF6PackageWriter;
00054 class DWFPackageFileDescriptor;
00055 
00056 
00081 class DWF6PackageVersionExtension _DWFTK_EXPORT_API_MEMORY_CONTROL_BASE
00082 {
00083 
00084 public:
00085 
00091     _DWFTK_API
00092     virtual ~DWF6PackageVersionExtension()
00093         throw(){;}
00094 
00101     _DWFTK_API
00102     virtual unsigned short major()
00103         throw() = 0;
00104 
00111     _DWFTK_API
00112     virtual unsigned short minor()
00113         throw() = 0;
00114 
00118     _DWFTK_API
00119     virtual bool addSection( DWFSection*   pSection,
00120                              DWFInterface* pInterface = NULL )
00121         throw( DWFException ) = 0;
00122 
00126     _DWFTK_API
00127     virtual bool addGlobalSection( DWFGlobalSection* pSection )
00128         throw( DWFException ) = 0;
00129 
00133     _DWFTK_API
00134     virtual bool write( const DWFString& zSourceProductVendor = /*NOXLATE*/L"",
00135                         const DWFString& zSourceProductName = /*NOXLATE*/L"",
00136                         const DWFString& zSourceProductVersion = /*NOXLATE*/L"",
00137                         const DWFString& zDWFProductVendor = /*NOXLATE*/L"",
00138                         const DWFString& zDWFProductVersion = /*NOXLATE*/L"",
00139                         DWFZipFileDescriptor::teFileMode eCompressionMode = DWFZipFileDescriptor::eZipSmallest )
00140         throw( DWFException ) = 0;
00141 
00142 
00154     _DWFTK_API
00155     virtual void prewriteManifest( DWF6PackageWriter&           rPackageWriter, 
00156                                    DWFPackageFileDescriptor&    rPackageDescriptor,
00157                                    DWFXMLSerializer&            rXMLSerializer,
00158                                    const DWFString&             rPackagePassword )
00159         throw( DWFException ) = 0;
00160 
00172     _DWFTK_API
00173     virtual void postwriteManifest( DWF6PackageWriter&           rPackageWriter, 
00174                                     DWFPackageFileDescriptor&    rPackageDescriptor,
00175                                     DWFXMLSerializer&            rXMLSerializer,
00176                                     const DWFString&             rPackagePassword )
00177         throw( DWFException ) = 0;
00178 
00190     _DWFTK_API
00191     virtual void postwriteSections( DWF6PackageWriter&           rPackageWriter, 
00192                                     DWFPackageFileDescriptor&    rPackageDescriptor,
00193                                     DWFXMLSerializer&            rXMLSerializer,
00194                                     const DWFString&             rPackagePassword )
00195         throw( DWFException ) = 0;
00196 
00197 protected:
00198 
00204     _DWFTK_API
00205     DWF6PackageVersionExtension()
00206         throw(){;}
00207 };
00208 
00209 }
00210 
00211 
00212 #endif
00213 #endif
00214 

Generated on Tue Jan 6 22:40:03 2009 for Autodesk DWF Toolkit by  doxygen 1.4.5