Introduction

Getting Started

Programming Guides

API Reference

Additional Resources

HIOUtilityU3D.h
1 // Copyright (c) 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 _HIOUTILITYU3D_H
11 #define _HIOUTILITYU3D_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 
21 #ifdef HIO_U3D
22 #define HIO_API __declspec (dllexport)
23 #else
24 #define HIO_API
25 #endif
26 
38 class HIO_API HIOUtilityU3D: public HInputHandler, public HOutputHandler
39 {
40 
41 public:
46  };
47 
48  ~HIOUtilityU3D() {;};
49 
52  const char * GetOutputName() { return "HIOUtilityU3D"; }
53  const char * GetInputName() { return "HIOUtilityU3D"; }
54 
55 
58  // TODO: Import U3D
59  HIORegisterInputType("U3D",this);
60  HIORegisterInputType("u3d",this);
61  };
62 
65 
67  const char * GetInputTypesString()
68  {return "u3d";};
69 
76  HFileInputResult FileInputByKey(const __wchar_t * FileName, HC_KEY key, HInputHandlerOptions * options);
77 
78  HFileInputResult FileInputByKey(const char * FileName, HC_KEY key, HInputHandlerOptions * options){
79  return FileInputByKey(H_WCS(FileName).encodedText(), key, options);
80  };
81 
82  HFileInputResult FileInputByKey(const unsigned short * FileName, HC_KEY key, HInputHandlerOptions * options){
83  H_UTF16 utf16;
84  utf16.encodedText((utf16_char const*) FileName);
85  return FileInputByKey(H_WCS(utf16).encodedText(), key, options);
86  };
87 
88 
91  HIORegisterOutputType("U3D",this);
92  HIORegisterOutputType("u3d",this);
93  };
94 
96  HOutputHandlerStyle GetOutputStyle() {return HOutputHandlerStyleModel;};
97 
99  const char * GetOutputTypesString()
100  {return "u3d";};
101 
109  HFileOutputResult FileOutputByKey(const __wchar_t * filename, HC_KEY key, HOutputHandlerOptions * options);
110 
111  HFileOutputResult FileOutputByKey(const unsigned short * filename, HC_KEY key, HOutputHandlerOptions * options){
112  H_UTF16 utf16;
113  utf16.encodedText((utf16_char const*) filename);
114  return FileOutputByKey(H_WCS(utf16).encodedText(), key, options);
115  }
116 
117  HFileOutputResult FileOutputByKey(const char * filename, HC_KEY key, HOutputHandlerOptions * options){
118  return FileOutputByKey(H_WCS(filename).encodedText(), key, options);
119  }
120 
121 };
122 
123 #ifdef HIO_U3D
124 extern "C" {
125  HIO_API void * CreateInput(HIOManager *manager);
126  HIO_API void * CreateOutput(HIOManager *manager);
127  HIO_API void * CreateConnector(void * unused);
128  HIO_API void Free(HIOUtilityU3D *);
129  HIO_API void FreeConnector(HIOConnector *connector);
130 }
131 #endif
132 
133 
134 
135 #ifdef H_PACK_8
136 #pragma pack(pop)
137 #endif
138 
139 #endif
Definition: HIOManager.h:1400
virtual HFileOutputResult FileOutputByKey(const char *filename, HC_KEY key, HOutputHandlerOptions *options)
HFileInputResult FileInputByKey(const unsigned short *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityU3D.h:82
Specifies an HInputHandler for model data.
Definition: HIOManager.h:226
#define HOutputOpFileOutputByKey
This HOutputHandler supports output from a segment key.
Definition: HIOManager.h:73
virtual HFileInputResult FileInputByKey(const char *filename, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOManager.h:148
HInputHandler an abstract base class for model and image input.
Definition: HIOManager.h:628
void RegisterInputHandlerTypes()
Definition: HIOUtilityU3D.h:57
HInputHandlerStyle GetInputStyle()
Definition: HIOUtilityU3D.h:64
HOutputHandlerStyle
Definition: HIOManager.h:819
HOutputHandler an abstract base class for model and image output.
Definition: HIOManager.h:1213
#define HIORegisterInputType(type, input_object)
Definition: HIOManager.h:85
HFileInputResult FileInputByKey(const char *FileName, HC_KEY key, HInputHandlerOptions *options)
Definition: HIOUtilityU3D.h:78
#define HIORegisterOutputType(type, output_object)
HIORegisterOutputType(type,output_object) Used by a HOutputHandler to set extension types that it han...
Definition: HIOManager.h:90
HInputHandlerStyle
Definition: HIOManager.h:225
void RegisterOutputHandlerTypes()
Definition: HIOUtilityU3D.h:90
const char * GetInputName()
Definition: HIOUtilityU3D.h:53
Definition: HIOManager.h:865
const char * GetOutputTypesString()
Definition: HIOUtilityU3D.h:99
HOutputHandlerStyle GetOutputStyle()
Definition: HIOUtilityU3D.h:96
#define HInputOpFileInputByKey
This HInputHandler supports input to a segment key.
Definition: HIOManager.h:58
HIOUtilityU3D()
Definition: HIOUtilityU3D.h:43
HFileOutputResult FileOutputByKey(const char *filename, HC_KEY key, HOutputHandlerOptions *options)
Definition: HIOUtilityU3D.h:117
Definition: HIOManager.h:246
void SetInputOps(unsigned long ops)
This sets the HInputOp.
Definition: HIOManager.h:797
const char * GetInputTypesString()
Definition: HIOUtilityU3D.h:67
void SetOutputOps(unsigned long ops)
This sets the HOutputOp.
Definition: HIOManager.h:1378
HFileOutputResult FileOutputByKey(const unsigned short *filename, HC_KEY key, HOutputHandlerOptions *options)
Definition: HIOUtilityU3D.h:111
A header file containing the HIO classes for passing to HBaseView::FileInput and HBaseView::FileOutpu...
Definition: HIOUtilityU3D.h:38
const char * GetOutputName()
Definition: HIOUtilityU3D.h:52