Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HIOUtilityExchange.h
1 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 #ifndef _HIOUTILITYEXCHANGE_H
11 #define _HIOUTILITYEXCHANGE_H
12 
13 #ifdef H_PACK_8
14 #pragma pack(push)
15 #pragma pack(8)
16 #endif
17 
18 #include "HTools.h"
19 #include "HIOManager.h"
20 #include "vlist.h"
21 
22 #if defined(HIO_EXCHANGE) && defined(_MSC_VER)
23 #define HIO_API __declspec (dllexport)
24 #else
25 #define HIO_API
26 #endif
27 
28 class HPDFLayoutManager;
29 class HPDFOptions;
34 class HIO_API HIOUtilityExchange: public HInputHandler, public HOutputHandler
35 {
36 
37 public:
38 
41  virtual ~HIOUtilityExchange() {};
42 
47  const char * GetOutputName() { return "HIOUtilityExchange"; }
48  const char * GetInputName() { return "HIOUtilityExchange"; }
49 
51  const char * GetInputTypesString() {return "prc;prd;x_t;x_b;step;stp;igs;iges;CATPart;CATProduct;"
52  "cgr;session;model;3dxml;CADDS;PD;XV3;XV0;prt;asm;xpr;xas;neu;asm.1;prt.1;jt;SLDPRT;SLDASM;mf1;"
53  "arc;unv;pkg;sdp;sdpc;sdw;sdwc;sda;sdac;sds;sdsc;ses;bdl;psm;pwd;par;asm;sat;sab;ipt;iam;ifc;dae"; }
54 
55 
56 
59 
67  HFileInputResult FileInputByKey(const wchar_t * FileName, HC_KEY key, HInputHandlerOptions * options);
68 
69  HFileInputResult FileInputByKey(const char * FileName, HC_KEY key, HInputHandlerOptions * options){
70  return FileInputByKey(H_WCS(FileName).encodedText(), key, options);
71  };
72 
73  HFileInputResult FileInputByKey(const unsigned short * FileName, HC_KEY key, HInputHandlerOptions * options){
74  H_UTF16 utf16;
75  utf16.encodedText((utf16_char const*) FileName);
76  return FileInputByKey(H_WCS(utf16).encodedText(), key, options);
77  };
78 
79  HFileOutputResult FileOutputByKey(const wchar_t * filename, HC_KEY key, HOutputHandlerOptions * options);
80 
81  HFileOutputResult FileOutputByKey(const unsigned short * filename, HC_KEY key, HOutputHandlerOptions * options){
82  H_UTF16 utf16;
83  utf16.encodedText((utf16_char const*) filename);
84  return FileOutputByKey(H_WCS(utf16).encodedText(), key, options);
85  }
86 
87  HFileOutputResult FileOutputByKey(const char * filename, HC_KEY key, HOutputHandlerOptions * options){
88  return FileOutputByKey(H_WCS(filename).encodedText(), key, options);
89  }
90 
92 
99  virtual void *BuildPRCModel(HOutputHandlerOptions * options, HC_KEY key);
100 
101 
102  const char * GetOutputTypesString() {
103  return "prc;iges;step;x_t;stl";
104  }
105 
107  return HOutputHandlerStyleModel;
108  }
109 };
110 
111 
112 
113 #ifdef HIO_EXCHANGE
114 extern "C" {
115  HIO_API void * CreateInput(HIOManager *manager);
116  HIO_API void * CreateOutput(HIOManager *manager);
117  HIO_API void * CreateConnector(void * unused);
118  HIO_API void Free(HIOUtilityExchange *);
119  }
120 
121 
122 #endif
123 
124 #ifdef H_PACK_8
125 #pragma pack(pop)
126 #endif
127 
128 #endif
Definition: HIOManager.h:1412
virtual HFileOutputResult FileOutputByKey(const char *filename, HC_KEY key, HOutputHandlerOptions *options)
virtual void RegisterInputHandlerTypes()=0
const char * GetInputName()
Definition: HIOUtilityExchange.h:48
const char * GetOutputName()
Definition: HIOUtilityExchange.h:47
Specifies an HInputHandler for model data.
Definition: HIOManager.h:225
HOutputHandlerStyle GetOutputStyle()
Definition: HIOUtilityExchange.h:106
HFileOutputResult FileOutputByKey(const char *filename, HC_KEY key, HOutputHandlerOptions *options)
Definition: HIOUtilityExchange.h:87
virtual HFileInputResult FileInputByKey(const char *filename, HC_KEY key, HInputHandlerOptions *options)
HInputHandler an abstract base class for model and image input.
Definition: HIOManager.h:671
HInputHandlerStyle GetInputStyle()
Definition: HIOUtilityExchange.h:58
HFileInputResult FileInputByKey(const unsigned short *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityExchange.h:73
HOutputHandlerStyle
Definition: HIOManager.h:862
HOutputHandler an abstract base class for model and image output.
Definition: HIOManager.h:1225
virtual void RegisterOutputHandlerTypes()=0
HFileOutputResult FileOutputByKey(const unsigned short *filename, HC_KEY key, HOutputHandlerOptions *options)
Definition: HIOUtilityExchange.h:81
HFileInputResult FileInputByKey(const char *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityExchange.h:69
HInputHandlerStyle
Definition: HIOManager.h:224
Definition: HIOManager.h:908
const char * GetInputTypesString()
Definition: HIOUtilityExchange.h:51
Definition: HIOUtilityPublish.h:131
Definition: HIOUtilityExchange.h:34
Definition: HIOManager.h:245
A header file containing the HIO classes for passing to HBaseView::FileInput and HBaseView::FileOutpu...
const char * GetOutputTypesString()
Definition: HIOUtilityExchange.h:102