<config>

 <moduleName>qtopengl</moduleName>
 <parentModules>
     <module>qtcore</module>
     <module>qtgui</module>
 </parentModules>
 <parts>1</parts>
 <scalarTypes>
     <!-- QString is a class, but represented as a scalar (#) in munged names -->
     <typeName>QString</typeName>
 </scalarTypes>
 <voidpTypes>
     <!-- both are classes, but they are represented as Smoke::t_voidp -->
     <typeName>QStringList</typeName>
     <typeName>QString</typeName>
 </voidpTypes>
 <exclude>
     <!-- we don't want private stuff in smoke.. -->
     <signature>.*::d</signature>
     <signature>.*::d_ptr</signature>
     <signature>.*::q_ptr</signature>
     <signature>.*\(.*Private.*\).*</signature>
     <!-- Thread related stuff belongs to the bindings language -->
     <signature>.*QtConcurrent.*</signature>
     <signature>.*QDomNode.*</signature>
     <!-- this doesn't link, internal stuff.. -->
     <signature>.*qFindString.*</signature>
     <!-- windows internal helper functions -->
     <signature>.*qFrom.*Endian_helper.*</signature>
     <!-- OS X internal stuff -->
     <signature>.*qt_mac_set_cursor.*</signature>
</exclude>
 <functions>
     <!-- include functions starting with 'q' -->
     <name>^q.*</name>
     <name>.*::q.*</name>
     <!-- and operators -->
     <name>.*operator.*</name>
 </functions>
 <classList>
     <class>QGLColormap</class>
     <class>QGLContext</class>
     <class>QGLBuffer</class>
     <class>QGLFormat</class>
     <class>QGLFramebufferObject</class>
     <class>QGLFramebufferObjectFormat</class>
     <class>QGLOverlayWidget</class>
     <class>QGLPixelBuffer</class>
     <class>QGLScreen</class>
     <class>QGLScreenSurfaceFunctions</class>
     <class>QGLShader</class>
     <class>QGLShaderProgram</class>
     <class>QGLWidget</class>

     <!-- namespaces -->
     <class>QGL</class>
  </classList>

</config>