whiperrs.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 #if !defined WHIPERRS_HEADER
00020 #define WHIPERRS_HEADER
00021 
00025 
00026 #include "whiptk/whipcore.h"
00027 
00028 #define alter
00029 #define WT_ENUM_CLASS_FUNCTIONS(Classname)                                                              \
00030   protected:                                                                                            \
00031                                                                      \
00032     Enum            m_value;                                                                            \
00033   public:                                                                                               \
00034                                                                 \
00035     Classname() : m_value ((Enum) 0) {}                                                                 \
00036                                              \
00037     Classname(Classname const & in) : m_value (in.m_value) {}                                           \
00038                                           \
00039     Classname(Enum in) : m_value (in) {}                                                                \
00040                                                                \
00041     operator int() const {return (int) m_value;}                                                        \
00042                      \
00043     Classname const & operator=  (Classname const & in) alter {m_value = in.m_value; return *this;}     \
00044                                      \
00045     Classname const & operator=  (Classname::Enum in)   alter {m_value = in; return *this;}             \
00046                              \
00047     WT_Boolean        operator== (Classname const & in) const {return m_value == in.m_value;}           \
00048                                        \
00049     WT_Boolean        operator== (Classname::Enum in)   const {return m_value == in;}                   \
00050                            \
00051     WT_Boolean        operator!= (Classname const & in) const {return m_value != in.m_value;}           \
00052                                      \
00053     WT_Boolean        operator!= (Classname::Enum in)   const {return m_value != in;}                  //
00054 
00055 #define WT_ENUM_BIT_CLASS_FUNCTIONS(Classname)                                                          \
00056     WT_ENUM_CLASS_FUNCTIONS (Classname)                                                                 \
00057  \
00058     Classname const & operator|= (Classname const & in)  alter {((int &)m_value) |= in.m_value;         \
00059                                                                 return *this;}                          \
00060  \
00061     Classname const & operator|= (Classname::Enum in)    alter {((int &)m_value) |= in; return *this;}  \
00062  \
00063     Classname const & operator&= (Classname const & in)  alter {((int &)m_value) &= in.m_value;         \
00064                                                                 return *this;}                          \
00065  \
00066     Classname const & operator&= (Classname::Enum in)    alter {((int &)m_value) &= in; return *this;}  \
00067  \
00068     Classname const & operator^= (Classname const & in)  alter {((int &)m_value) ^= in.m_value;         \
00069                                                                 return *this;}                          \
00070  \
00071     Classname const & operator^= (Classname::Enum in)    alter {((int &)m_value) ^= in; return *this;}  \
00072  \
00073     Classname::Enum   operator|  (Classname const & in)  const {return (Enum)(m_value | in.m_value);}   \
00074  \
00075     Classname::Enum   operator|  (Classname::Enum in)    const {return (Enum)(m_value | in);}           \
00076  \
00077     Classname::Enum   operator&  (Classname const & in)  const {return (Enum)(m_value & in.m_value);}   \
00078  \
00079     Classname::Enum   operator&  (Classname::Enum in)    const {return (Enum)(m_value & in);}           \
00080  \
00081     Classname::Enum   operator^  (Classname const & in)  const {return (Enum)(m_value ^ in.m_value);}   \
00082  \
00083     Classname::Enum   operator^  (Classname::Enum in)    const {return (Enum)(m_value ^ in);}          //
00084 
00085 
00087 
00105 class WHIPTK_API WT_Result
00106 {
00107     public:
00109         enum Enum {
00110             Success,
00111             Waiting_For_Data,
00112             Corrupt_File_Error,
00113             End_Of_File_Error,
00114             Unknown_File_Read_Error,
00115             Out_Of_Memory_Error,
00116             File_Already_Open_Error,
00117             No_File_Open_Error,
00118             File_Write_Error,
00119             File_Open_Error,
00120             Internal_Error,
00121             Not_A_DWF_File_Error,
00122             User_Requested_Abort,
00123             DWF_Version_Higher_Than_Toolkit,
00124             Unsupported_DWF_Opcode,
00125             Unsupported_DWF_Extension_Error,
00126             End_Of_DWF_Opcode_Found,
00127             File_Inconsistency_Warning,
00128             Toolkit_Usage_Error,
00129             Decompression_Terminated,
00130             File_Close_Error,
00131             Opcode_Not_Valid_For_This_Object,
00132             DWF_Package_Format,
00133             Minor_Version_Warning,
00134             Undefined = -1
00135         };
00136 
00137     WT_ENUM_CLASS_FUNCTIONS (WT_Result)
00138 };
00139 
00140 #endif // WHIPERRS_HEADER

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