Developer documentation | Axl-2.5.1

axlFactoryRegister.cpp
Go to the documentation of this file.
1 /* axlFactoryRegister.cpp ---
2  *
3  * Author: Anais Ducoffe
4  * Copyright (C) 2013 - Anais Ducoffe, Inria.
5  */
6 
7 /* Commentary:
8  *
9  */
10 
11 /* Change log:
12  *
13  */
14 
15 #include "axlFactoryRegister.h"
16 
17 
19 #include <dtkCoreSupport/dtkGlobal.h>
20 #include <dtkCoreSupport/dtkPluginManager.h>
21 
22 
23 
32 
36 //#include <axlCore/axlAbstractDataCompositeConverter.h>
38 
39 
41 #include <axlCore/axlConeCreator.h>
45 #include <axlCore/axlLineCreator.h>
49 
50 
54 #include <axlCore/axlToMesh.h>
56 
60 //#include <axlCore/axlFieldSpatialDirection.h>
68 
70 //#include <axlCore/axlProcessZScalarField.h>
72 //#include <axlCore/axlProcessTangentVectorField.h>
73 //#include <axlCore/axlProcessSpatialDistanceField.h>
79 
81 #include <dtkCoreSupport/dtkAbstractProcessFactory.h>
82 #include <dtkCoreSupport/dtkAbstractDataFactory.h>
83 #include <dtkCoreSupport/dtkAbstractDataReader.h>
84 
85 
87 //#include <axlCore/axlFieldSpatialWriter.h>
88 #include <axlCore/axlOFFWriter.h>
89 #include "axlConeWriter.h"
90 #include "axlCylinderWriter.h"
92 #include "axlCircleArcWriter.h"
93 #include "axlEllipsoidWriter.h"
94 #include "axlLineWriter.h"
95 #include "axlPlaneWriter.h"
97 #include "axlTorusWriter.h"
99 #include "axlShapeWriter.h"
100 #include "axlPointWriter.h"
101 #include "axlSphereWriter.h"
102 #include "axlMeshWriter.h"
103 #include "axlDataDynamicWriter.h"
106 
109 #include "axlCompositeCurveWriter.h"
112 
113 
115 //#include <axlCore/axlFieldReader.h>
116 #include <axlCore/axlOFFReader.h>
119 #include <axlCore/axlConeReader.h>
123 #include <axlCore/axlLineReader.h>
124 #include <axlCore/axlPlaneReader.h>
126 #include <axlCore/axlMeshReader.h>
127 #include <axlCore/axlSphereReader.h>
128 #include <axlCore/axlPointReader.h>
129 #include <axlCore/axlTorusReader.h>
132 #include <axlCore/axlShapeReader.h>
136 
140 
142 
143 
144 //basic data
145 #include "axlPoint.h"
146 #include "axlCone.h"
147 #include "axlCylinder.h"
148 #include "axlEllipsoid.h"
149 #include "axlCircleArc.h"
150 #include "axlPlane.h"
151 #include "axlTorus.h"
152 #include "axlSphere.h"
153 #include "axlLine.h"
154 #include "axlDataDynamic.h"
155 #include "axlMesh.h"
156 #include "axlShape.h"
157 #include "axlSurfaceRevolution.h"
158 
160 #include "axlCompositeCurve.h"
161 #include "axlTabulatedCylinder.h"
162 #include "axlCurveOnParamSurface.h"
164 #include "axlShapeBSpline.h"
165 
166 
167 //for parameters
168 #include "axlInteger.h"
169 #include "axlDouble.h"
170 
171 
172 // /////////////////////////////////////////////////////////////////
173 // axlFactoryRegister implementation
174 // /////////////////////////////////////////////////////////////////
175 
177 
183 {
184 }
185 
186 
187 
189 
193 {
194 }
195 
197 {
198 
199  //basic object
200  dtkAbstractDataFactory::instance()->registerDataType("axlPoint", createaxlPoint);
201  dtkAbstractDataFactory::instance()->registerDataType("axlCylinder", createaxlCylinder);
202  dtkAbstractDataFactory::instance()->registerDataType("axlCone", createaxlCone);
203  dtkAbstractDataFactory::instance()->registerDataType("axlEllipsoid", createaxlEllipsoid);
204  dtkAbstractDataFactory::instance()->registerDataType("axlCircleArc", createaxlCircleArc);
205  dtkAbstractDataFactory::instance()->registerDataType("axlPlane", createaxlPlane);
206  dtkAbstractDataFactory::instance()->registerDataType("axlTorus", createaxlTorus);
207  dtkAbstractDataFactory::instance()->registerDataType("axlSphere", createaxlSphere);
208  dtkAbstractDataFactory::instance()->registerDataType("axlLine", createaxlLine);
209  dtkAbstractDataFactory::instance()->registerDataType("axlMesh", createaxlMesh);
210  dtkAbstractDataFactory::instance()->registerDataType("axlDataDynamic", createAxlDataDynamic);
211  dtkAbstractDataFactory::instance()->registerDataType("axlInteger", createaxlInteger);
212  dtkAbstractDataFactory::instance()->registerDataType("axlDouble", createaxlDouble);
213  dtkAbstractDataFactory::instance()->registerDataType("axlSurfaceRevolution", createaxlSurfaceRevolution);
215 
216  //Intialisation of Converters of atomic Data
227  //axlAbstractDataCompositeConverter::registered();
229 
230  //register axlCore processes
235  dtkAbstractProcessFactory::instance()->registerProcessType("axlLineCreator", createaxlLineCreator);
236  dtkAbstractProcessFactory::instance()->registerProcessType("axlSphereCreator", createaxlSphereCreator);
237  dtkAbstractProcessFactory::instance()->registerProcessType("axlTorusCreator", createaxlTorusCreator);
238  dtkAbstractProcessFactory::instance()->registerProcessType("axlCircleArcCreator", createaxlCircleArcCreator);
239  dtkAbstractProcessFactory::instance()->registerProcessType("axlBarycenterProcess", createaxlBarycenterProcess, "axlAbstractProcess");
240  dtkAbstractProcessFactory::instance()->registerProcessType("axlIntersection", createaxlIntersectionProcess, "axlAbstractProcess");
241  dtkAbstractProcessFactory::instance()->registerProcessType("axlToMesh", createaxlToMeshProcess, "MeshProcess");
242  //axlProcessProjection::registered();
243 
244 
245  //register some fields type
246  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricSurface", createaxlFieldParametricSurface);
247  dtkAbstractDataFactory::instance()->registerDataType("axlFieldSpatialPointDistance", createAxlFieldSpatialPointDistance);
248  dtkAbstractDataFactory::instance()->registerDataType("axlFieldSpatialCoordinates", createaxlFieldSpatialCoordinates);
249  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricVolume", createaxlFieldParametricVolume);
250  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricNormalVector", createaxlFieldParametricNormalVector);
251  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricCurveTangentVector", createaxlFieldParametricCurveTangentVector);
252  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricSurfaceTangentVector", createaxlFieldParametricSurfaceTangentVector);
253  dtkAbstractDataFactory::instance()->registerDataType("axlFieldParametricVolumeTangentVector", createaxlFieldParametricVolumeTangentVector);
254  dtkAbstractDataFactory::instance()->registerDataType("axlFieldDiscrete",createaxlFieldDiscrete);
255  //register some field process creator
256  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldSpatialCoordinatesCreator", createaxlFieldSpatialCoordinatesCreator, "axlAbstractProcess");
257  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldSpatialPointDistanceCreator", createaxlFieldSpatialPointDistanceCreator,"axlAbstractProcess");
258  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldParametricNormalVectorCreator", createaxlFieldParametricNormalVectorCreator,"axlAbstractProcess");
259  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldParametricCurveTangentVectorCreator", createaxlFieldParametricCurveTangentVectorCreator,"axlAbstractProcess");
260  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldParametricSurfaceTangentVectorCreator", createaxlFieldParametricSurfaceTangentVectorCreator,"axlAbstractProcess");
261  dtkAbstractProcessFactory::instance()->registerProcessType("axlFieldParametricVolumeTangentVectorCreator", createaxlFieldParametricVolumeTangentVectorCreator,"axlAbstractProcess");
262 
263  //register some readers
266  //dtkAbstractDataFactory::instance()->registerDataReaderType("axlConeReader",QStringList(), createaxlConeReader);
268  //dtkAbstractDataFactory::instance()->registerDataReaderType("axlCylinderReader",QStringList(), createaxlCylinderReader);
270  //dtkAbstractDataFactory::instance()->registerDataReaderType("axlCylinderParametricReader",QStringList(), createaxlCylinderParametricReader);
271  dtkAbstractDataFactory::instance()->registerDataReaderType("axlEllipsoidReader",QStringList(), createaxlEllipsoidReader);
272  dtkAbstractDataFactory::instance()->registerDataReaderType("axlLineReader",QStringList(), createaxlLineReader);
273  dtkAbstractDataFactory::instance()->registerDataReaderType("axlPlaneReader",QStringList(), createaxlPlaneReader);
274  dtkAbstractDataFactory::instance()->registerDataReaderType("axlPlaneParametricReader",QStringList(), createaxlPlaneParametricReader);
275  dtkAbstractDataFactory::instance()->registerDataReaderType("axlPointReader",QStringList(), createaxlPointReader);
276  dtkAbstractDataFactory::instance()->registerDataReaderType("axlSphereReader",QStringList(), createaxlSphereReader);
277  dtkAbstractDataFactory::instance()->registerDataReaderType("axlTorusReader",QStringList(), createaxlTorusReader);
278  dtkAbstractDataFactory::instance()->registerDataReaderType("axlTorusParametricReader",QStringList(), createaxlTorusParametricReader);
279  dtkAbstractDataFactory::instance()->registerDataReaderType("axlCircleArcReader",QStringList(), createaxlCircleArcReader);
280  dtkAbstractDataFactory::instance()->registerDataReaderType("axlShapeReader",QStringList(), createaxlShapeReader);
281  dtkAbstractDataFactory::instance()->registerDataReaderType("axlMeshReader",QStringList(), createaxlMeshReader);
282  dtkAbstractDataFactory::instance()->registerDataReaderType("axlSurfaceRevolutionReader",QStringList(), createaxlSurfaceRevolutionReader);
283  dtkAbstractDataFactory::instance()->registerDataReaderType("axlSurfaceRevolutionParametricReader",QStringList(), createaxlSurfaceRevolutionParametricReader);
284  dtkAbstractDataFactory::instance()->registerDataReaderType("axlCompositeCurveReader",QStringList(),createaxlCompositeCurveReader);
285  dtkAbstractDataFactory::instance()->registerDataReaderType("axlTabulatedCylinderReader",QStringList(),createaxlTabulatedCylinderReader);
288 
289  //register some writers
291  dtkAbstractDataFactory::instance()->registerDataWriterType("axlConeWriter", QStringList(), createaxlConeWriter);
292  dtkAbstractDataFactory::instance()->registerDataWriterType("axlCylinderWriter", QStringList(), createaxlCylinderWriter);
293  dtkAbstractDataFactory::instance()->registerDataWriterType("axlCylinderParametricWriter", QStringList(), createaxlCylinderParametricWriter);
294  dtkAbstractDataFactory::instance()->registerDataWriterType("axlEllipsoidWriter", QStringList(), createaxlEllipsoidWriter);
295  dtkAbstractDataFactory::instance()->registerDataWriterType("axlLineWriter", QStringList(), createaxlLineWriter);
296  dtkAbstractDataFactory::instance()->registerDataWriterType("axlPlaneWriter", QStringList(), createaxlPlaneWriter);
297  dtkAbstractDataFactory::instance()->registerDataWriterType("axlPlaneParametricWriter", QStringList(), createaxlPlaneParametricWriter);
298  dtkAbstractDataFactory::instance()->registerDataWriterType("axlPointWriter", QStringList(), createaxlPointWriter);
299  dtkAbstractDataFactory::instance()->registerDataWriterType("axlSphereWriter", QStringList(), createaxlSphereWriter);
300  dtkAbstractDataFactory::instance()->registerDataWriterType("axlTorusWriter", QStringList(), createaxlTorusWriter);
301  dtkAbstractDataFactory::instance()->registerDataWriterType("axlTorusParametricWriter", QStringList(), createaxlTorusParametricWriter);
302  dtkAbstractDataFactory::instance()->registerDataWriterType("axlCircleArcWriter", QStringList(), createaxlCircleArcWriter);
303  dtkAbstractDataFactory::instance()->registerDataWriterType("axlShapeWriter", QStringList(), createaxlShapeWriter);
304  dtkAbstractDataFactory::instance()->registerDataWriterType("axlSurfaceRevolutionWriter", QStringList(), createaxlSurfaceRevolutionWriter);
305  dtkAbstractDataFactory::instance()->registerDataWriterType("axlSurfaceRevolutionParametricWriter", QStringList(), createaxlSurfaceRevolutionParametricWriter);
306  dtkAbstractDataFactory::instance()->registerDataWriterType("axlCompositeCurveWriter", QStringList(), createaxlCompositeCurveWriter);
307  dtkAbstractDataFactory::instance()->registerDataWriterType("axlTabulatedCylinderWriter", QStringList(), createaxlTabulatedCylinderWriter);
309 
310 
311  //basic object
312  dtkAbstractDataFactory::instance()->registerDataType("axlPoint", createaxlPoint);
313  dtkAbstractDataFactory::instance()->registerDataType("axlCylinder", createaxlCylinder);
314  dtkAbstractDataFactory::instance()->registerDataType("axlCone", createaxlCone);
315  dtkAbstractDataFactory::instance()->registerDataType("axlEllipsoid", createaxlEllipsoid);
316  dtkAbstractDataFactory::instance()->registerDataType("axlCircleArc", createaxlCircleArc);
317  dtkAbstractDataFactory::instance()->registerDataType("axlPlane", createaxlPlane);
318  dtkAbstractDataFactory::instance()->registerDataType("axlTorus", createaxlTorus);
319  dtkAbstractDataFactory::instance()->registerDataType("axlSphere", createaxlSphere);
320  dtkAbstractDataFactory::instance()->registerDataType("axlLine", createaxlLine);
321  dtkAbstractDataFactory::instance()->registerDataType("axlMesh", createaxlMesh);
322  dtkAbstractDataFactory::instance()->registerDataType("axlDataDynamic", createAxlDataDynamic);
323  dtkAbstractDataFactory::instance()->registerDataType("axlInteger", createaxlInteger);
324  dtkAbstractDataFactory::instance()->registerDataType("axlDouble", createaxlDouble);
325  dtkAbstractDataFactory::instance()->registerDataType("axlSurfaceRevolution", createaxlSurfaceRevolution);
326  dtkAbstractDataFactory::instance()->registerDataType("axlSurfaceRevolutionParametric", createaxlSurfaceRevolutionParametric);
327  dtkAbstractDataFactory::instance()->registerDataType("axlCompositeCurve",createaxlCompositeCurve);
328  dtkAbstractDataFactory::instance()->registerDataType("axlTabulatedCylinder",createaxlTabulatedCylinder);
329  dtkAbstractDataFactory::instance()->registerDataType("axlCurveOnParamSurface",createaxlCurveOnParamSurface);
330  dtkAbstractDataFactory::instance()->registerDataType("axlTrimmedParametricSurface",createaxlTrimmedParametricSurface);
332 
333 }
334 
335 
337 {
338 
339 }
340 
341 
342 // /////////////////////////////////////////////////////////////////
343 // axlFactoryRegister documentation
344 // /////////////////////////////////////////////////////////////////
345 
dtkAbstractData * createaxlCompositeCurve(void)
dtkAbstractData * createaxlCylinder(void)
dtkAbstractData * createaxlFieldParametricSurfaceTangentVector(void)
dtkAbstractDataReader * createaxlTorusParametricReader(void)
~axlFactoryRegister(void)
Destroys the axlFactoryRegister.
dtkAbstractDataWriter * createaxlPlaneWriter(void)
dtkAbstractData * createaxlTrimmedParametricSurface(void)
static bool registered(void)
static bool registered(void)
static bool registered(void)
Register the writer in the factory.
dtkAbstractData * createaxlMesh(void)
Definition: axlMesh.cpp:1238
dtkAbstractDataWriter * createaxlSurfaceRevolutionParametricWriter(void)
dtkAbstractData * createaxlFieldDiscrete(void)
dtkAbstractProcess * createaxlFieldSpatialPointDistanceCreator(void)
dtkAbstractDataReader * createaxlPlaneReader(void)
dtkAbstractData * createAxlFieldSpatialPointDistance(void)
dtkAbstractDataReader * createaxlTabulatedCylinderReader(void)
dtkAbstractDataWriter * createaxlSphereWriter(void)
dtkAbstractProcess * createaxlSphereCreator(void)
dtkAbstractData * createaxlTorus(void)
Definition: axlTorus.cpp:273
dtkAbstractDataWriter * createaxlPointWriter(void)
static bool registered(void)
Emit a signal edgesSeleted.
dtkAbstractDataWriter * createaxlPlaneParametricWriter(void)
static bool registered(void)
dtkAbstractData * createaxlSurfaceRevolutionParametric(void)
dtkAbstractProcess * createaxlLineCreator(void)
dtkAbstractDataWriter * createaxlLineWriter(void)
dtkAbstractDataReader * createaxlCompositeCurveReader(void)
dtkAbstractDataReader * createaxlTorusReader(void)
dtkAbstractDataWriter * createaxlTorusWriter(void)
dtkAbstractData * createaxlFieldParametricVolumeTangentVector(void)
dtkAbstractData * createAxlDataDynamic(void)
dtkAbstractDataWriter * createaxlCylinderWriter(void)
static bool registered(void)
static bool registered(void)
Register this reader type in the factory.
dtkAbstractDataReader * createaxlSurfaceRevolutionReader(void)
dtkAbstractDataReader * createaxlSurfaceRevolutionParametricReader(void)
dtkAbstractProcess * createaxlIntersectionProcess(void)
dtkAbstractProcess * createaxlCircleArcCreator(void)
dtkAbstractData * createaxlFieldSpatialCoordinates(void)
dtkAbstractData * createaxlPoint(void)
Definition: axlPoint.cpp:599
dtkAbstractDataWriter * createaxlCircleArcWriter(void)
dtkAbstractDataWriter * createaxlSurfaceRevolutionWriter(void)
dtkAbstractData * createaxlDouble(void)
Definition: axlDouble.cpp:147
dtkAbstractDataWriter * createaxlEllipsoidWriter(void)
dtkAbstractData * createaxlCircleArc(void)
dtkAbstractProcess * createaxlFieldParametricNormalVectorCreator(void)
dtkAbstractProcess * createaxlFieldParametricSurfaceTangentVectorCreator(void)
dtkAbstractProcess * createaxlFieldParametricCurveTangentVectorCreator(void)
dtkAbstractProcess * createaxlBarycenterProcess(void)
dtkAbstractData * createaxlFieldParametricCurveTangentVector(void)
dtkAbstractData * createaxlCurveOnParamSurface(void)
dtkAbstractData * createaxlFieldParametricNormalVector(void)
dtkAbstractData * createaxlEllipsoid(void)
dtkAbstractDataReader * createaxlSphereReader(void)
dtkAbstractData * createaxlFieldParametricVolume(void)
static bool registered(void)
dtkAbstractData * createaxlLine(void)
Definition: axlLine.cpp:353
dtkAbstractData * createaxlFieldParametricSurface(void)
dtkAbstractDataReader * createaxlLineReader(void)
dtkAbstractDataWriter * createaxlCompositeCurveWriter(void)
dtkAbstractDataWriter * createaxlTabulatedCylinderWriter(void)
dtkAbstractDataWriter * createaxlTorusParametricWriter(void)
dtkAbstractDataWriter * createaxlCylinderParametricWriter(void)
static void initialized(void)
static bool registered(void)
dtkAbstractData * createaxlSphere(void)
Definition: axlSphere.cpp:447
dtkAbstractData * createaxlTabulatedCylinder(void)
dtkAbstractData * createaxlSurfaceRevolution(void)
dtkAbstractProcess * createaxlFieldParametricVolumeTangentVectorCreator(void)
dtkAbstractDataWriter * createaxlConeWriter(void)
dtkAbstractDataReader * createaxlShapeReader(void)
dtkAbstractDataReader * createaxlCircleArcReader(void)
dtkAbstractData * createaxlInteger(void)
Definition: axlInteger.cpp:154
dtkAbstractDataWriter * createaxlShapeWriter(void)
dtkAbstractProcess * createaxlTorusCreator(void)
static bool registered(void)
dtkAbstractProcess * createaxlFieldSpatialCoordinatesCreator(void)
dtkAbstractDataReader * createaxlPlaneParametricReader(void)
dtkAbstractData * createaxlPlane(void)
Definition: axlPlane.cpp:292
static bool registered(void)
dtkAbstractProcess * createaxlToMeshProcess(void)
Definition: axlToMesh.cpp:148
dtkAbstractDataReader * createaxlEllipsoidReader(void)
static bool registered(void)
dtkAbstractDataReader * createaxlPointReader(void)
dtkAbstractData * createaxlCone(void)
Definition: axlCone.cpp:363
static bool registered(void)
dtkAbstractDataReader * createaxlMeshReader(void)