import QtQuick.tooling 1.2

// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
// 'qmlplugindump -nonrelocatable Qt3D.Extras 2.0'

Module {
    dependencies: ["Qt3D.Logic 2.0"]
    Component {
        name: "Qt3DExtras::QConeGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/ConeGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "hasTopEndcap"; type: "bool" }
        Property { name: "hasBottomEndcap"; type: "bool" }
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "topRadius"; type: "float" }
        Property { name: "bottomRadius"; type: "float" }
        Property { name: "length"; type: "float" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "hasTopEndcapChanged"
            Parameter { name: "hasTopEndcap"; type: "bool" }
        }
        Signal {
            name: "hasBottomEndcapChanged"
            Parameter { name: "hasBottomEndcap"; type: "bool" }
        }
        Signal {
            name: "topRadiusChanged"
            Parameter { name: "topRadius"; type: "float" }
        }
        Signal {
            name: "bottomRadiusChanged"
            Parameter { name: "bottomRadius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "lengthChanged"
            Parameter { name: "length"; type: "float" }
        }
        Method {
            name: "setHasTopEndcap"
            Parameter { name: "hasTopEndcap"; type: "bool" }
        }
        Method {
            name: "setHasBottomEndcap"
            Parameter { name: "hasBottomEndcap"; type: "bool" }
        }
        Method {
            name: "setTopRadius"
            Parameter { name: "topRadius"; type: "float" }
        }
        Method {
            name: "setBottomRadius"
            Parameter { name: "bottomRadius"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setLength"
            Parameter { name: "length"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QConeMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/ConeMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "hasTopEndcap"; type: "bool" }
        Property { name: "hasBottomEndcap"; type: "bool" }
        Property { name: "topRadius"; type: "float" }
        Property { name: "bottomRadius"; type: "float" }
        Property { name: "length"; type: "float" }
        Signal {
            name: "hasTopEndcapChanged"
            Parameter { name: "hasTopEndcap"; type: "bool" }
        }
        Signal {
            name: "hasBottomEndcapChanged"
            Parameter { name: "hasBottomEndcap"; type: "bool" }
        }
        Signal {
            name: "topRadiusChanged"
            Parameter { name: "topRadius"; type: "float" }
        }
        Signal {
            name: "bottomRadiusChanged"
            Parameter { name: "bottomRadius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "lengthChanged"
            Parameter { name: "length"; type: "float" }
        }
        Method {
            name: "setHasTopEndcap"
            Parameter { name: "hasTopEndcap"; type: "bool" }
        }
        Method {
            name: "setHasBottomEndcap"
            Parameter { name: "hasBottomEndcap"; type: "bool" }
        }
        Method {
            name: "setTopRadius"
            Parameter { name: "topRadius"; type: "float" }
        }
        Method {
            name: "setBottomRadius"
            Parameter { name: "bottomRadius"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setLength"
            Parameter { name: "length"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QCuboidGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/CuboidGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "xExtent"; type: "float" }
        Property { name: "yExtent"; type: "float" }
        Property { name: "zExtent"; type: "float" }
        Property { name: "xyMeshResolution"; type: "QSize" }
        Property { name: "yzMeshResolution"; type: "QSize" }
        Property { name: "xzMeshResolution"; type: "QSize" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "tangentAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "xExtentChanged"
            Parameter { name: "xExtent"; type: "float" }
        }
        Signal {
            name: "yExtentChanged"
            Parameter { name: "yExtent"; type: "float" }
        }
        Signal {
            name: "zExtentChanged"
            Parameter { name: "zExtent"; type: "float" }
        }
        Signal {
            name: "yzMeshResolutionChanged"
            Parameter { name: "yzMeshResolution"; type: "QSize" }
        }
        Signal {
            name: "xzMeshResolutionChanged"
            Parameter { name: "xzMeshResolution"; type: "QSize" }
        }
        Signal {
            name: "xyMeshResolutionChanged"
            Parameter { name: "xyMeshResolution"; type: "QSize" }
        }
        Method {
            name: "setXExtent"
            Parameter { name: "xExtent"; type: "float" }
        }
        Method {
            name: "setYExtent"
            Parameter { name: "yExtent"; type: "float" }
        }
        Method {
            name: "setZExtent"
            Parameter { name: "zExtent"; type: "float" }
        }
        Method {
            name: "setYZMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Method {
            name: "setXZMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Method {
            name: "setXYMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
    }
    Component {
        name: "Qt3DExtras::QCuboidMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/CuboidMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "xExtent"; type: "float" }
        Property { name: "yExtent"; type: "float" }
        Property { name: "zExtent"; type: "float" }
        Property { name: "yzMeshResolution"; type: "QSize" }
        Property { name: "xzMeshResolution"; type: "QSize" }
        Property { name: "xyMeshResolution"; type: "QSize" }
        Signal {
            name: "xExtentChanged"
            Parameter { name: "xExtent"; type: "float" }
        }
        Signal {
            name: "yExtentChanged"
            Parameter { name: "yExtent"; type: "float" }
        }
        Signal {
            name: "zExtentChanged"
            Parameter { name: "zExtent"; type: "float" }
        }
        Signal {
            name: "yzMeshResolutionChanged"
            Parameter { name: "yzMeshResolution"; type: "QSize" }
        }
        Signal {
            name: "xzMeshResolutionChanged"
            Parameter { name: "xzMeshResolution"; type: "QSize" }
        }
        Signal {
            name: "xyMeshResolutionChanged"
            Parameter { name: "xyMeshResolution"; type: "QSize" }
        }
        Method {
            name: "setXExtent"
            Parameter { name: "xExtent"; type: "float" }
        }
        Method {
            name: "setYExtent"
            Parameter { name: "yExtent"; type: "float" }
        }
        Method {
            name: "setZExtent"
            Parameter { name: "zExtent"; type: "float" }
        }
        Method {
            name: "setYZMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Method {
            name: "setXZMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Method {
            name: "setXYMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
    }
    Component {
        name: "Qt3DExtras::QCylinderGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/CylinderGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "length"; type: "float" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "lengthChanged"
            Parameter { name: "length"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setLength"
            Parameter { name: "length"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QCylinderMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/CylinderMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "length"; type: "float" }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "lengthChanged"
            Parameter { name: "length"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setLength"
            Parameter { name: "length"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QPlaneGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/PlaneGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "width"; type: "float" }
        Property { name: "height"; type: "float" }
        Property { name: "resolution"; type: "QSize" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "tangentAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "resolutionChanged"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Signal {
            name: "widthChanged"
            Parameter { name: "width"; type: "float" }
        }
        Signal {
            name: "heightChanged"
            Parameter { name: "height"; type: "float" }
        }
        Method {
            name: "setResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
        Method {
            name: "setWidth"
            Parameter { name: "width"; type: "float" }
        }
        Method {
            name: "setHeight"
            Parameter { name: "height"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QPlaneMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/PlaneMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "width"; type: "float" }
        Property { name: "height"; type: "float" }
        Property { name: "meshResolution"; type: "QSize" }
        Signal {
            name: "meshResolutionChanged"
            Parameter { name: "meshResolution"; type: "QSize" }
        }
        Signal {
            name: "widthChanged"
            Parameter { name: "width"; type: "float" }
        }
        Signal {
            name: "heightChanged"
            Parameter { name: "height"; type: "float" }
        }
        Method {
            name: "setWidth"
            Parameter { name: "width"; type: "float" }
        }
        Method {
            name: "setHeight"
            Parameter { name: "height"; type: "float" }
        }
        Method {
            name: "setMeshResolution"
            Parameter { name: "resolution"; type: "QSize" }
        }
    }
    Component {
        name: "Qt3DExtras::QSphereGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/SphereGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "generateTangents"; type: "bool" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "tangentAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "generateTangentsChanged"
            Parameter { name: "generateTangents"; type: "bool" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setGenerateTangents"
            Parameter { name: "gen"; type: "bool" }
        }
    }
    Component {
        name: "Qt3DExtras::QSphereMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/SphereMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "generateTangents"; type: "bool" }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "generateTangentsChanged"
            Parameter { name: "generateTangents"; type: "bool" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setGenerateTangents"
            Parameter { name: "gen"; type: "bool" }
        }
    }
    Component {
        name: "Qt3DExtras::QTorusGeometry"
        prototype: "Qt3DRender::QGeometry"
        exports: ["Qt3D.Extras/TorusGeometry 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "minorRadius"; type: "float" }
        Property {
            name: "positionAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "normalAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "texCoordAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Property {
            name: "indexAttribute"
            type: "Qt3DRender::QAttribute"
            isReadonly: true
            isPointer: true
        }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "minorRadiusChanged"
            Parameter { name: "minorRadius"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setMinorRadius"
            Parameter { name: "minorRadius"; type: "float" }
        }
    }
    Component {
        name: "Qt3DExtras::QTorusMesh"
        prototype: "Qt3DRender::QGeometryRenderer"
        exports: ["Qt3D.Extras/TorusMesh 2.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "rings"; type: "int" }
        Property { name: "slices"; type: "int" }
        Property { name: "radius"; type: "float" }
        Property { name: "minorRadius"; type: "float" }
        Signal {
            name: "radiusChanged"
            Parameter { name: "radius"; type: "float" }
        }
        Signal {
            name: "ringsChanged"
            Parameter { name: "rings"; type: "int" }
        }
        Signal {
            name: "slicesChanged"
            Parameter { name: "slices"; type: "int" }
        }
        Signal {
            name: "minorRadiusChanged"
            Parameter { name: "minorRadius"; type: "float" }
        }
        Method {
            name: "setRings"
            Parameter { name: "rings"; type: "int" }
        }
        Method {
            name: "setSlices"
            Parameter { name: "slices"; type: "int" }
        }
        Method {
            name: "setRadius"
            Parameter { name: "radius"; type: "float" }
        }
        Method {
            name: "setMinorRadius"
            Parameter { name: "minorRadius"; type: "float" }
        }
    }
    Component {
        name: "Qt3DRender::QGeometry"
        prototype: "Qt3DCore::QNode"
        Property {
            name: "boundingVolumePositionAttribute"
            type: "Qt3DRender::QAttribute"
            isPointer: true
        }
        Signal {
            name: "boundingVolumePositionAttributeChanged"
            Parameter { name: "boundingVolumePositionAttribute"; type: "QAttribute"; isPointer: true }
        }
        Method {
            name: "setBoundingVolumePositionAttribute"
            Parameter { name: "boundingVolumePositionAttribute"; type: "QAttribute"; isPointer: true }
        }
    }
    Component {
        name: "Qt3DRender::QGeometryRenderer"
        prototype: "Qt3DCore::QComponent"
        Enum {
            name: "PrimitiveType"
            values: {
                "Points": 0,
                "Lines": 1,
                "LineLoop": 2,
                "LineStrip": 3,
                "Triangles": 4,
                "TriangleStrip": 5,
                "TriangleFan": 6,
                "LinesAdjacency": 10,
                "TrianglesAdjacency": 12,
                "LineStripAdjacency": 11,
                "TriangleStripAdjacency": 13,
                "Patches": 14
            }
        }
        Property { name: "instanceCount"; type: "int" }
        Property { name: "vertexCount"; type: "int" }
        Property { name: "indexOffset"; type: "int" }
        Property { name: "firstInstance"; type: "int" }
        Property { name: "restartIndexValue"; type: "int" }
        Property { name: "verticesPerPatch"; type: "int" }
        Property { name: "primitiveRestartEnabled"; type: "bool" }
        Property { name: "geometry"; type: "Qt3DRender::QGeometry"; isPointer: true }
        Property { name: "primitiveType"; type: "PrimitiveType" }
        Signal {
            name: "instanceCountChanged"
            Parameter { name: "instanceCount"; type: "int" }
        }
        Signal {
            name: "vertexCountChanged"
            Parameter { name: "vertexCount"; type: "int" }
        }
        Signal {
            name: "indexOffsetChanged"
            Parameter { name: "indexOffset"; type: "int" }
        }
        Signal {
            name: "firstInstanceChanged"
            Parameter { name: "firstInstance"; type: "int" }
        }
        Signal {
            name: "restartIndexValueChanged"
            Parameter { name: "restartIndexValue"; type: "int" }
        }
        Signal {
            name: "verticesPerPatchChanged"
            Parameter { name: "verticesPerPatch"; type: "int" }
        }
        Signal {
            name: "primitiveRestartEnabledChanged"
            Parameter { name: "primitiveRestartEnabled"; type: "bool" }
        }
        Signal {
            name: "geometryChanged"
            Parameter { name: "geometry"; type: "QGeometry"; isPointer: true }
        }
        Signal {
            name: "primitiveTypeChanged"
            Parameter { name: "primitiveType"; type: "PrimitiveType" }
        }
        Method {
            name: "setInstanceCount"
            Parameter { name: "instanceCount"; type: "int" }
        }
        Method {
            name: "setVertexCount"
            Parameter { name: "vertexCount"; type: "int" }
        }
        Method {
            name: "setIndexOffset"
            Parameter { name: "indexOffset"; type: "int" }
        }
        Method {
            name: "setFirstInstance"
            Parameter { name: "firstInstance"; type: "int" }
        }
        Method {
            name: "setRestartIndexValue"
            Parameter { name: "index"; type: "int" }
        }
        Method {
            name: "setVerticesPerPatch"
            Parameter { name: "verticesPerPatch"; type: "int" }
        }
        Method {
            name: "setPrimitiveRestartEnabled"
            Parameter { name: "enabled"; type: "bool" }
        }
        Method {
            name: "setGeometry"
            Parameter { name: "geometry"; type: "QGeometry"; isPointer: true }
        }
        Method {
            name: "setPrimitiveType"
            Parameter { name: "primitiveType"; type: "PrimitiveType" }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/DiffuseMapMaterial 2.0"
        exports: ["Qt3D.Extras/DiffuseMapMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "textureScale"; type: "double" }
        Property { name: "diffuse"; type: "QUrl" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/DiffuseSpecularMapMaterial 2.0"
        exports: ["Qt3D.Extras/DiffuseSpecularMapMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "textureScale"; type: "double" }
        Property { name: "diffuse"; type: "QUrl" }
        Property { name: "specular"; type: "QUrl" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QNode"
        name: "Qt3D.Extras/FirstPersonCameraController 2.0"
        exports: ["Qt3D.Extras/FirstPersonCameraController 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "camera"; type: "Qt3DRender::QCamera"; isPointer: true }
        Property { name: "linearSpeed"; type: "double" }
        Property { name: "lookSpeed"; type: "double" }
    }
    Component {
        prototype: "Qt3DCore::QNode"
        name: "Qt3D.Extras/ForwardRenderer 2.0"
        exports: ["Qt3D.Extras/ForwardRenderer 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "camera"; type: "Qt3DCore::QEntity"; isPointer: true }
        Property { name: "clearColor"; type: "QColor" }
        Property { name: "viewportRect"; type: "QRectF" }
        Property { name: "window"; type: "QObject"; isPointer: true }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/GoochMaterial 2.0"
        exports: ["Qt3D.Extras/GoochMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "diffuse"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "coolColor"; type: "QColor" }
        Property { name: "warmColor"; type: "QColor" }
        Property { name: "alpha"; type: "double" }
        Property { name: "beta"; type: "double" }
        Property { name: "shininess"; type: "double" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/NormalDiffuseMapAlphaMaterial 2.0"
        exports: ["Qt3D.Extras/NormalDiffuseMapAlphaMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "textureScale"; type: "double" }
        Property { name: "diffuse"; type: "QUrl" }
        Property { name: "normal"; type: "QUrl" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/NormalDiffuseMapMaterial 2.0"
        exports: ["Qt3D.Extras/NormalDiffuseMapMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "textureScale"; type: "double" }
        Property { name: "diffuse"; type: "QUrl" }
        Property { name: "normal"; type: "QUrl" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/NormalDiffuseSpecularMapMaterial 2.0"
        exports: ["Qt3D.Extras/NormalDiffuseSpecularMapMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "textureScale"; type: "double" }
        Property { name: "diffuse"; type: "QUrl" }
        Property { name: "specular"; type: "QUrl" }
        Property { name: "normal"; type: "QUrl" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QNode"
        name: "Qt3D.Extras/OrbitController 2.0"
        exports: ["Qt3D.Extras/OrbitController 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "camera"; type: "Qt3DRender::QCamera"; isPointer: true }
        Property { name: "linearSpeed"; type: "double" }
        Property { name: "lookSpeed"; type: "double" }
        Property { name: "zoomLimit"; type: "double" }
        Method {
            name: "clampInputs"
            type: "QVariant"
            Parameter { name: "input1"; type: "QVariant" }
            Parameter { name: "input2"; type: "QVariant" }
        }
        Method {
            name: "zoomDistance"
            type: "QVariant"
            Parameter { name: "firstPoint"; type: "QVariant" }
            Parameter { name: "secondPoint"; type: "QVariant" }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/PerVertexColorMaterial 2.0"
        exports: ["Qt3D.Extras/PerVertexColorMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/PhongAlphaMaterial 2.0"
        exports: ["Qt3D.Extras/PhongAlphaMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "diffuse"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "alpha"; type: "double" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QComponent"
        name: "Qt3D.Extras/PhongMaterial 2.0"
        exports: ["Qt3D.Extras/PhongMaterial 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "ambient"; type: "QColor" }
        Property { name: "diffuse"; type: "QColor" }
        Property { name: "specular"; type: "QColor" }
        Property { name: "shininess"; type: "double" }
        Property { name: "effect"; type: "Qt3DRender::QEffect"; isPointer: true }
        Signal {
            name: "effectChanged"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
        Method {
            name: "setEffect"
            Parameter { name: "effect"; type: "QEffect"; isPointer: true }
        }
    }
    Component {
        prototype: "Qt3DCore::QNode"
        name: "Qt3D.Extras/SkyboxEntity 2.0"
        exports: ["Qt3D.Extras/SkyboxEntity 2.0"]
        exportMetaObjectRevisions: [0]
        isComposite: true
        defaultProperty: "data"
        Property { name: "baseName"; type: "string" }
        Property { name: "extension"; type: "string" }
        Property { name: "skyboxTexture"; type: "Qt3DRender::QTextureCubeMap"; isPointer: true }
        Property { name: "cameraPosition"; type: "QVector3D" }
    }
}
