Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

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