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

Revision 9774, 12.6 kB (checked in by robert, 5 years ago)

Updated wrappers to works with doxygen 1.5.8 output.

  • 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/OperationArrayFunctor"
47
48ignore file "osgViewer/api/X11/GraphicsWindowX11"
49ignore file "osgViewer/api/Win32/GraphicsWindowWin32"
50ignore file "osgViewer/api/Cocoa/GraphicsWindowCocoa"
51
52suppress reflector "osgUtil::AddRangeFunctor"
53suppress reflector "osgUtil::MultiplyRangeFunctor"
54
55suppress reflector "CPluginFunction"
56suppress reflector "PluginFunctionProxy"
57
58suppress reflector "osgWidget::UIObjectParent"
59
60
61#############################################################################
62
63suppress reflector "osgShadow::ProjectionShadowMap"
64
65suppress reflector "osgShadow::DebugShadowMap::ViewData"
66suppress reflector "osgShadow::DebugShadowMap::ViewData::PolytopeGeometry"
67suppress reflector "osgShadow::ViewDependentShadowTechnique::ViewData"
68
69suppress reflector "osgShadow::MinimalDrawBoundsShadowMap::META_ViewDependentShadowTechniqueData"
70suppress reflector "osgShadow::DebugShadowMap::META_ViewDependentShadowTechniqueData"
71suppress reflector "osgShadow::MinimalCullBoundsShadowMap::META_ViewDependentShadowTechniqueData"
72suppress reflector "osgShadow::MinimalShadowMap::META_ViewDependentShadowTechniqueData"
73suppress reflector "osgShadow::ProjectionShadowMap::META_ViewDependentShadowTechniqueData"
74suppress reflector "osgShadow::StandardShadowMap::META_ViewDependentShadowTechniqueData"
75suppress reflector "osgShadow::ViewDependentShadowTechnique::META_ViewDependentShadowTechniqueData"
76
77
78suppress reflector "osgShadow::ViewDependentShadowTechnique::getViewDependentData"
79suppress reflector "osgShadow::ViewDependentShadowTechnique::setViewDependentData"
80
81#############################################################################
82
83configure file /osg\/GraphicsContext/
84        emit before "#include <osg/Camera>
85        "
86end
87
88configure file /osgViewer\/ViewerBase/
89        emit before "#include <osgViewer/View>
90        "
91end
92
93configure file /osg\/BoundingBox/
94        emit before "#include <osg/BoundingSphere>
95        "
96end
97
98configure file /osg\/BoundingSphere/
99        emit before "#include <osg/BoundingBox>
100        "
101end
102
103#############################################################################
104
105# add <io_utils> header to Plane, Quat and Vec* files
106
107configure file /osg\/(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
108        emit before "#include <osg/io_utils>
109        "
110end
111
112# add ReaderWriter and Comparator objects to Vec*, Quat and Plane classes
113
114configure reflector /osg::(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
115        readerwriter "osgIntrospection::StdReaderWriter<reflected_type>"
116        comparator "osgIntrospection::PartialOrderComparator<reflected_type>"
117end
118
119
120# add StateGraph includes in RenderLeaf.cpp
121
122configure file /osgUtil\/RenderLeaf/
123        emit before "#include <osgUtil/StateGraph>
124        "
125end
126
127#############################################################################
128
129# Doxygen fails to detect that std::vector<T> is a base class for
130# osg::Vector*, so we need to specify that manually
131
132configure reflector "osgText::VectorUInt"
133        add base "std::vector<unsigned int>"
134end
135
136
137#############################################################################
138
139# Doxygen/genwrapper is not coping with the new MixinVector so disable associated wrappers
140
141suppress reflector /osg::TemplateIndexArray< GLbyte.*/
142suppress reflector /osg::TemplateIndexArray< GLubyte.*/
143suppress reflector /osg::TemplateIndexArray< GLshort.*/
144suppress reflector /osg::TemplateIndexArray< GLushort.*/
145suppress reflector /osg::TemplateIndexArray< GLint.*/
146suppress reflector /osg::TemplateIndexArray< GLuint.*/
147suppress reflector /osg::TemplateArray< GLfloat.*/
148suppress reflector /osg::TemplateArray< GLdouble.*/
149suppress reflector /osg::TemplateArray< osg::Vec2\s*\,.*/
150suppress reflector /osg::TemplateArray< osg::Vec3\s*\,.*/
151suppress reflector /osg::TemplateArray< osg::Vec4\s*\,.*/
152suppress reflector /osg::TemplateArray< osg::Vec2d\s*\,.*/
153suppress reflector /osg::TemplateArray< osg::Vec3d\s*\,.*/
154suppress reflector /osg::TemplateArray< osg::Vec4d\s*\,.*/
155suppress reflector /osg::TemplateArray< osg::Vec2b\s*\,.*/
156suppress reflector /osg::TemplateArray< osg::Vec3b\s*\,.*/
157suppress reflector /osg::TemplateArray< osg::Vec4b\s*\,.*/
158suppress reflector /osg::TemplateArray< osg::Vec2s\s*\,.*/
159suppress reflector /osg::TemplateArray< osg::Vec3s\s*\,.*/
160suppress reflector /osg::TemplateArray< osg::Vec4s\s*\,.*/
161suppress reflector /osg::TemplateArray< osg::Vec4ub\s*\,.*/
162
163
164suppress reflector "osg::DrawArrayLengths"
165suppress reflector "osg::DrawElementsUByte"
166suppress reflector "osg::DrawElementsUShort"
167suppress reflector "osg::DrawElementsUInt"
168
169suppress reflector "osg::VectorGLsizei"
170suppress reflector "osg::VectorGLubyte"
171suppress reflector "osg::VectorGLushort"
172suppress reflector "osg::VectorGLuint"
173
174suppress reflector "osg::MixinVector< GLsizei >"
175suppress reflector "osg::MixinVector< GLubyte >"
176suppress reflector "osg::MixinVector< GLushort >"
177suppress reflector "osg::MixinVector< GLuint >"
178
179suppress reflector "OpenThreads::Atomic"
180suppress reflector "OpenThreads::AtomicPtr"
181
182suppress reflector "osg::BoundingBoxImpl< osg::Vec3f >"
183suppress reflector "osg::BoundingBoxImpl< osg::Vec3d >"
184
185suppress reflector "osg::BoundingSphereImpl< osg::Vec3f >"
186suppress reflector "osg::BoundingSphereImpl< osg::Vec3d >"
187
188#############################################################################
189
190# StateSet and related types need some advanced tweaking
191
192configure reflector "std::map< osg::StateAttribute::GLMode, osg::StateAttribute::GLModeValue >"
193        replace with "STD_MAP_REFLECTOR_WITH_TYPES(std::map< osg::StateAttribute::GLMode COMMA  osg::StateAttribute::GLModeValue >, osg::StateAttribute::GLMode, osg::StateAttribute::Values)"
194end
195
196configure reflector "osg::StateSet"
197
198        # remove indexed property "Mode" because its index would not belong to a
199        # finite set of values
200               
201        configure property "Mode"
202                replace with ""
203        end     
204       
205end
206
207configure reflector "osg::Geometry"
208
209        # define the count method for some Property
210 
211               
212        configure property "TexCoordData"
213                count_method "__unsigned_int__getNumTexCoordArrays"
214        end
215
216        configure property "TexCoordIndices"
217                count_method "__unsigned_int__getNumTexCoordArrays"
218        end
219
220        configure property "VertexAttribBinding"
221                count_method "__unsigned_int__getNumVertexAttribArrays"
222        end
223
224        configure property "VertexAttribData"
225                count_method "__unsigned_int__getNumVertexAttribArrays"
226        end
227
228        configure property "VertexAttribIndices"
229                count_method "__unsigned_int__getNumVertexAttribArrays"
230        end
231
232        configure property "VertexAttribNormalize"
233                count_method "__unsigned_int__getNumVertexAttribArrays"
234        end
235       
236end
237
238#############################################################################
239
240# Doxygen fails to detect that /osg::Texture(1D|2D|3D|Rectangle)/ and
241# osgText::Font::GlyphTexture are not-abstract class, so we need
242# to specify that manually
243
244configure reflector /osg::Texture(1D|2D|3D|Rectangle)/
245    object-type
246end
247
248configure reflector "osgText::Font::GlyphTexture"
249    object-type
250end
251
252#############################################################################
253
254# must suppress reflector for osgDB::Output because some of its methods
255# are not supported by osgIntrospection (they return non-const references)
256
257suppress reflector "osgDB::Output"
258
259#############################################################################
260
261# some types are incorrectly detected as value type or object type. Here we
262# specify the type kind explicitly
263
264configure reflector "OpenThreads::Mutex"
265        object-type
266end
267
268configure reflector "OpenThreads::Condition"
269        object-type
270end
271
272configure reflector "OpenThreads::Block"
273        object-type
274end
275
276configure reflector "OpenThreads::BlockCount"
277        object-type
278end
279
280configure reflector "OpenThreads::Barrier"
281        object-type
282end
283
284configure reflector "OpenThreads::ReentrantMutex"
285        object-type
286end
287
288configure reflector "OpenThreads::ReadWriteMutex"
289        object-type
290end
291
292configure reflector "osg::DeleteHandler"
293        object-type
294end
295
296configure reflector "osg::GraphicsContext"
297        abstract-object-type
298end
299
300#############################################################################
301
302# Suppress scoped lock template
303
304suppress reflector "OpenThreads::ScopedLock< OpenThreads::Mutex >"
305
306#############################################################################
307
308# Suppress nested nested class method
309
310configure reflector "osgShadow::OccluderGeometry"
311       configure method /.*_Edge_.*/
312               replace with ""
313       end
314end
315
316#############################################################################
317
318# Doxygen doesn't parse ReadFunc and WriteFunc correctly...
319
320configure reflector "osgDB::DotOsgWrapper::ReadFunc"
321        replace with "TYPE_NAME_ALIAS(bool (*)(osg::Object&,osgDB::Input&), osgDB::DotOsgWrapper::ReadFunc)
322        "
323end
324
325configure reflector "osgDB::DotOsgWrapper::WriteFunc"
326        replace with "TYPE_NAME_ALIAS(bool (*)(const osg::Object&,osgDB::Output&), osgDB::DotOsgWrapper::WriteFunc)
327        "
328end
329
330#############################################################################
331
332# temporary workaround for problems related to ambiguous name resolution
333
334suppress reflector "osg::ref_ptr< const osg::StateAttribute >"
335suppress reflector "osg::ref_ptr< const osgFX::Effect >"
336
337#############################################################################
338
339# Doxygen incorrectly parses function typedefs as methods
340
341suppress reflector "osg::VertexProgram::Extensions"
342suppress reflector "osg::StencilTwoSided::Extensions"
343suppress reflector "osg::Texture3D::Extensions"
344suppress reflector "osg::GL2Extensions"
345suppress reflector "osg::Drawable::Extensions"
346suppress reflector "osg::BufferObject::Extensions"
347suppress reflector "osg::FBOExtensions"
348suppress reflector "osg::Drawable::Extensions"
349suppress reflector "osg::BlendColor::Extensions"
350suppress reflector "osg::BlendEquation::Extensions"
351suppress reflector "osg::BlendFunc::Extensions"
352suppress reflector "osg::FragmentProgram::Extensions"
353suppress reflector "osg::Multisample::Extensions"
354suppress reflector "osg::Point::Extensions"
355suppress reflector "osg::ClampColor::Extensions"
356suppress reflector "osg::Texture::Extensions"
357suppress reflector "osg::Texture2DArray::Extensions"
358suppress reflector "osgSim::ShapeAttribute"
359
360configure reflector "osg::State"
361        configure method "__typedef__void__APIENTRY_P1"
362                replace with ""
363        end
364end
365
366configure reflector "osgWidget::Window::Getter"
367    replace with ""
368end
369
370configure reflector "osgWidget::MouseHandler::MouseAction"
371    replace with ""
372end
373
374configure reflector "osgWidget::MouseHandler::MouseEvent"
375    replace with ""
376end
377
378
379
380#############################################################################
381
382# avoid functions that use protected types, since those are not handled
383# currently
384
385configure reflector "osgSim::OverlayNode"
386        configure method /.*getOverlayData.*/
387                replace with ""
388        end
389end
390
391configure reflector "osg::Shader"
392        configure method /.*_PerContextShader_.*/
393                replace with ""
394        end
395end
396
397configure reflector "osg::State"
398        configure method /.*_(ModeStack|AttributeStack|ModeMap|AttributeMap|UniformMap)_.*/
399                replace with ""
400        end
401end
402
403configure reflector "osgUtil::Optimizer::TextureAtlasBuilder"
404        configure method /.*_Source_.*/
405                replace with ""
406        end
407end
408
409configure reflector "osgUtil::Tessellator"
410        configure method /.*_VertexPtrToIndexMap_.*/
411                replace with ""
412        end
413end
414
415configure reflector "osgDB::Registry"
416        configure method /.*_(DynamicLibraryList_iterator|DotOsgWrapperMap)_.*/
417                replace with ""
418        end
419end
420
421configure reflector "osgText::FadeText"
422        configure method /.*_ViewBlendColou?rMap_.*/
423                replace with ""
424        end
425end
426
427configure reflector "osgParticle::PrecipitationEffect"
428        configure method /.*_PrecipitationDrawableSet_.*/
429                replace with ""
430        end
431end
432
433configure reflector "osgManipulator::MotionCommand"
434        configure method /.*_SelectionList_.*/
435                replace with ""
436        end
437end
Note: See TracBrowser for help on using the browser.