Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HIOUtilityDwfExport.h

00001 //
00002 // Copyright (c) 2005 by Tech Soft 3D, LLC.
00003 // The information contained herein is confidential and proprietary to
00004 // Tech Soft 3D, LLC., and considered a trade secret as defined under
00005 // civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006 // and criminal remedies in the event of unauthorized use or misappropriation
00007 // of its trade secrets.  Use of this information by anyone other than
00008 // authorized employees of Tech Soft 3D, LLC. is granted only under a
00009 // written non-disclosure agreement, expressly prescribing the scope and
00010 // manner of such use.
00011 //
00012 
00013 
00014 #ifndef _HW3D_UTILITY_DWFEXPORT_H__RAJESH_B__20060503_1200__
00015 #define _HW3D_UTILITY_DWFEXPORT_H__RAJESH_B__20060503_1200__
00016 
00017 #include "HTools.h"
00018 #include "HIOManager.h"
00019 #include "HW3DStream.h"
00020 
00021 #if defined(_MSC_VER) && defined(HIO_DWF_EXPORT)
00022 #define HIO_API __declspec (dllexport)
00023 #else
00024 #define HIO_API
00025 #endif
00026 
00032 class HIO_API HIOUtilityDwfExport : public HOutputHandler
00033 {
00034 
00035 public:
00036     HIOUtilityDwfExport() 
00037     { 
00038         SetOutputOps(HOutputOpFileOutputByKey);
00039     };
00040 
00041     ~HIOUtilityDwfExport() {;};
00042 
00043     void RegisterOutputHandlerTypes() {
00044         HIORegisterOutputType("DWF",this);  // DWF (Autodesk's Design Web Format)
00045         HIORegisterOutputType("dwf",this);  // DWF (Autodesk's Design Web Format)
00046     };
00047 
00048     HOutputHandlerStyle GetOutputStyle() {return HOutputHandlerStyleModel;};
00049     const char * GetOutputTypesString()  {return "dwf";};
00050     
00053     const char * GetOutputName() { return "HIOUtilityDwfExport"; }
00054 
00062     HFileOutputResult FileOutputByKey(const __wchar_t * FileName, HC_KEY key, HOutputHandlerOptions * options);
00063 
00064     HFileOutputResult FileOutputByKey(const unsigned short * FileName, HC_KEY key, HOutputHandlerOptions * options){
00065         H_UTF16 utf16;
00066         utf16.encodedText((utf16_char const*) FileName);
00067         return FileOutputByKey(H_WCS(utf16).encodedText(), key, options);
00068     }
00069 };
00070 
00071 
00072 
00076 class HIO_API HIOUtilityWhip2D : public HOutputHandler
00077 {
00078 public:
00079     HIOUtilityWhip2D() { 
00080         SetOutputOps(HOutputOpFileOutputByKey);
00081     };
00082 
00083     ~HIOUtilityWhip2D() {;};
00084 
00085     void RegisterOutputHandlerTypes() {
00086         HIORegisterOutputType("w2d",this);
00087     };
00088 
00091     const char * GetOutputName() { return "HIOUtilityWhip2D"; }
00092 
00093 
00094     const char * GetOutputTypesString() {return "w2d";};
00095     HOutputHandlerStyle GetOutputStyle() {return HOutputHandlerStyleHardcopy;};
00096 
00097     const char * GetOutputDefaultHSRA() {return "painters";};
00098 
00106     HFileOutputResult FileOutputByKey(const __wchar_t * filename, HC_KEY key, HOutputHandlerOptions * options);
00107 
00108     HFileOutputResult FileOutputByKey(const unsigned short * filename, HC_KEY key, HOutputHandlerOptions * options){
00109         H_UTF16 utf16;
00110         utf16.encodedText((utf16_char const*) filename);
00111         return FileOutputByKey(H_WCS(utf16).encodedText(), key, options);
00112     }
00113 
00114 };
00115 
00116 #ifdef HIO_DWF_EXPORT
00117 extern "C" {
00118     HIO_API void * CreateInput(HIOManager *manager);
00119     HIO_API void * CreateOutput(HIOManager *manager);
00120     HIO_API void Free(HIOUtilityDwfExport *);
00121 }
00122 #endif
00123 
00124 
00125 #endif  // _HW3D_UTILITY_DWFEXPORT_H__RAJESH_B__20060503_1200__
00126 
00127 
00128 
00129