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 qmltyperegistrar.

Module {
    Component {
        file: "private/qabstractcollisionnode_p.h"
        name: "QAbstractCollisionNode"
        accessSemantics: "reference"
        prototype: "QQuick3DNode"
        exports: ["QtQuick3D.Physics/CollisionNode 6.0"]
        isCreatable: false
        exportMetaObjectRevisions: [1536]
        Property {
            name: "collisionShapes"
            type: "QAbstractCollisionShape"
            isList: true
            read: "collisionShapes"
            index: 0
            isReadonly: true
        }
        Property {
            name: "sendContactReports"
            type: "bool"
            read: "sendContactReports"
            write: "setSendContactReports"
            notify: "sendContactReportsChanged"
            index: 1
        }
        Property {
            name: "receiveContactReports"
            type: "bool"
            read: "receiveContactReports"
            write: "setReceiveContactReports"
            notify: "receiveContactReportsChanged"
            index: 2
        }
        Property {
            name: "enableTriggerReports"
            type: "bool"
            read: "enableTriggerReports"
            write: "setEnableTriggerReports"
            notify: "enableTriggerReportsChanged"
            index: 3
        }
        Signal {
            name: "bodyContact"
            Parameter { name: "body"; type: "QAbstractCollisionNode"; isPointer: true }
            Parameter { name: "positions"; type: "QVector3D"; isList: true }
            Parameter { name: "impulses"; type: "QVector3D"; isList: true }
            Parameter { name: "normals"; type: "QVector3D"; isList: true }
        }
        Signal {
            name: "sendContactReportsChanged"
            Parameter { name: "sendContactReports"; type: "float" }
        }
        Signal {
            name: "receiveContactReportsChanged"
            Parameter { name: "receiveContactReports"; type: "float" }
        }
        Signal {
            name: "enableTriggerReportsChanged"
            Parameter { name: "enableTriggerReports"; type: "float" }
        }
        Method {
            name: "onShapeDestroyed"
            Parameter { name: "object"; type: "QObject"; isPointer: true }
        }
        Method {
            name: "onShapeNeedsRebuild"
            Parameter { name: "object"; type: "QObject"; isPointer: true }
        }
    }
    Component {
        file: "private/qabstractcollisionshape_p.h"
        name: "QAbstractCollisionShape"
        accessSemantics: "reference"
        prototype: "QQuick3DNode"
        exports: ["QtQuick3D.Physics/CollisionShape 6.0"]
        isCreatable: false
        exportMetaObjectRevisions: [1536]
        Property {
            name: "enableDebugView"
            type: "bool"
            read: "enableDebugView"
            write: "setEnableDebugView"
            notify: "enableDebugViewChanged"
            index: 0
        }
        Signal {
            name: "enableDebugViewChanged"
            Parameter { name: "enableDebugView"; type: "bool" }
        }
        Signal {
            name: "needsRebuild"
            Parameter { type: "QObject"; isPointer: true }
        }
        Method {
            name: "setEnableDebugView"
            Parameter { name: "enableDebugView"; type: "bool" }
        }
        Method { name: "handleScaleChange" }
    }
    Component {
        file: "private/qabstractphysicsbody_p.h"
        name: "QAbstractPhysicsBody"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionNode"
        exports: ["QtQuick3D.Physics/PhysicsBody 6.0"]
        isCreatable: false
        exportMetaObjectRevisions: [1536]
        Property {
            name: "physicsMaterial"
            type: "QPhysicsMaterial"
            isPointer: true
            read: "physicsMaterial"
            write: "setPhysicsMaterial"
            notify: "physicsMaterialChanged"
            index: 0
        }
        Signal { name: "physicsMaterialChanged" }
    }
    Component {
        file: "private/qboxshape_p.h"
        name: "QBoxShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/BoxShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "extents"
            type: "QVector3D"
            read: "extents"
            write: "setExtents"
            notify: "extentsChanged"
            index: 0
        }
        Signal {
            name: "extentsChanged"
            Parameter { name: "extents"; type: "QVector3D" }
        }
        Method {
            name: "setExtents"
            Parameter { name: "extents"; type: "QVector3D" }
        }
    }
    Component {
        file: "private/qcapsuleshape_p.h"
        name: "QCapsuleShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/CapsuleShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "diameter"
            type: "float"
            read: "diameter"
            write: "setDiameter"
            notify: "diameterChanged"
            index: 0
        }
        Property {
            name: "height"
            type: "float"
            read: "height"
            write: "setHeight"
            notify: "heightChanged"
            index: 1
        }
        Signal { name: "diameterChanged" }
        Signal { name: "heightChanged" }
    }
    Component {
        file: "private/qcharactercontroller_p.h"
        name: "QCharacterController"
        accessSemantics: "reference"
        prototype: "QAbstractPhysicsBody"
        exports: ["QtQuick3D.Physics/CharacterController 6.0"]
        exportMetaObjectRevisions: [1536]
        Enum {
            name: "Collisions"
            alias: "Collision"
            isFlag: true
            values: ["None", "Side", "Up", "Down"]
        }
        Property {
            name: "speed"
            type: "QVector3D"
            read: "speed"
            write: "setSpeed"
            notify: "speedChanged"
            index: 0
        }
        Property {
            name: "gravity"
            type: "QVector3D"
            read: "gravity"
            write: "setGravity"
            notify: "gravityChanged"
            index: 1
        }
        Property {
            name: "midAirControl"
            type: "bool"
            read: "midAirControl"
            write: "setMidAirControl"
            notify: "midAirControlChanged"
            index: 2
        }
        Property {
            name: "collisions"
            type: "Collisions"
            read: "collisions"
            notify: "collisionsChanged"
            index: 3
            isReadonly: true
        }
        Signal { name: "speedChanged" }
        Signal { name: "gravityChanged" }
        Signal { name: "midAirControlChanged" }
        Signal { name: "impulseChanged" }
        Signal { name: "collisionsChanged" }
        Method {
            name: "teleport"
            Parameter { name: "position"; type: "QVector3D" }
        }
    }
    Component {
        file: "private/qconvexmeshshape_p.h"
        name: "QConvexMeshShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/ConvexMeshShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "meshSource"
            type: "QUrl"
            read: "meshSource"
            write: "setMeshSource"
            notify: "meshSourceChanged"
            index: 0
        }
        Signal { name: "meshSourceChanged" }
    }
    Component {
        file: "private/qrigidbody_p.h"
        name: "QDynamicRigidBody"
        accessSemantics: "reference"
        prototype: "QAbstractPhysicsBody"
        exports: ["QtQuick3D.Physics/DynamicRigidBody 6.0"]
        exportMetaObjectRevisions: [1536]
        Enum {
            name: "MassMode"
            values: [
                "Density",
                "Mass",
                "MassAndInertiaTensor",
                "MassAndInertiaMatrix"
            ]
        }
        Property {
            name: "mass"
            type: "float"
            read: "mass"
            write: "setMass"
            notify: "massChanged"
            index: 0
        }
        Property {
            name: "density"
            type: "float"
            read: "density"
            write: "setDensity"
            notify: "densityChanged"
            index: 1
        }
        Property {
            name: "linearVelocity"
            type: "QVector3D"
            read: "linearVelocity"
            write: "setLinearVelocity"
            notify: "linearVelocityChanged"
            index: 2
        }
        Property {
            name: "angularVelocity"
            type: "QVector3D"
            read: "angularVelocity"
            write: "setAngularVelocity"
            notify: "angularVelocityChanged"
            index: 3
        }
        Property {
            name: "axisLockLinearX"
            type: "bool"
            read: "axisLockLinearX"
            write: "setAxisLockLinearX"
            notify: "axisLockLinearXChanged"
            index: 4
        }
        Property {
            name: "axisLockLinearY"
            type: "bool"
            read: "axisLockLinearY"
            write: "setAxisLockLinearY"
            notify: "axisLockLinearYChanged"
            index: 5
        }
        Property {
            name: "axisLockLinearZ"
            type: "bool"
            read: "axisLockLinearZ"
            write: "setAxisLockLinearZ"
            notify: "axisLockLinearZChanged"
            index: 6
        }
        Property {
            name: "axisLockAngularX"
            type: "bool"
            read: "axisLockAngularX"
            write: "setAxisLockAngularX"
            notify: "axisLockAngularXChanged"
            index: 7
        }
        Property {
            name: "axisLockAngularY"
            type: "bool"
            read: "axisLockAngularY"
            write: "setAxisLockAngularY"
            notify: "axisLockAngularYChanged"
            index: 8
        }
        Property {
            name: "axisLockAngularZ"
            type: "bool"
            read: "axisLockAngularZ"
            write: "setAxisLockAngularZ"
            notify: "axisLockAngularZChanged"
            index: 9
        }
        Property {
            name: "isKinematic"
            type: "bool"
            read: "isKinematic"
            write: "setIsKinematic"
            notify: "isKinematicChanged"
            index: 10
        }
        Property {
            name: "gravityEnabled"
            type: "bool"
            read: "gravityEnabled"
            write: "setGravityEnabled"
            notify: "gravityEnabledChanged"
            index: 11
        }
        Property {
            name: "massMode"
            type: "MassMode"
            read: "massMode"
            write: "setMassMode"
            notify: "massModeChanged"
            index: 12
        }
        Property {
            name: "inertiaTensor"
            type: "QVector3D"
            read: "inertiaTensor"
            write: "setInertiaTensor"
            notify: "inertiaTensorChanged"
            index: 13
        }
        Property {
            name: "centerOfMassPosition"
            type: "QVector3D"
            read: "centerOfMassPosition"
            write: "setCenterOfMassPosition"
            notify: "centerOfMassPositionChanged"
            index: 14
        }
        Property {
            name: "centerOfMassRotation"
            type: "QQuaternion"
            read: "centerOfMassRotation"
            write: "setCenterOfMassRotation"
            notify: "centerOfMassRotationChanged"
            index: 15
        }
        Property {
            name: "inertiaMatrix"
            type: "float"
            isList: true
            read: "readInertiaMatrix"
            write: "setInertiaMatrix"
            notify: "inertiaMatrixChanged"
            index: 16
        }
        Signal {
            name: "massChanged"
            Parameter { name: "mass"; type: "float" }
        }
        Signal {
            name: "densityChanged"
            Parameter { name: "density"; type: "float" }
        }
        Signal {
            name: "linearVelocityChanged"
            Parameter { name: "linearVelocity"; type: "QVector3D" }
        }
        Signal {
            name: "isKinematicChanged"
            Parameter { name: "isKinematic"; type: "bool" }
        }
        Signal { name: "angularVelocityChanged" }
        Signal { name: "axisLockLinearXChanged" }
        Signal { name: "axisLockLinearYChanged" }
        Signal { name: "axisLockLinearZChanged" }
        Signal { name: "axisLockAngularXChanged" }
        Signal { name: "axisLockAngularYChanged" }
        Signal { name: "axisLockAngularZChanged" }
        Signal { name: "gravityEnabledChanged" }
        Signal { name: "massModeChanged" }
        Signal { name: "inertiaTensorChanged" }
        Signal { name: "centerOfMassPositionChanged" }
        Signal { name: "centerOfMassRotationChanged" }
        Signal { name: "inertiaMatrixChanged" }
        Method {
            name: "applyCentralForce"
            Parameter { name: "force"; type: "QVector3D" }
        }
        Method {
            name: "applyForce"
            Parameter { name: "force"; type: "QVector3D" }
            Parameter { name: "position"; type: "QVector3D" }
        }
        Method {
            name: "applyTorque"
            Parameter { name: "torque"; type: "QVector3D" }
        }
        Method {
            name: "applyCentralImpulse"
            Parameter { name: "impulse"; type: "QVector3D" }
        }
        Method {
            name: "applyImpulse"
            Parameter { name: "impulse"; type: "QVector3D" }
            Parameter { name: "position"; type: "QVector3D" }
        }
        Method {
            name: "applyTorqueImpulse"
            Parameter { name: "impulse"; type: "QVector3D" }
        }
        Method {
            name: "reset"
            Parameter { name: "position"; type: "QVector3D" }
            Parameter { name: "eulerRotation"; type: "QVector3D" }
        }
    }
    Component {
        file: "private/qdynamicsworld_p.h"
        name: "QDynamicsWorld"
        accessSemantics: "reference"
        prototype: "QObject"
        exports: ["QtQuick3D.Physics/DynamicsWorld 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "gravity"
            type: "QVector3D"
            read: "gravity"
            write: "setGravity"
            notify: "gravityChanged"
            index: 0
        }
        Property {
            name: "running"
            type: "bool"
            read: "running"
            write: "setRunning"
            notify: "runningChanged"
            index: 1
        }
        Property {
            name: "forceDebugView"
            type: "bool"
            read: "forceDebugView"
            write: "setForceDebugView"
            notify: "forceDebugViewChanged"
            index: 2
        }
        Property {
            name: "enableCCD"
            type: "bool"
            read: "enableCCD"
            write: "setEnableCCD"
            notify: "enableCCDChanged"
            index: 3
        }
        Property {
            name: "typicalLength"
            type: "float"
            read: "typicalLength"
            write: "setTypicalLength"
            notify: "typicalLengthChanged"
            index: 4
        }
        Property {
            name: "typicalSpeed"
            type: "float"
            read: "typicalSpeed"
            write: "setTypicalSpeed"
            notify: "typicalSpeedChanged"
            index: 5
        }
        Property {
            name: "defaultDensity"
            type: "float"
            read: "defaultDensity"
            write: "setDefaultDensity"
            notify: "defaultDensityChanged"
            index: 6
        }
        Property {
            name: "sceneView"
            type: "QQuick3DViewport"
            isPointer: true
            read: "sceneView"
            write: "setSceneView"
            notify: "sceneViewChanged"
            index: 7
        }
        Signal {
            name: "gravityChanged"
            Parameter { name: "gravity"; type: "QVector3D" }
        }
        Signal {
            name: "runningChanged"
            Parameter { name: "running"; type: "bool" }
        }
        Signal {
            name: "enableCCDChanged"
            Parameter { name: "enableCCD"; type: "bool" }
        }
        Signal {
            name: "forceDebugViewChanged"
            Parameter { name: "forceDebugView"; type: "bool" }
        }
        Signal {
            name: "typicalLengthChanged"
            Parameter { name: "typicalLength"; type: "float" }
        }
        Signal {
            name: "typicalSpeedChanged"
            Parameter { name: "typicalSpeed"; type: "float" }
        }
        Signal {
            name: "defaultDensityChanged"
            Parameter { name: "defaultDensity"; type: "float" }
        }
        Signal {
            name: "sceneViewChanged"
            Parameter { name: "sceneView"; type: "QQuick3DViewport"; isPointer: true }
        }
        Method {
            name: "setGravity"
            Parameter { name: "gravity"; type: "QVector3D" }
        }
        Method {
            name: "setRunning"
            Parameter { name: "running"; type: "bool" }
        }
        Method {
            name: "setForceDebugView"
            Parameter { name: "forceDebugView"; type: "bool" }
        }
        Method {
            name: "setEnableCCD"
            Parameter { name: "enableCCD"; type: "bool" }
        }
        Method {
            name: "setTypicalLength"
            Parameter { name: "typicalLength"; type: "float" }
        }
        Method {
            name: "setTypicalSpeed"
            Parameter { name: "typicalSpeed"; type: "float" }
        }
        Method {
            name: "setDefaultDensity"
            Parameter { name: "defaultDensity"; type: "float" }
        }
        Method {
            name: "setSceneView"
            Parameter { name: "sceneView"; type: "QQuick3DViewport"; isPointer: true }
        }
    }
    Component {
        file: "private/qheightfieldshape_p.h"
        name: "QHeightFieldShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/HeightFieldShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "extents"
            type: "QVector3D"
            read: "extents"
            write: "setExtents"
            notify: "extentsChanged"
            index: 0
        }
        Property {
            name: "heightMap"
            type: "QUrl"
            read: "heightMap"
            write: "setHeightMap"
            notify: "heightMapChanged"
            index: 1
        }
        Signal { name: "heightMapChanged" }
        Signal { name: "extentsChanged" }
    }
    Component {
        file: "private/qphysicsmaterial_p.h"
        name: "QPhysicsMaterial"
        accessSemantics: "reference"
        prototype: "QObject"
        exports: ["QtQuick3D.Physics/PhysicsMaterial 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "staticFriction"
            type: "float"
            read: "staticFriction"
            write: "setStaticFriction"
            notify: "staticFrictionChanged"
            index: 0
        }
        Property {
            name: "dynamicFriction"
            type: "float"
            read: "dynamicFriction"
            write: "setDynamicFriction"
            notify: "dynamicFrictionChanged"
            index: 1
        }
        Property {
            name: "restitution"
            type: "float"
            read: "restitution"
            write: "setRestitution"
            notify: "restitutionChanged"
            index: 2
        }
        Signal { name: "staticFrictionChanged" }
        Signal { name: "dynamicFrictionChanged" }
        Signal { name: "restitutionChanged" }
    }
    Component {
        file: "private/qplaneshape_p.h"
        name: "QPlaneShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/PlaneShape 6.0"]
        exportMetaObjectRevisions: [1536]
    }
    Component {
        file: "private/qsphereshape_p.h"
        name: "QSphereShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/SphereShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "diameter"
            type: "float"
            read: "diameter"
            write: "setDiameter"
            notify: "diameterChanged"
            index: 0
        }
        Signal {
            name: "diameterChanged"
            Parameter { name: "diameter"; type: "float" }
        }
        Method {
            name: "setDiameter"
            Parameter { name: "diameter"; type: "float" }
        }
    }
    Component {
        file: "private/qrigidbody_p.h"
        name: "QStaticRigidBody"
        accessSemantics: "reference"
        prototype: "QAbstractPhysicsBody"
        exports: ["QtQuick3D.Physics/StaticRigidBody 6.0"]
        exportMetaObjectRevisions: [1536]
    }
    Component {
        file: "private/qtrianglemeshshape_p.h"
        name: "QTriangleMeshShape"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionShape"
        exports: ["QtQuick3D.Physics/TriangleMeshShape 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "meshSource"
            type: "QUrl"
            read: "meshSource"
            write: "setMeshSource"
            notify: "meshSourceChanged"
            index: 0
        }
        Signal { name: "meshSourceChanged" }
    }
    Component {
        file: "private/qtriggerbody_p.h"
        name: "QTriggerBody"
        accessSemantics: "reference"
        prototype: "QAbstractCollisionNode"
        exports: ["QtQuick3D.Physics/TriggerBody 6.0"]
        exportMetaObjectRevisions: [1536]
        Property {
            name: "collisionCount"
            type: "int"
            read: "collisionCount"
            notify: "collisionCountChanged"
            index: 0
            isReadonly: true
        }
        Signal {
            name: "bodyEntered"
            Parameter { name: "body"; type: "QAbstractCollisionNode"; isPointer: true }
        }
        Signal {
            name: "bodyExited"
            Parameter { name: "body"; type: "QAbstractCollisionNode"; isPointer: true }
        }
        Signal { name: "collisionCountChanged" }
    }
}
