merge_control.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 
00022 
00023 #if !defined MERGE_CONTROL_HEADER
00024 #define MERGE_CONTROL_HEADER
00025 
00026 #include "whiptk/whipcore.h"
00027 #include "whiptk/attribute.h"
00028 
00029 class WT_File;
00030 
00035 
00036 
00042 class WHIPTK_API WT_Merge_Control : public WT_Attribute
00043 {
00044         friend class WT_Rendition;
00045         friend class WT_PDFMerge_Control;
00046         friend class WT_W2D_Class_Factory;
00047         friend class WT_Opcode;
00048 
00049 public:
00050 
00052     enum WT_Merge_Format
00053     {
00054         Opaque      =  WD_EXAO_SET_OPAQUE, 
00055         Merge       =  WD_EXAO_SET_MERGE, 
00056         Transparent =  WD_EXAO_SET_TRANSPARENT 
00057     };
00058 
00059 private:
00060     WT_Merge_Format   m_merge;
00061 
00062 public:
00063 
00065 
00066     WT_Merge_Control()
00067     {     m_merge = Opaque;     }
00068 
00070     WT_Merge_Control(WT_Merge_Format merge)
00071     {   m_merge = merge;    }
00072 
00074         WT_Merge_Control(WT_Merge_Control const& merge_control)
00075         {
00076                 *this = merge_control;
00077         }
00078 
00079         virtual ~WT_Merge_Control()
00080         {}
00082 public:
00084     WT_Merge_Control::WT_Merge_Format  get_merge_control() const;
00085     void                               set_merge_control(WT_Merge_Control::WT_Merge_Format merge);
00087 
00089     WT_ID            object_id() const;
00090     WT_Result        materialize(WT_Opcode const & opcode, WT_File & file);
00091     WT_Result        process(WT_File & file);
00092     WT_Result        skip_operand(WT_Opcode const & opcode, WT_File & file);
00093     WT_Result        serialize (WT_File & file) const;
00094     WT_Result        sync (WT_File & file) const;
00095     WT_Boolean       operator== (WT_Attribute const & attrib) const;
00097 
00099 
00101     static WT_Result default_process(
00102         WT_Merge_Control & item, 
00103         WT_File & file 
00104         );
00105 };
00106 
00108 
00109 #endif // MERGE_CONTROL_HEADER

Generated on Tue Jan 6 22:41:13 2009 for Autodesk DWF Whip 2D Toolkit by  doxygen 1.4.5