root/OpenSceneGraph/trunk/src/osgWrappers/genwrapper.conf @ 10171

Revision 10171, 17.5 kB (checked in by robert, 6 years ago)

Refactored the Registry::ReadFileCallback?, WriteFileCallback? and ReaderWriter::Options to they are now defined in their own header and in the osgDB namespace.

Introduced a new FindFileCallback? to Registry to compliement the existing ReadFileCallback? and WriteFileCallback?.

Added support for assign Find, Read and WriteFileCallbacks? to osdDB::Options to enable plugins/applications to override the callbacks just for that
read/write call and any nested file operations

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1#############################################################################
2#                                                                           #
3#                     GenWrapper Configuration File                         #
4#                                                                           #
5#############################################################################
6
7
8configure library "osgFX"
9        dependency unix "-losgUtil -losgDB"
10end
11
12configure library "osgParticle"
13        dependency unix "-losgUtil -losgDB"
14end
15
16configure library "osgGA"
17        dependency unix "-losgUtil"
18end
19
20configure library "osgSim"
21        dependency unix "-losgUtil -losgText -losgDB"
22end
23
24configure library "osgTerrain"
25        dependency win32-debug      "gdal_iD.lib"
26        dependency win32-release    "gdal_i.lib"
27        dependency unix "-losgDB -losgUtil -losgFX"
28end
29
30configure library "osgText"
31        dependency unix "-losgDB"
32end
33
34configure library "osgVolume"
35        dependency unix "-losgUtil -losgDB -losgGA"
36end
37
38configure library "osgViewer"
39        dependency unix "-losgUtil -losgDB -losgGA -losgText"
40end
41
42#############################################################################
43
44ignore file "osgDB/fstream"
45
46ignore file "osgUtil/PrintVisitor"
47ignore file "osgUtil/OperationArrayFunctor"
48
49ignore file "osgViewer/api/X11/GraphicsWindowX11"
50ignore file "osgViewer/api/Win32/GraphicsWindowWin32"
51ignore file "osgViewer/api/Cocoa/GraphicsWindowCocoa"
52
53suppress reflector "osgUtil::AddRangeFunctor"
54suppress reflector "osgUtil::MultiplyRangeFunctor"
55
56suppress reflector "CPluginFunction"
57suppress reflector "PluginFunctionProxy"
58
59suppress reflector "osgWidget::UIObjectParent"
60
61
62#############################################################################
63
64suppress reflector "osgShadow::ProjectionShadowMap"
65
66suppress reflector "osgShadow::DebugShadowMap::ViewData"
67suppress reflector "osgShadow::DebugShadowMap::ViewData::PolytopeGeometry"
68suppress reflector "osgShadow::ViewDependentShadowTechnique::ViewData"
69
70suppress reflector "osgShadow::MinimalDrawBoundsShadowMap::META_ViewDependentShadowTechniqueData"
71suppress reflector "osgShadow::DebugShadowMap::META_ViewDependentShadowTechniqueData"
72suppress reflector "osgShadow::MinimalCullBoundsShadowMap::META_ViewDependentShadowTechniqueData"
73suppress reflector "osgShadow::MinimalShadowMap::META_ViewDependentShadowTechniqueData"
74suppress reflector "osgShadow::ProjectionShadowMap::META_ViewDependentShadowTechniqueData"
75suppress reflector "osgShadow::StandardShadowMap::META_ViewDependentShadowTechniqueData"
76suppress reflector "osgShadow::ViewDependentShadowTechnique::META_ViewDependentShadowTechniqueData"
77
78
79suppress reflector "osgShadow::ViewDependentShadowTechnique::getViewDependentData"
80suppress reflector "osgShadow::ViewDependentShadowTechnique::setViewDependentData"
81
82#############################################################################
83
84configure file /osg\/GraphicsContext/
85        emit before "#include <osg/Camera>
86        "
87end
88
89configure file /osgViewer\/ViewerBase/
90        emit before "#include <osgViewer/View>
91        "
92end
93
94configure file /osg\/BoundingBox/
95        emit before "#include <osg/BoundingSphere>
96        "
97end
98
99configure file /osg\/BoundingSphere/
100        emit before "#include <osg/BoundingBox>
101        "
102end
103
104configure file /osgDB\/ReaderWriter/
105        emit before "#include <osgDB/Options>
106        "
107end
108
109#############################################################################
110
111# add <io_utils> header to Plane, Quat and Vec* files
112
113configure file /osg\/(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
114        emit before "#include <osg/io_utils>
115        "
116end
117
118# add ReaderWriter and Comparator objects to Vec*, Quat and Plane classes
119
120configure reflector /osg::(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
121        readerwriter "osgIntrospection::StdReaderWriter<reflected_type>"
122        comparator "osgIntrospection::PartialOrderComparator<reflected_type>"
123end
124
125
126# add StateGraph includes in RenderLeaf.cpp
127
128configure file /osgUtil\/RenderLeaf/
129        emit before "#include <osgUtil/StateGraph>
130        "
131end
132
133#############################################################################
134
135# Doxygen fails to detect that std::vector<T> is a base class for
136# osg::Vector*, so we need to specify that manually
137
138configure reflector "osgText::VectorUInt"
139        add base "std::vector<unsigned int>"
140end
141
142
143#############################################################################
144
145# Doxygen/genwrapper is not coping with the new MixinVector so disable associated wrappers
146
147suppress reflector /osg::TemplateIndexArray< GLbyte.*/
148suppress reflector /osg::TemplateIndexArray< GLubyte.*/
149suppress reflector /osg::TemplateIndexArray< GLshort.*/
150suppress reflector /osg::TemplateIndexArray< GLushort.*/
151suppress reflector /osg::TemplateIndexArray< GLint.*/
152suppress reflector /osg::TemplateIndexArray< GLuint.*/
153suppress reflector /osg::TemplateArray< GLfloat.*/
154suppress reflector /osg::TemplateArray< GLdouble.*/
155suppress reflector /osg::TemplateArray< osg::Vec2\s*\,.*/
156suppress reflector /osg::TemplateArray< osg::Vec3\s*\,.*/
157suppress reflector /osg::TemplateArray< osg::Vec4\s*\,.*/
158suppress reflector /osg::TemplateArray< osg::Vec2d\s*\,.*/
159suppress reflector /osg::TemplateArray< osg::Vec3d\s*\,.*/
160suppress reflector /osg::TemplateArray< osg::Vec4d\s*\,.*/
161suppress reflector /osg::TemplateArray< osg::Vec2b\s*\,.*/
162suppress reflector /osg::TemplateArray< osg::Vec3b\s*\,.*/
163suppress reflector /osg::TemplateArray< osg::Vec4b\s*\,.*/
164suppress reflector /osg::TemplateArray< osg::Vec2s\s*\,.*/
165suppress reflector /osg::TemplateArray< osg::Vec3s\s*\,.*/
166suppress reflector /osg::TemplateArray< osg::Vec4s\s*\,.*/
167suppress reflector /osg::TemplateArray< osg::Vec4ub\s*\,.*/
168
169
170suppress reflector "osg::DrawArrayLengths"
171suppress reflector "osg::DrawElementsUByte"
172suppress reflector "osg::DrawElementsUShort"
173suppress reflector "osg::DrawElementsUInt"
174
175suppress reflector "osg::VectorGLsizei"
176suppress reflector "osg::VectorGLubyte"
177suppress reflector "osg::VectorGLushort"
178suppress reflector "osg::VectorGLuint"
179
180suppress reflector "osg::MixinVector< GLsizei >"
181suppress reflector "osg::MixinVector< GLubyte >"
182suppress reflector "osg::MixinVector< GLushort >"
183suppress reflector "osg::MixinVector< GLuint >"
184
185suppress reflector "OpenThreads::Atomic"
186suppress reflector "OpenThreads::AtomicPtr"
187
188suppress reflector "osg::BoundingBoxImpl< osg::Vec3f >"
189suppress reflector "osg::BoundingBoxImpl< osg::Vec3d >"
190
191suppress reflector "osg::BoundingSphereImpl< osg::Vec3f >"
192suppress reflector "osg::BoundingSphereImpl< osg::Vec3d >"
193
194suppress reflector "osgAnimation::TemplateTarget< osg::Quat >"
195suppress reflector "osgAnimation::TemplateTarget< osg::Vec3 >"
196suppress reflector "osgAnimation::TemplateTarget< osg::Vec4 >"
197suppress reflector "osgAnimation::TemplateTarget< osg::Vec2 >"
198suppress reflector "osgAnimation::TemplateTarget< float >"
199suppress reflector "osgAnimation::TemplateTarget< double >"
200
201suppress reflector "osgAnimation::TemplateLinearInterpolator< double, double >"
202suppress reflector "osgAnimation::TemplateLinearInterpolator< float, float >"
203suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec2, osg::Vec2 >"
204suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osg::Vec3 >"
205suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osgAnimation::Vec3Packed >"
206suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec4, osg::Vec4 >"
207suppress reflector "osgAnimation::TemplateSphericalLinearInterpolator< osg::Quat, osg::Quat >"
208
209suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< float, osgAnimation::FloatCubicBezier >"
210suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< double, osgAnimation::DoubleCubicBezier >"
211suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec2, osgAnimation::Vec2CubicBezier >"
212suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec3, osgAnimation::Vec3CubicBezier >"
213suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec4, osgAnimation::Vec4CubicBezier >"
214
215suppress reflector "osgAnimation::TemplateKeyframe< float >"
216suppress reflector "osgAnimation::TemplateKeyframeContainer< float >"
217   
218suppress reflector "osgAnimation::TemplateKeyframe< double >"
219suppress reflector "osgAnimation::TemplateKeyframeContainer< double >"
220
221suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec2 >"
222suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec2 >"
223
224suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec3 >"
225suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec3 >"
226
227suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec4 >"
228suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec4 >"
229
230suppress reflector "osgAnimation::TemplateKeyframe< osg::Quat >"
231suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Quat >"
232
233suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3Packed >"
234suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3Packed >"
235
236suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::FloatCubicBezier >"
237suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::FloatCubicBezier >"
238   
239suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::DoubleCubicBezier >"
240suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::DoubleCubicBezier >"
241   
242suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec2CubicBezier >"
243suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec2CubicBezier >"
244   
245suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3CubicBezier >"
246suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3CubicBezier >"
247   
248suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec4CubicBezier >"
249suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec4CubicBezier >"
250
251suppress reflector "osgAnimation::TemplateCubicBezier< float >"
252suppress reflector "osgAnimation::TemplateCubicBezier< double >"
253suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec2 >"
254suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec3 >"
255suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec4 >"
256
257
258suppress reflector "osgAnimation::std::vector< osg::ref_ptr< osgAnimation::Channel >  >"
259suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleLinearSampler >"
260suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatLinearSampler >"
261
262suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2LinearSampler >"
263suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3LinearSampler >"
264suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4LinearSampler >"
265suppress reflector "osgAnimation::TemplateChannel< osgAnimation::QuatSphericalLinearSampler >"
266
267suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatCubicBezierSampler >"
268suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleCubicBezierSampler >"
269suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2CubicBezierSampler >"
270suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3CubicBezierSampler >"
271suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4CubicBezierSampler >"
272
273#############################################################################
274
275# StateSet and related types need some advanced tweaking
276
277configure reflector "std::map< osg::StateAttribute::GLMode, osg::StateAttribute::GLModeValue >"
278        replace with "STD_MAP_REFLECTOR_WITH_TYPES(std::map< osg::StateAttribute::GLMode COMMA  osg::StateAttribute::GLModeValue >, osg::StateAttribute::GLMode, osg::StateAttribute::Values)"
279end
280
281configure reflector "osg::StateSet"
282
283        # remove indexed property "Mode" because its index would not belong to a
284        # finite set of values
285               
286        configure property "Mode"
287                replace with ""
288        end     
289       
290end
291
292configure reflector "osg::Geometry"
293
294        # define the count method for some Property
295 
296               
297        configure property "TexCoordData"
298                count_method "__unsigned_int__getNumTexCoordArrays"
299        end
300
301        configure property "TexCoordIndices"
302                count_method "__unsigned_int__getNumTexCoordArrays"
303        end
304
305        configure property "VertexAttribBinding"
306                count_method "__unsigned_int__getNumVertexAttribArrays"
307        end
308
309        configure property "VertexAttribData"
310                count_method "__unsigned_int__getNumVertexAttribArrays"
311        end
312
313        configure property "VertexAttribIndices"
314                count_method "__unsigned_int__getNumVertexAttribArrays"
315        end
316
317        configure property "VertexAttribNormalize"
318                count_method "__unsigned_int__getNumVertexAttribArrays"
319        end
320       
321end
322
323#############################################################################
324
325# Doxygen fails to detect that /osg::Texture(1D|2D|3D|Rectangle)/ and
326# osgText::Font::GlyphTexture are not-abstract class, so we need
327# to specify that manually
328
329configure reflector /osg::Texture(1D|2D|3D|Rectangle)/
330    object-type
331end
332
333configure reflector "osgText::Font::GlyphTexture"
334    object-type
335end
336
337#############################################################################
338
339# must suppress reflector for osgDB::Output because some of its methods
340# are not supported by osgIntrospection (they return non-const references)
341
342suppress reflector "osgDB::Output"
343
344#############################################################################
345
346# some types are incorrectly detected as value type or object type. Here we
347# specify the type kind explicitly
348
349configure reflector "OpenThreads::Mutex"
350        object-type
351end
352
353configure reflector "OpenThreads::Condition"
354        object-type
355end
356
357configure reflector "OpenThreads::Block"
358        object-type
359end
360
361configure reflector "OpenThreads::BlockCount"
362        object-type
363end
364
365configure reflector "OpenThreads::Barrier"
366        object-type
367end
368
369configure reflector "OpenThreads::ReentrantMutex"
370        object-type
371end
372
373configure reflector "OpenThreads::ReadWriteMutex"
374        object-type
375end
376
377configure reflector "osg::DeleteHandler"
378        object-type
379end
380
381configure reflector "osg::GraphicsContext"
382        abstract-object-type
383end
384
385#############################################################################
386
387# Suppress scoped lock template
388
389suppress reflector "OpenThreads::ScopedLock< OpenThreads::Mutex >"
390
391#############################################################################
392
393# Suppress nested nested class method
394
395configure reflector "osgShadow::OccluderGeometry"
396       configure method /.*_Edge_.*/
397               replace with ""
398       end
399end
400
401#############################################################################
402
403# Doxygen doesn't parse ReadFunc and WriteFunc correctly...
404
405configure reflector "osgDB::DotOsgWrapper::ReadFunc"
406        replace with "TYPE_NAME_ALIAS(bool (*)(osg::Object&,osgDB::Input&), osgDB::DotOsgWrapper::ReadFunc)
407        "
408end
409
410configure reflector "osgDB::DotOsgWrapper::WriteFunc"
411        replace with "TYPE_NAME_ALIAS(bool (*)(const osg::Object&,osgDB::Output&), osgDB::DotOsgWrapper::WriteFunc)
412        "
413end
414
415#############################################################################
416
417# temporary workaround for problems related to ambiguous name resolution
418
419suppress reflector "osg::ref_ptr< const osg::StateAttribute >"
420suppress reflector "osg::ref_ptr< const osgFX::Effect >"
421
422#############################################################################
423
424# Doxygen incorrectly parses function typedefs as methods
425
426suppress reflector "osg::VertexProgram::Extensions"
427suppress reflector "osg::StencilTwoSided::Extensions"
428suppress reflector "osg::Texture3D::Extensions"
429suppress reflector "osg::GL2Extensions"
430suppress reflector "osg::Drawable::Extensions"
431suppress reflector "osg::BufferObject::Extensions"
432suppress reflector "osg::FBOExtensions"
433suppress reflector "osg::Drawable::Extensions"
434suppress reflector "osg::BlendColor::Extensions"
435suppress reflector "osg::BlendEquation::Extensions"
436suppress reflector "osg::BlendFunc::Extensions"
437suppress reflector "osg::FragmentProgram::Extensions"
438suppress reflector "osg::Multisample::Extensions"
439suppress reflector "osg::Point::Extensions"
440suppress reflector "osg::ClampColor::Extensions"
441suppress reflector "osg::Texture::Extensions"
442suppress reflector "osg::Texture2DArray::Extensions"
443suppress reflector "osgSim::ShapeAttribute"
444
445configure reflector "osg::State"
446        configure method "__typedef__void__APIENTRY_P1"
447                replace with ""
448        end
449end
450
451configure reflector "osgWidget::Window::Getter"
452    replace with ""
453end
454
455configure reflector "osgWidget::MouseHandler::MouseAction"
456    replace with ""
457end
458
459configure reflector "osgWidget::MouseHandler::MouseEvent"
460    replace with ""
461end
462
463
464
465#############################################################################
466
467# avoid functions that use protected types, since those are not handled
468# currently
469
470configure reflector "osgSim::OverlayNode"
471        configure method /.*getOverlayData.*/
472                replace with ""
473        end
474end
475
476configure reflector "osg::Shader"
477        configure method /.*_PerContextShader_.*/
478                replace with ""
479        end
480end
481
482configure reflector "osg::State"
483        configure method /.*_(ModeStack|AttributeStack|ModeMap|AttributeMap|UniformMap)_.*/
484                replace with ""
485        end
486end
487
488configure reflector "osgUtil::Optimizer::TextureAtlasBuilder"
489        configure method /.*_Source_.*/
490                replace with ""
491        end
492end
493
494configure reflector "osgUtil::Tessellator"
495        configure method /.*_VertexPtrToIndexMap_.*/
496                replace with ""
497        end
498end
499
500configure reflector "osgDB::Registry"
501        configure method /.*_(DynamicLibraryList_iterator|DotOsgWrapperMap)_.*/
502                replace with ""
503        end
504end
505
506configure reflector "osgText::FadeText"
507        configure method /.*_ViewBlendColou?rMap_.*/
508                replace with ""
509        end
510end
511
512configure reflector "osgParticle::PrecipitationEffect"
513        configure method /.*_PrecipitationDrawableSet_.*/
514                replace with ""
515        end
516end
517
518configure reflector "osgManipulator::MotionCommand"
519        configure method /.*_SelectionList_.*/
520                replace with ""
521        end
522end
Note: See TracBrowser for help on using the browser.