rev |
line source |
nuclear@0
|
1 /*
|
nuclear@0
|
2 ---------------------------------------------------------------------------
|
nuclear@0
|
3 Open Asset Import Library (assimp)
|
nuclear@0
|
4 ---------------------------------------------------------------------------
|
nuclear@0
|
5
|
nuclear@0
|
6 Copyright (c) 2006-2012, assimp team
|
nuclear@0
|
7
|
nuclear@0
|
8 All rights reserved.
|
nuclear@0
|
9
|
nuclear@0
|
10 Redistribution and use of this software in source and binary forms,
|
nuclear@0
|
11 with or without modification, are permitted provided that the following
|
nuclear@0
|
12 conditions are met:
|
nuclear@0
|
13
|
nuclear@0
|
14 * Redistributions of source code must retain the above
|
nuclear@0
|
15 copyright notice, this list of conditions and the
|
nuclear@0
|
16 following disclaimer.
|
nuclear@0
|
17
|
nuclear@0
|
18 * Redistributions in binary form must reproduce the above
|
nuclear@0
|
19 copyright notice, this list of conditions and the
|
nuclear@0
|
20 following disclaimer in the documentation and/or other
|
nuclear@0
|
21 materials provided with the distribution.
|
nuclear@0
|
22
|
nuclear@0
|
23 * Neither the name of the assimp team, nor the names of its
|
nuclear@0
|
24 contributors may be used to endorse or promote products
|
nuclear@0
|
25 derived from this software without specific prior
|
nuclear@0
|
26 written permission of the assimp team.
|
nuclear@0
|
27
|
nuclear@0
|
28 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
nuclear@0
|
29 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
nuclear@0
|
30 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
nuclear@0
|
31 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
nuclear@0
|
32 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
nuclear@0
|
33 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
nuclear@0
|
34 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
nuclear@0
|
35 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
nuclear@0
|
36 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
nuclear@0
|
37 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
nuclear@0
|
38 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
nuclear@0
|
39 ---------------------------------------------------------------------------
|
nuclear@0
|
40 */
|
nuclear@0
|
41
|
nuclear@0
|
42 /** @file ImporterRegistry.cpp
|
nuclear@0
|
43
|
nuclear@0
|
44 Central registry for all importers available. Do not edit this file
|
nuclear@0
|
45 directly (unless you are adding new loaders), instead use the
|
nuclear@0
|
46 corresponding preprocessor flag to selectively disable formats.
|
nuclear@0
|
47 */
|
nuclear@0
|
48
|
nuclear@0
|
49 #include "AssimpPCH.h"
|
nuclear@0
|
50
|
nuclear@0
|
51 // ------------------------------------------------------------------------------------------------
|
nuclear@0
|
52 // Importers
|
nuclear@0
|
53 // (include_new_importers_here)
|
nuclear@0
|
54 // ------------------------------------------------------------------------------------------------
|
nuclear@0
|
55 #ifndef ASSIMP_BUILD_NO_X_IMPORTER
|
nuclear@0
|
56 # include "XFileImporter.h"
|
nuclear@0
|
57 #endif
|
nuclear@0
|
58 #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER
|
nuclear@0
|
59 # include "3DSLoader.h"
|
nuclear@0
|
60 #endif
|
nuclear@0
|
61 #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER
|
nuclear@0
|
62 # include "MD3Loader.h"
|
nuclear@0
|
63 #endif
|
nuclear@0
|
64 #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER
|
nuclear@0
|
65 # include "MDLLoader.h"
|
nuclear@0
|
66 #endif
|
nuclear@0
|
67 #ifndef ASSIMP_BUILD_NO_MD2_IMPORTER
|
nuclear@0
|
68 # include "MD2Loader.h"
|
nuclear@0
|
69 #endif
|
nuclear@0
|
70 #ifndef ASSIMP_BUILD_NO_PLY_IMPORTER
|
nuclear@0
|
71 # include "PlyLoader.h"
|
nuclear@0
|
72 #endif
|
nuclear@0
|
73 #ifndef ASSIMP_BUILD_NO_ASE_IMPORTER
|
nuclear@0
|
74 # include "ASELoader.h"
|
nuclear@0
|
75 #endif
|
nuclear@0
|
76 #ifndef ASSIMP_BUILD_NO_OBJ_IMPORTER
|
nuclear@0
|
77 # include "ObjFileImporter.h"
|
nuclear@0
|
78 #endif
|
nuclear@0
|
79 #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER
|
nuclear@0
|
80 # include "HMPLoader.h"
|
nuclear@0
|
81 #endif
|
nuclear@0
|
82 #ifndef ASSIMP_BUILD_NO_SMD_IMPORTER
|
nuclear@0
|
83 # include "SMDLoader.h"
|
nuclear@0
|
84 #endif
|
nuclear@0
|
85 #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER
|
nuclear@0
|
86 # include "MDCLoader.h"
|
nuclear@0
|
87 #endif
|
nuclear@0
|
88 #ifndef ASSIMP_BUILD_NO_MD5_IMPORTER
|
nuclear@0
|
89 # include "MD5Loader.h"
|
nuclear@0
|
90 #endif
|
nuclear@0
|
91 #ifndef ASSIMP_BUILD_NO_STL_IMPORTER
|
nuclear@0
|
92 # include "STLLoader.h"
|
nuclear@0
|
93 #endif
|
nuclear@0
|
94 #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER
|
nuclear@0
|
95 # include "LWOLoader.h"
|
nuclear@0
|
96 #endif
|
nuclear@0
|
97 #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER
|
nuclear@0
|
98 # include "DXFLoader.h"
|
nuclear@0
|
99 #endif
|
nuclear@0
|
100 #ifndef ASSIMP_BUILD_NO_NFF_IMPORTER
|
nuclear@0
|
101 # include "NFFLoader.h"
|
nuclear@0
|
102 #endif
|
nuclear@0
|
103 #ifndef ASSIMP_BUILD_NO_RAW_IMPORTER
|
nuclear@0
|
104 # include "RawLoader.h"
|
nuclear@0
|
105 #endif
|
nuclear@0
|
106 #ifndef ASSIMP_BUILD_NO_OFF_IMPORTER
|
nuclear@0
|
107 # include "OFFLoader.h"
|
nuclear@0
|
108 #endif
|
nuclear@0
|
109 #ifndef ASSIMP_BUILD_NO_AC_IMPORTER
|
nuclear@0
|
110 # include "ACLoader.h"
|
nuclear@0
|
111 #endif
|
nuclear@0
|
112 #ifndef ASSIMP_BUILD_NO_BVH_IMPORTER
|
nuclear@0
|
113 # include "BVHLoader.h"
|
nuclear@0
|
114 #endif
|
nuclear@0
|
115 #ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER
|
nuclear@0
|
116 # include "IRRMeshLoader.h"
|
nuclear@0
|
117 #endif
|
nuclear@0
|
118 #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER
|
nuclear@0
|
119 # include "IRRLoader.h"
|
nuclear@0
|
120 #endif
|
nuclear@0
|
121 #ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER
|
nuclear@0
|
122 # include "Q3DLoader.h"
|
nuclear@0
|
123 #endif
|
nuclear@0
|
124 #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER
|
nuclear@0
|
125 # include "B3DImporter.h"
|
nuclear@0
|
126 #endif
|
nuclear@0
|
127 #ifndef ASSIMP_BUILD_NO_COLLADA_IMPORTER
|
nuclear@0
|
128 # include "ColladaLoader.h"
|
nuclear@0
|
129 #endif
|
nuclear@0
|
130 #ifndef ASSIMP_BUILD_NO_TERRAGEN_IMPORTER
|
nuclear@0
|
131 # include "TerragenLoader.h"
|
nuclear@0
|
132 #endif
|
nuclear@0
|
133 #ifndef ASSIMP_BUILD_NO_CSM_IMPORTER
|
nuclear@0
|
134 # include "CSMLoader.h"
|
nuclear@0
|
135 #endif
|
nuclear@0
|
136 #ifndef ASSIMP_BUILD_NO_3D_IMPORTER
|
nuclear@0
|
137 # include "UnrealLoader.h"
|
nuclear@0
|
138 #endif
|
nuclear@0
|
139 #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER
|
nuclear@0
|
140 # include "LWSLoader.h"
|
nuclear@0
|
141 #endif
|
nuclear@0
|
142 #ifndef ASSIMP_BUILD_NO_OGRE_IMPORTER
|
nuclear@0
|
143 # include "OgreImporter.hpp"
|
nuclear@0
|
144 #endif
|
nuclear@0
|
145 #ifndef ASSIMP_BUILD_NO_MS3D_IMPORTER
|
nuclear@0
|
146 # include "MS3DLoader.h"
|
nuclear@0
|
147 #endif
|
nuclear@0
|
148 #ifndef ASSIMP_BUILD_NO_COB_IMPORTER
|
nuclear@0
|
149 # include "COBLoader.h"
|
nuclear@0
|
150 #endif
|
nuclear@0
|
151 #ifndef ASSIMP_BUILD_NO_BLEND_IMPORTER
|
nuclear@0
|
152 # include "BlenderLoader.h"
|
nuclear@0
|
153 #endif
|
nuclear@0
|
154 #ifndef ASSIMP_BUILD_NO_Q3BSP_IMPORTER
|
nuclear@0
|
155 # include "Q3BSPFileImporter.h"
|
nuclear@0
|
156 #endif
|
nuclear@0
|
157 #ifndef ASSIMP_BUILD_NO_NDO_IMPORTER
|
nuclear@0
|
158 # include "NDOLoader.h"
|
nuclear@0
|
159 #endif
|
nuclear@0
|
160 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
|
nuclear@0
|
161 # include "IFCLoader.h"
|
nuclear@0
|
162 #endif
|
nuclear@0
|
163 #ifndef ASSIMP_BUILD_NO_XGL_IMPORTER
|
nuclear@0
|
164 # include "XGLLoader.h"
|
nuclear@0
|
165 #endif
|
nuclear@0
|
166 #ifndef ASSIMP_BUILD_NO_FBX_IMPORTER
|
nuclear@0
|
167 # include "FBXImporter.h"
|
nuclear@0
|
168 #endif
|
nuclear@0
|
169
|
nuclear@0
|
170 namespace Assimp {
|
nuclear@0
|
171
|
nuclear@0
|
172 // ------------------------------------------------------------------------------------------------
|
nuclear@0
|
173 void GetImporterInstanceList(std::vector< BaseImporter* >& out)
|
nuclear@0
|
174 {
|
nuclear@0
|
175 // ----------------------------------------------------------------------------
|
nuclear@0
|
176 // Add an instance of each worker class here
|
nuclear@0
|
177 // (register_new_importers_here)
|
nuclear@0
|
178 // ----------------------------------------------------------------------------
|
nuclear@0
|
179 out.reserve(64);
|
nuclear@0
|
180 #if (!defined ASSIMP_BUILD_NO_X_IMPORTER)
|
nuclear@0
|
181 out.push_back( new XFileImporter());
|
nuclear@0
|
182 #endif
|
nuclear@0
|
183 #if (!defined ASSIMP_BUILD_NO_OBJ_IMPORTER)
|
nuclear@0
|
184 out.push_back( new ObjFileImporter());
|
nuclear@0
|
185 #endif
|
nuclear@0
|
186 #if (!defined ASSIMP_BUILD_NO_3DS_IMPORTER)
|
nuclear@0
|
187 out.push_back( new Discreet3DSImporter());
|
nuclear@0
|
188 #endif
|
nuclear@0
|
189 #if (!defined ASSIMP_BUILD_NO_MD3_IMPORTER)
|
nuclear@0
|
190 out.push_back( new MD3Importer());
|
nuclear@0
|
191 #endif
|
nuclear@0
|
192 #if (!defined ASSIMP_BUILD_NO_MD2_IMPORTER)
|
nuclear@0
|
193 out.push_back( new MD2Importer());
|
nuclear@0
|
194 #endif
|
nuclear@0
|
195 #if (!defined ASSIMP_BUILD_NO_PLY_IMPORTER)
|
nuclear@0
|
196 out.push_back( new PLYImporter());
|
nuclear@0
|
197 #endif
|
nuclear@0
|
198 #if (!defined ASSIMP_BUILD_NO_MDL_IMPORTER)
|
nuclear@0
|
199 out.push_back( new MDLImporter());
|
nuclear@0
|
200 #endif
|
nuclear@0
|
201 #if (!defined ASSIMP_BUILD_NO_ASE_IMPORTER)
|
nuclear@0
|
202 out.push_back( new ASEImporter());
|
nuclear@0
|
203 #endif
|
nuclear@0
|
204 #if (!defined ASSIMP_BUILD_NO_HMP_IMPORTER)
|
nuclear@0
|
205 out.push_back( new HMPImporter());
|
nuclear@0
|
206 #endif
|
nuclear@0
|
207 #if (!defined ASSIMP_BUILD_NO_SMD_IMPORTER)
|
nuclear@0
|
208 out.push_back( new SMDImporter());
|
nuclear@0
|
209 #endif
|
nuclear@0
|
210 #if (!defined ASSIMP_BUILD_NO_MDC_IMPORTER)
|
nuclear@0
|
211 out.push_back( new MDCImporter());
|
nuclear@0
|
212 #endif
|
nuclear@0
|
213 #if (!defined ASSIMP_BUILD_NO_MD5_IMPORTER)
|
nuclear@0
|
214 out.push_back( new MD5Importer());
|
nuclear@0
|
215 #endif
|
nuclear@0
|
216 #if (!defined ASSIMP_BUILD_NO_STL_IMPORTER)
|
nuclear@0
|
217 out.push_back( new STLImporter());
|
nuclear@0
|
218 #endif
|
nuclear@0
|
219 #if (!defined ASSIMP_BUILD_NO_LWO_IMPORTER)
|
nuclear@0
|
220 out.push_back( new LWOImporter());
|
nuclear@0
|
221 #endif
|
nuclear@0
|
222 #if (!defined ASSIMP_BUILD_NO_DXF_IMPORTER)
|
nuclear@0
|
223 out.push_back( new DXFImporter());
|
nuclear@0
|
224 #endif
|
nuclear@0
|
225 #if (!defined ASSIMP_BUILD_NO_NFF_IMPORTER)
|
nuclear@0
|
226 out.push_back( new NFFImporter());
|
nuclear@0
|
227 #endif
|
nuclear@0
|
228 #if (!defined ASSIMP_BUILD_NO_RAW_IMPORTER)
|
nuclear@0
|
229 out.push_back( new RAWImporter());
|
nuclear@0
|
230 #endif
|
nuclear@0
|
231 #if (!defined ASSIMP_BUILD_NO_OFF_IMPORTER)
|
nuclear@0
|
232 out.push_back( new OFFImporter());
|
nuclear@0
|
233 #endif
|
nuclear@0
|
234 #if (!defined ASSIMP_BUILD_NO_AC_IMPORTER)
|
nuclear@0
|
235 out.push_back( new AC3DImporter());
|
nuclear@0
|
236 #endif
|
nuclear@0
|
237 #if (!defined ASSIMP_BUILD_NO_BVH_IMPORTER)
|
nuclear@0
|
238 out.push_back( new BVHLoader());
|
nuclear@0
|
239 #endif
|
nuclear@0
|
240 #if (!defined ASSIMP_BUILD_NO_IRRMESH_IMPORTER)
|
nuclear@0
|
241 out.push_back( new IRRMeshImporter());
|
nuclear@0
|
242 #endif
|
nuclear@0
|
243 #if (!defined ASSIMP_BUILD_NO_IRR_IMPORTER)
|
nuclear@0
|
244 out.push_back( new IRRImporter());
|
nuclear@0
|
245 #endif
|
nuclear@0
|
246 #if (!defined ASSIMP_BUILD_NO_Q3D_IMPORTER)
|
nuclear@0
|
247 out.push_back( new Q3DImporter());
|
nuclear@0
|
248 #endif
|
nuclear@0
|
249 #if (!defined ASSIMP_BUILD_NO_B3D_IMPORTER)
|
nuclear@0
|
250 out.push_back( new B3DImporter());
|
nuclear@0
|
251 #endif
|
nuclear@0
|
252 #if (!defined ASSIMP_BUILD_NO_COLLADA_IMPORTER)
|
nuclear@0
|
253 out.push_back( new ColladaLoader());
|
nuclear@0
|
254 #endif
|
nuclear@0
|
255 #if (!defined ASSIMP_BUILD_NO_TERRAGEN_IMPORTER)
|
nuclear@0
|
256 out.push_back( new TerragenImporter());
|
nuclear@0
|
257 #endif
|
nuclear@0
|
258 #if (!defined ASSIMP_BUILD_NO_CSM_IMPORTER)
|
nuclear@0
|
259 out.push_back( new CSMImporter());
|
nuclear@0
|
260 #endif
|
nuclear@0
|
261 #if (!defined ASSIMP_BUILD_NO_3D_IMPORTER)
|
nuclear@0
|
262 out.push_back( new UnrealImporter());
|
nuclear@0
|
263 #endif
|
nuclear@0
|
264 #if (!defined ASSIMP_BUILD_NO_LWS_IMPORTER)
|
nuclear@0
|
265 out.push_back( new LWSImporter());
|
nuclear@0
|
266 #endif
|
nuclear@0
|
267 #if (!defined ASSIMP_BUILD_NO_OGRE_IMPORTER)
|
nuclear@0
|
268 out.push_back( new Ogre::OgreImporter());
|
nuclear@0
|
269 #endif
|
nuclear@0
|
270 #if (!defined ASSIMP_BUILD_NO_MS3D_IMPORTER)
|
nuclear@0
|
271 out.push_back( new MS3DImporter());
|
nuclear@0
|
272 #endif
|
nuclear@0
|
273 #if (!defined ASSIMP_BUILD_NO_COB_IMPORTER)
|
nuclear@0
|
274 out.push_back( new COBImporter());
|
nuclear@0
|
275 #endif
|
nuclear@0
|
276 #if (!defined ASSIMP_BUILD_NO_BLEND_IMPORTER)
|
nuclear@0
|
277 out.push_back( new BlenderImporter());
|
nuclear@0
|
278 #endif
|
nuclear@0
|
279 #if (!defined ASSIMP_BUILD_NO_Q3BSP_IMPORTER)
|
nuclear@0
|
280 out.push_back( new Q3BSPFileImporter() );
|
nuclear@0
|
281 #endif
|
nuclear@0
|
282 #if (!defined ASSIMP_BUILD_NO_NDO_IMPORTER)
|
nuclear@0
|
283 out.push_back( new NDOImporter() );
|
nuclear@0
|
284 #endif
|
nuclear@0
|
285 #if (!defined ASSIMP_BUILD_NO_IFC_IMPORTER)
|
nuclear@0
|
286 out.push_back( new IFCImporter() );
|
nuclear@0
|
287 #endif
|
nuclear@0
|
288 #if ( !defined ASSIMP_BUILD_NO_XGL_IMPORTER )
|
nuclear@0
|
289 out.push_back( new XGLImporter() );
|
nuclear@0
|
290 #endif
|
nuclear@0
|
291 #if ( !defined ASSIMP_BUILD_NO_FBX_IMPORTER )
|
nuclear@0
|
292 out.push_back( new FBXImporter() );
|
nuclear@0
|
293 #endif
|
nuclear@0
|
294 }
|
nuclear@0
|
295
|
nuclear@0
|
296 }
|