15 #ifndef _HIOUTILITYPUBLISH_H
16 #define _HIOUTILITYPUBLISH_H
29 #define HIO_API __declspec (dllexport)
35 enum HPDFLayoutImageType
41 enum HPDFLayoutVisibility
58 m_visibility = HUnchanged;
64 delete [] m_imagename;
65 delete [] m_javascript;
68 void Set(
const wchar_t *name,
const wchar_t *text,
const wchar_t *javascript = 0, HPDFLayoutVisibility visibility = HUnchanged)
72 m_name =
new wchar_t[wcslen(name)+1];
78 m_text =
new wchar_t[wcslen(text)+1];
83 m_javascript =
new wchar_t[wcslen(javascript)+1];
84 wcscpy(m_javascript, javascript);
87 m_visibility = visibility;
90 void SetImage(
const wchar_t *name,
const wchar_t *imagename, HPDFLayoutImageType imagetype,
int imagewidth,
int imageheight)
94 m_name =
new wchar_t[wcslen(name)+1];
100 m_imagename =
new wchar_t[wcslen(imagename)+1];
101 wcscpy(m_imagename,imagename);
104 m_imagetype = imagetype;
105 m_imagewidth = imagewidth;
106 m_imageheight = imageheight;
109 wchar_t const *GetText() {
return m_text; }
110 wchar_t const *GetImage() {
return m_imagename; }
111 wchar_t const *GetName() {
return m_name; }
112 wchar_t const *GetJavascript() {
return m_javascript; }
113 HPDFLayoutVisibility GetVisibility() {
return m_visibility; }
114 HPDFLayoutImageType GetImageType() {
return m_imagetype; }
115 int GetImageWidth() {
return m_imagewidth; }
116 int GetImageHeight() {
return m_imageheight; }
123 wchar_t *m_imagename;
126 wchar_t *m_javascript;
127 HPDFLayoutVisibility m_visibility;
128 HPDFLayoutImageType m_imagetype;
129 int m_imagewidth, m_imageheight;
144 m_FieldList = new_vlist(malloc,free);
151 START_LIST_ITERATION(
HPDFField, m_FieldList);
153 END_LIST_ITERATION(m_FieldList);
154 delete_vlist(m_FieldList);
155 delete [] m_templatefile;
156 delete [] m_3DFieldName;
166 m_templatefile =
new wchar_t[wcslen(name)+1];
167 wcscpy(m_templatefile, name);
177 m_3DFieldName =
new wchar_t[wcslen(name)+1];
178 wcscpy(m_3DFieldName, name);
188 void AddMiscModification(
const wchar_t *name,
wchar_t *javascript = 0, HPDFLayoutVisibility visibility = HUnchanged)
191 field->Set(name, 0, javascript, visibility);
192 vlist_add_last(m_FieldList, field);
203 field->Set(name, text, 0, HUnchanged);
204 vlist_add_last(m_FieldList, field);
215 void AddImageModification(
const wchar_t *name,
const wchar_t *imagename, HPDFLayoutImageType imagetype,
int imagewidth,
int imageheight)
218 field->SetImage(name, imagename, imagetype, imagewidth, imageheight);
219 vlist_add_last(m_FieldList, field);
231 return m_templatefile;
236 return m_3DFieldName;
240 wchar_t * m_templatefile;
241 wchar_t * m_3DFieldName;
242 struct vlist_s * m_FieldList;
247 class HPublishExchangeView;
248 typedef VArray<HPublishExchangeView *> HPEViewsArray;
287 return FileInputByKey(H_WCS(FileName).encodedText(), key, options);
292 utf16.encodedText((utf16_char
const*) FileName);
296 HFileOutputResult FileOutputByKey(
const wchar_t * filename, HC_KEY key, HOutputHandlerOptions * options);
298 HFileOutputResult FileOutputByKey(
const unsigned short * filename, HC_KEY key, HOutputHandlerOptions * options){
300 utf16.encodedText((utf16_char
const*) filename);
301 return FileOutputByKey(H_WCS(utf16).encodedText(), key, options);
304 HFileOutputResult FileOutputByKey(
const char * filename, HC_KEY key, HOutputHandlerOptions * options){
305 return FileOutputByKey(H_WCS(filename).encodedText(), key, options);
308 void RegisterOutputHandlerTypes();
316 virtual void *BuildPRCModel(HOutputHandlerOptions * options, HC_KEY key);
319 const char * GetOutputTypesString() {
320 return "prc;iges;step;x_t;stl";
324 return HOutputHandlerStyleModel;
334 virtual void WriteSimplePDF(
wchar_t const * file_name,
void *PRCModel, HOutputHandlerOptions * options,
wchar_t const *javascript_file,
const HPEViewsArray& hoopsviews);
342 virtual void WritePDFFromTemplate(
wchar_t const * file_name,
void *PRCModel, HOutputHandlerOptions * options,
HPDFLayoutManager * layoutmanager,
wchar_t const *javascript_file);
351 char * GenerateJavascript(
HBaseView *view);
355 void ReleaseJavascript();
358 char *m_pAnimationData;
377 m_bSaveToPDF =
false;
382 void * m_pAsmModelFile;
390 HIO_API
void * CreateInput(HIOManager *manager);
391 HIO_API
void * CreateOutput(HIOManager *manager);
392 HIO_API
void * CreateConnector(
void * unused);
~HPDFLayoutManager()
Definition: HIOUtilityPublish.h:149
Definition: HIOUtilityPublish.h:253
vlist_s * GetFieldModificationList()
Definition: HIOUtilityPublish.h:224
Specifies an HInputHandler for model data.
Definition: HIOManager.h:227
HOutputHandlerStyle
Definition: HIOManager.h:858
void AddTextModification(const wchar_t *name, const wchar_t *text)
Definition: HIOUtilityPublish.h:200
void AddMiscModification(const wchar_t *name, wchar_t *javascript=0, HPDFLayoutVisibility visibility=HUnchanged)
Definition: HIOUtilityPublish.h:188
HFileInputResult FileInputByKey(const char *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityPublish.h:286
const char * GetInputName()
Definition: HIOUtilityPublish.h:267
HPDFLayoutManager()
Definition: HIOUtilityPublish.h:140
void AddImageModification(const wchar_t *name, const wchar_t *imagename, HPDFLayoutImageType imagetype, int imagewidth, int imageheight)
Definition: HIOUtilityPublish.h:215
void Reset()
Definition: HIOUtilityPublish.h:376
HInputHandlerStyle
Definition: HIOManager.h:226
The HBaseView class defines and manages a view of model information.
Definition: HBaseView.h:337
Definition: HIOUtilityPublish.h:370
Definition: HIOUtilityPublish.h:136
const char * GetInputTypesString()
Definition: HIOUtilityPublish.h:270
void Set3DFieldName(const wchar_t *name)
Definition: HIOUtilityPublish.h:173
const char * GetOutputName()
Definition: HIOUtilityPublish.h:266
HFileInputResult FileInputByKey(const unsigned short *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityPublish.h:290
wchar_t * GetTemplateName()
Definition: HIOUtilityPublish.h:229
A header file containing the HIO classes for passing to HBaseView::FileInput and HBaseView::FileOutpu...
HInputHandlerStyle GetInputStyle()
Definition: HIOUtilityPublish.h:275
void SetTemplateName(const wchar_t *name)
Definition: HIOUtilityPublish.h:162
wchar_t * Get3DFieldName()
Definition: HIOUtilityPublish.h:234
Definition: HIOUtilityPublish.h:49
H3DXOptions()
Definition: HIOUtilityPublish.h:374