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 -v -nonrelocatable -defaultplatform QtDataVisualization 1.3'

Module {
    dependencies: []
    Component {
        name: "QAbstractItemModel"
        prototype: "QObject"
        exports: ["QtDataVisualization/AbstractItemModel 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "LayoutChangeHint"
            values: {
                "NoLayoutChangeHint": 0,
                "VerticalSortHint": 1,
                "HorizontalSortHint": 2
            }
        }
        Signal {
            name: "dataChanged"
            Parameter { name: "topLeft"; type: "QModelIndex" }
            Parameter { name: "bottomRight"; type: "QModelIndex" }
            Parameter { name: "roles"; type: "QVector<int>" }
        }
        Signal {
            name: "dataChanged"
            Parameter { name: "topLeft"; type: "QModelIndex" }
            Parameter { name: "bottomRight"; type: "QModelIndex" }
        }
        Signal {
            name: "headerDataChanged"
            Parameter { name: "orientation"; type: "Qt::Orientation" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "layoutChanged"
            Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
            Parameter { name: "hint"; type: "QAbstractItemModel::LayoutChangeHint" }
        }
        Signal {
            name: "layoutChanged"
            Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
        }
        Signal { name: "layoutChanged" }
        Signal {
            name: "layoutAboutToBeChanged"
            Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
            Parameter { name: "hint"; type: "QAbstractItemModel::LayoutChangeHint" }
        }
        Signal {
            name: "layoutAboutToBeChanged"
            Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
        }
        Signal { name: "layoutAboutToBeChanged" }
        Signal {
            name: "rowsAboutToBeInserted"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "rowsInserted"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "rowsAboutToBeRemoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "rowsRemoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "columnsAboutToBeInserted"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "columnsInserted"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "columnsAboutToBeRemoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal {
            name: "columnsRemoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "first"; type: "int" }
            Parameter { name: "last"; type: "int" }
        }
        Signal { name: "modelAboutToBeReset" }
        Signal { name: "modelReset" }
        Signal {
            name: "rowsAboutToBeMoved"
            Parameter { name: "sourceParent"; type: "QModelIndex" }
            Parameter { name: "sourceStart"; type: "int" }
            Parameter { name: "sourceEnd"; type: "int" }
            Parameter { name: "destinationParent"; type: "QModelIndex" }
            Parameter { name: "destinationRow"; type: "int" }
        }
        Signal {
            name: "rowsMoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "start"; type: "int" }
            Parameter { name: "end"; type: "int" }
            Parameter { name: "destination"; type: "QModelIndex" }
            Parameter { name: "row"; type: "int" }
        }
        Signal {
            name: "columnsAboutToBeMoved"
            Parameter { name: "sourceParent"; type: "QModelIndex" }
            Parameter { name: "sourceStart"; type: "int" }
            Parameter { name: "sourceEnd"; type: "int" }
            Parameter { name: "destinationParent"; type: "QModelIndex" }
            Parameter { name: "destinationColumn"; type: "int" }
        }
        Signal {
            name: "columnsMoved"
            Parameter { name: "parent"; type: "QModelIndex" }
            Parameter { name: "start"; type: "int" }
            Parameter { name: "end"; type: "int" }
            Parameter { name: "destination"; type: "QModelIndex" }
            Parameter { name: "column"; type: "int" }
        }
        Method { name: "submit"; type: "bool" }
        Method { name: "revert" }
        Method {
            name: "hasIndex"
            type: "bool"
            Parameter { name: "row"; type: "int" }
            Parameter { name: "column"; type: "int" }
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method {
            name: "hasIndex"
            type: "bool"
            Parameter { name: "row"; type: "int" }
            Parameter { name: "column"; type: "int" }
        }
        Method {
            name: "index"
            type: "QModelIndex"
            Parameter { name: "row"; type: "int" }
            Parameter { name: "column"; type: "int" }
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method {
            name: "index"
            type: "QModelIndex"
            Parameter { name: "row"; type: "int" }
            Parameter { name: "column"; type: "int" }
        }
        Method {
            name: "parent"
            type: "QModelIndex"
            Parameter { name: "child"; type: "QModelIndex" }
        }
        Method {
            name: "sibling"
            type: "QModelIndex"
            Parameter { name: "row"; type: "int" }
            Parameter { name: "column"; type: "int" }
            Parameter { name: "idx"; type: "QModelIndex" }
        }
        Method {
            name: "rowCount"
            type: "int"
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method { name: "rowCount"; type: "int" }
        Method {
            name: "columnCount"
            type: "int"
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method { name: "columnCount"; type: "int" }
        Method {
            name: "hasChildren"
            type: "bool"
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method { name: "hasChildren"; type: "bool" }
        Method {
            name: "data"
            type: "QVariant"
            Parameter { name: "index"; type: "QModelIndex" }
            Parameter { name: "role"; type: "int" }
        }
        Method {
            name: "data"
            type: "QVariant"
            Parameter { name: "index"; type: "QModelIndex" }
        }
        Method {
            name: "setData"
            type: "bool"
            Parameter { name: "index"; type: "QModelIndex" }
            Parameter { name: "value"; type: "QVariant" }
            Parameter { name: "role"; type: "int" }
        }
        Method {
            name: "setData"
            type: "bool"
            Parameter { name: "index"; type: "QModelIndex" }
            Parameter { name: "value"; type: "QVariant" }
        }
        Method {
            name: "headerData"
            type: "QVariant"
            Parameter { name: "section"; type: "int" }
            Parameter { name: "orientation"; type: "Qt::Orientation" }
            Parameter { name: "role"; type: "int" }
        }
        Method {
            name: "headerData"
            type: "QVariant"
            Parameter { name: "section"; type: "int" }
            Parameter { name: "orientation"; type: "Qt::Orientation" }
        }
        Method {
            name: "fetchMore"
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method {
            name: "canFetchMore"
            type: "bool"
            Parameter { name: "parent"; type: "QModelIndex" }
        }
        Method {
            name: "flags"
            type: "Qt::ItemFlags"
            Parameter { name: "index"; type: "QModelIndex" }
        }
        Method {
            name: "match"
            type: "QModelIndexList"
            Parameter { name: "start"; type: "QModelIndex" }
            Parameter { name: "role"; type: "int" }
            Parameter { name: "value"; type: "QVariant" }
            Parameter { name: "hits"; type: "int" }
            Parameter { name: "flags"; type: "Qt::MatchFlags" }
        }
        Method {
            name: "match"
            type: "QModelIndexList"
            Parameter { name: "start"; type: "QModelIndex" }
            Parameter { name: "role"; type: "int" }
            Parameter { name: "value"; type: "QVariant" }
            Parameter { name: "hits"; type: "int" }
        }
        Method {
            name: "match"
            type: "QModelIndexList"
            Parameter { name: "start"; type: "QModelIndex" }
            Parameter { name: "role"; type: "int" }
            Parameter { name: "value"; type: "QVariant" }
        }
    }
    Component {
        name: "QQuickItem"
        defaultProperty: "data"
        prototype: "QObject"
        Enum {
            name: "TransformOrigin"
            values: {
                "TopLeft": 0,
                "Top": 1,
                "TopRight": 2,
                "Left": 3,
                "Center": 4,
                "Right": 5,
                "BottomLeft": 6,
                "Bottom": 7,
                "BottomRight": 8
            }
        }
        Property { name: "parent"; type: "QQuickItem"; isPointer: true }
        Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true }
        Property { name: "x"; type: "double" }
        Property { name: "y"; type: "double" }
        Property { name: "z"; type: "double" }
        Property { name: "width"; type: "double" }
        Property { name: "height"; type: "double" }
        Property { name: "opacity"; type: "double" }
        Property { name: "enabled"; type: "bool" }
        Property { name: "visible"; type: "bool" }
        Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true }
        Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true }
        Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true }
        Property { name: "state"; type: "string" }
        Property { name: "childrenRect"; type: "QRectF"; isReadonly: true }
        Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true }
        Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true }
        Property { name: "baselineOffset"; type: "double" }
        Property { name: "clip"; type: "bool" }
        Property { name: "focus"; type: "bool" }
        Property { name: "activeFocus"; type: "bool"; isReadonly: true }
        Property { name: "activeFocusOnTab"; revision: 1; type: "bool" }
        Property { name: "rotation"; type: "double" }
        Property { name: "scale"; type: "double" }
        Property { name: "transformOrigin"; type: "TransformOrigin" }
        Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true }
        Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true }
        Property { name: "smooth"; type: "bool" }
        Property { name: "antialiasing"; type: "bool" }
        Property { name: "implicitWidth"; type: "double" }
        Property { name: "implicitHeight"; type: "double" }
        Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true }
        Signal {
            name: "childrenRectChanged"
            Parameter { type: "QRectF" }
        }
        Signal {
            name: "baselineOffsetChanged"
            Parameter { type: "double" }
        }
        Signal {
            name: "stateChanged"
            Parameter { type: "string" }
        }
        Signal {
            name: "focusChanged"
            Parameter { type: "bool" }
        }
        Signal {
            name: "activeFocusChanged"
            Parameter { type: "bool" }
        }
        Signal {
            name: "activeFocusOnTabChanged"
            revision: 1
            Parameter { type: "bool" }
        }
        Signal {
            name: "parentChanged"
            Parameter { type: "QQuickItem"; isPointer: true }
        }
        Signal {
            name: "transformOriginChanged"
            Parameter { type: "TransformOrigin" }
        }
        Signal {
            name: "smoothChanged"
            Parameter { type: "bool" }
        }
        Signal {
            name: "antialiasingChanged"
            Parameter { type: "bool" }
        }
        Signal {
            name: "clipChanged"
            Parameter { type: "bool" }
        }
        Signal {
            name: "windowChanged"
            revision: 1
            Parameter { name: "window"; type: "QQuickWindow"; isPointer: true }
        }
        Method { name: "update" }
        Method {
            name: "grabToImage"
            revision: 2
            type: "bool"
            Parameter { name: "callback"; type: "QJSValue" }
            Parameter { name: "targetSize"; type: "QSize" }
        }
        Method {
            name: "grabToImage"
            revision: 2
            type: "bool"
            Parameter { name: "callback"; type: "QJSValue" }
        }
        Method {
            name: "contains"
            type: "bool"
            Parameter { name: "point"; type: "QPointF" }
        }
        Method {
            name: "mapFromItem"
            Parameter { type: "QQmlV4Function"; isPointer: true }
        }
        Method {
            name: "mapToItem"
            Parameter { type: "QQmlV4Function"; isPointer: true }
        }
        Method {
            name: "mapFromGlobal"
            revision: 7
            Parameter { type: "QQmlV4Function"; isPointer: true }
        }
        Method {
            name: "mapToGlobal"
            revision: 7
            Parameter { type: "QQmlV4Function"; isPointer: true }
        }
        Method { name: "forceActiveFocus" }
        Method {
            name: "forceActiveFocus"
            Parameter { name: "reason"; type: "Qt::FocusReason" }
        }
        Method {
            name: "nextItemInFocusChain"
            revision: 1
            type: "QQuickItem*"
            Parameter { name: "forward"; type: "bool" }
        }
        Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" }
        Method {
            name: "childAt"
            type: "QQuickItem*"
            Parameter { name: "x"; type: "double" }
            Parameter { name: "y"; type: "double" }
        }
    }
    Component {
        name: "QtDataVisualization::AbstractDeclarative"
        defaultProperty: "data"
        prototype: "QQuickItem"
        exports: [
            "QtDataVisualization/AbstractGraph3D 1.0",
            "QtDataVisualization/AbstractGraph3D 1.1",
            "QtDataVisualization/AbstractGraph3D 1.2"
        ]
        isCreatable: false
        exportMetaObjectRevisions: [0, 1, 2]
        Enum {
            name: "SelectionFlag"
            values: {
                "SelectionNone": 0,
                "SelectionItem": 1,
                "SelectionRow": 2,
                "SelectionItemAndRow": 3,
                "SelectionColumn": 4,
                "SelectionItemAndColumn": 5,
                "SelectionRowAndColumn": 6,
                "SelectionItemRowAndColumn": 7,
                "SelectionSlice": 8,
                "SelectionMultiSeries": 16
            }
        }
        Enum {
            name: "SelectionFlags"
            values: {
                "SelectionNone": 0,
                "SelectionItem": 1,
                "SelectionRow": 2,
                "SelectionItemAndRow": 3,
                "SelectionColumn": 4,
                "SelectionItemAndColumn": 5,
                "SelectionRowAndColumn": 6,
                "SelectionItemRowAndColumn": 7,
                "SelectionSlice": 8,
                "SelectionMultiSeries": 16
            }
        }
        Enum {
            name: "ShadowQuality"
            values: {
                "ShadowQualityNone": 0,
                "ShadowQualityLow": 1,
                "ShadowQualityMedium": 2,
                "ShadowQualityHigh": 3,
                "ShadowQualitySoftLow": 4,
                "ShadowQualitySoftMedium": 5,
                "ShadowQualitySoftHigh": 6
            }
        }
        Enum {
            name: "ElementType"
            values: {
                "ElementNone": 0,
                "ElementSeries": 1,
                "ElementAxisXLabel": 2,
                "ElementAxisYLabel": 3,
                "ElementAxisZLabel": 4,
                "ElementCustomItem": 5
            }
        }
        Enum {
            name: "RenderingMode"
            values: {
                "RenderDirectToBackground": 0,
                "RenderDirectToBackground_NoClear": 1,
                "RenderIndirect": 2
            }
        }
        Enum {
            name: "OptimizationHint"
            values: {
                "OptimizationDefault": 0,
                "OptimizationStatic": 1
            }
        }
        Enum {
            name: "OptimizationHints"
            values: {
                "OptimizationDefault": 0,
                "OptimizationStatic": 1
            }
        }
        Property { name: "selectionMode"; type: "SelectionFlags" }
        Property { name: "shadowQuality"; type: "ShadowQuality" }
        Property { name: "shadowsSupported"; type: "bool"; isReadonly: true }
        Property { name: "msaaSamples"; type: "int" }
        Property { name: "scene"; type: "Declarative3DScene"; isReadonly: true; isPointer: true }
        Property { name: "inputHandler"; type: "QAbstract3DInputHandler"; isPointer: true }
        Property { name: "theme"; type: "Q3DTheme"; isPointer: true }
        Property { name: "renderingMode"; type: "RenderingMode" }
        Property { name: "measureFps"; revision: 1; type: "bool" }
        Property { name: "currentFps"; revision: 1; type: "double"; isReadonly: true }
        Property {
            name: "customItemList"
            revision: 1
            type: "QCustom3DItem"
            isList: true
            isReadonly: true
        }
        Property { name: "orthoProjection"; revision: 1; type: "bool" }
        Property { name: "selectedElement"; revision: 1; type: "ElementType"; isReadonly: true }
        Property { name: "aspectRatio"; revision: 1; type: "double" }
        Property { name: "optimizationHints"; revision: 1; type: "OptimizationHints" }
        Property { name: "polar"; revision: 2; type: "bool" }
        Property { name: "radialLabelOffset"; revision: 2; type: "float" }
        Property { name: "horizontalAspectRatio"; revision: 2; type: "double" }
        Property { name: "reflection"; revision: 2; type: "bool" }
        Property { name: "reflectivity"; revision: 2; type: "double" }
        Property { name: "locale"; revision: 2; type: "QLocale" }
        Property { name: "queriedGraphPosition"; revision: 2; type: "QVector3D"; isReadonly: true }
        Property { name: "margin"; revision: 2; type: "double" }
        Signal {
            name: "selectionModeChanged"
            Parameter { name: "mode"; type: "AbstractDeclarative::SelectionFlags" }
        }
        Signal {
            name: "shadowQualityChanged"
            Parameter { name: "quality"; type: "AbstractDeclarative::ShadowQuality" }
        }
        Signal {
            name: "shadowsSupportedChanged"
            Parameter { name: "supported"; type: "bool" }
        }
        Signal {
            name: "msaaSamplesChanged"
            Parameter { name: "samples"; type: "int" }
        }
        Signal {
            name: "sceneChanged"
            Parameter { name: "scene"; type: "Q3DScene"; isPointer: true }
        }
        Signal {
            name: "inputHandlerChanged"
            Parameter { name: "inputHandler"; type: "QAbstract3DInputHandler"; isPointer: true }
        }
        Signal {
            name: "themeChanged"
            Parameter { name: "theme"; type: "Q3DTheme"; isPointer: true }
        }
        Signal {
            name: "renderingModeChanged"
            Parameter { name: "mode"; type: "AbstractDeclarative::RenderingMode" }
        }
        Signal {
            name: "measureFpsChanged"
            revision: 1
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "currentFpsChanged"
            revision: 1
            Parameter { name: "fps"; type: "double" }
        }
        Signal {
            name: "selectedElementChanged"
            revision: 1
            Parameter { name: "type"; type: "AbstractDeclarative::ElementType" }
        }
        Signal {
            name: "orthoProjectionChanged"
            revision: 1
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "aspectRatioChanged"
            revision: 1
            Parameter { name: "ratio"; type: "double" }
        }
        Signal {
            name: "optimizationHintsChanged"
            revision: 1
            Parameter { name: "hints"; type: "AbstractDeclarative::OptimizationHints" }
        }
        Signal {
            name: "polarChanged"
            revision: 2
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "radialLabelOffsetChanged"
            revision: 2
            Parameter { name: "offset"; type: "float" }
        }
        Signal {
            name: "horizontalAspectRatioChanged"
            revision: 2
            Parameter { name: "ratio"; type: "double" }
        }
        Signal {
            name: "reflectionChanged"
            revision: 2
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "reflectivityChanged"
            revision: 2
            Parameter { name: "reflectivity"; type: "double" }
        }
        Signal {
            name: "localeChanged"
            revision: 2
            Parameter { name: "locale"; type: "QLocale" }
        }
        Signal {
            name: "queriedGraphPositionChanged"
            revision: 2
            Parameter { name: "data"; type: "QVector3D" }
        }
        Signal {
            name: "marginChanged"
            revision: 2
            Parameter { name: "margin"; type: "double" }
        }
        Method {
            name: "handleAxisXChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisYChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisZChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "windowDestroyed"
            Parameter { name: "obj"; type: "QObject"; isPointer: true }
        }
        Method { name: "destroyContext" }
        Method { name: "clearSelection" }
        Method {
            name: "addCustomItem"
            revision: 1
            type: "int"
            Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
        }
        Method { name: "removeCustomItems"; revision: 1 }
        Method {
            name: "removeCustomItem"
            revision: 1
            Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
        }
        Method {
            name: "removeCustomItemAt"
            revision: 1
            Parameter { name: "position"; type: "QVector3D" }
        }
        Method {
            name: "releaseCustomItem"
            revision: 1
            Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
        }
        Method { name: "selectedLabelIndex"; revision: 1; type: "int" }
        Method { name: "selectedAxis"; revision: 1; type: "QAbstract3DAxis*" }
        Method { name: "selectedCustomItemIndex"; revision: 1; type: "int" }
        Method { name: "selectedCustomItem"; revision: 1; type: "QCustom3DItem*" }
    }
    Component {
        name: "QtDataVisualization::ColorGradient"
        defaultProperty: "stops"
        prototype: "QObject"
        exports: ["QtDataVisualization/ColorGradient 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "stops"; type: "ColorGradientStop"; isList: true; isReadonly: true }
        Signal { name: "updated" }
    }
    Component {
        name: "QtDataVisualization::ColorGradientStop"
        prototype: "QObject"
        exports: ["QtDataVisualization/ColorGradientStop 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "position"; type: "double" }
        Property { name: "color"; type: "QColor" }
        Signal {
            name: "positionChanged"
            Parameter { name: "position"; type: "double" }
        }
        Signal {
            name: "colorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
    }
    Component {
        name: "QtDataVisualization::Declarative3DScene"
        prototype: "QtDataVisualization::Q3DScene"
        exports: [
            "QtDataVisualization/Scene3D 1.0",
            "QtDataVisualization/Scene3D 1.2"
        ]
        isCreatable: false
        exportMetaObjectRevisions: [0, 1]
        Property { name: "selectionQueryPosition"; type: "QPointF" }
        Property { name: "invalidSelectionPoint"; type: "QPoint"; isReadonly: true }
        Signal {
            name: "selectionQueryPositionChanged"
            Parameter { name: "position"; type: "QPointF" }
        }
    }
    Component {
        name: "QtDataVisualization::DeclarativeBar3DSeries"
        defaultProperty: "seriesChildren"
        prototype: "QtDataVisualization::QBar3DSeries"
        exports: ["QtDataVisualization/Bar3DSeries 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "seriesChildren"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "selectedBar"; type: "QPointF" }
        Property { name: "invalidSelectionPosition"; type: "QPointF"; isReadonly: true }
        Property { name: "baseGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "singleHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "multiHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Signal {
            name: "selectedBarChanged"
            Parameter { name: "position"; type: "QPointF" }
        }
        Signal {
            name: "baseGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Method { name: "handleBaseGradientUpdate" }
        Method { name: "handleSingleHighlightGradientUpdate" }
        Method { name: "handleMultiHighlightGradientUpdate" }
    }
    Component {
        name: "QtDataVisualization::DeclarativeBars"
        defaultProperty: "seriesList"
        prototype: "QtDataVisualization::AbstractDeclarative"
        exports: [
            "QtDataVisualization/Bars3D 1.0",
            "QtDataVisualization/Bars3D 1.2"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "rowAxis"; type: "QCategory3DAxis"; isPointer: true }
        Property { name: "valueAxis"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "columnAxis"; type: "QCategory3DAxis"; isPointer: true }
        Property { name: "multiSeriesUniform"; type: "bool" }
        Property { name: "barThickness"; type: "float" }
        Property { name: "barSpacing"; type: "QSizeF" }
        Property { name: "barSpacingRelative"; type: "bool" }
        Property { name: "seriesList"; type: "QBar3DSeries"; isList: true; isReadonly: true }
        Property { name: "selectedSeries"; type: "QBar3DSeries"; isReadonly: true; isPointer: true }
        Property { name: "primarySeries"; type: "QBar3DSeries"; isPointer: true }
        Property { name: "floorLevel"; revision: 1; type: "float" }
        Signal {
            name: "rowAxisChanged"
            Parameter { name: "axis"; type: "QCategory3DAxis"; isPointer: true }
        }
        Signal {
            name: "valueAxisChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "columnAxisChanged"
            Parameter { name: "axis"; type: "QCategory3DAxis"; isPointer: true }
        }
        Signal {
            name: "multiSeriesUniformChanged"
            Parameter { name: "uniform"; type: "bool" }
        }
        Signal {
            name: "barThicknessChanged"
            Parameter { name: "thicknessRatio"; type: "float" }
        }
        Signal {
            name: "barSpacingChanged"
            Parameter { name: "spacing"; type: "QSizeF" }
        }
        Signal {
            name: "barSpacingRelativeChanged"
            Parameter { name: "relative"; type: "bool" }
        }
        Signal {
            name: "meshFileNameChanged"
            Parameter { name: "filename"; type: "string" }
        }
        Signal {
            name: "primarySeriesChanged"
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
        Signal {
            name: "selectedSeriesChanged"
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
        Signal {
            name: "floorLevelChanged"
            revision: 1
            Parameter { name: "level"; type: "float" }
        }
        Method {
            name: "handleAxisXChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisYChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisZChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "addSeries"
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
        Method {
            name: "removeSeries"
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
        Method {
            name: "insertSeries"
            Parameter { name: "index"; type: "int" }
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::DeclarativeColor"
        prototype: "QObject"
        exports: ["QtDataVisualization/ThemeColor 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "color"; type: "QColor" }
        Signal {
            name: "colorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
    }
    Component {
        name: "QtDataVisualization::DeclarativeScatter"
        defaultProperty: "seriesList"
        prototype: "QtDataVisualization::AbstractDeclarative"
        exports: ["QtDataVisualization/Scatter3D 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "axisX"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "axisY"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "axisZ"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "selectedSeries"; type: "QScatter3DSeries"; isReadonly: true; isPointer: true }
        Property { name: "seriesList"; type: "QScatter3DSeries"; isList: true; isReadonly: true }
        Signal {
            name: "axisXChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "axisYChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "axisZChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "selectedSeriesChanged"
            Parameter { name: "series"; type: "QScatter3DSeries"; isPointer: true }
        }
        Method {
            name: "handleAxisXChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisYChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisZChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "addSeries"
            Parameter { name: "series"; type: "QScatter3DSeries"; isPointer: true }
        }
        Method {
            name: "removeSeries"
            Parameter { name: "series"; type: "QScatter3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::DeclarativeScatter3DSeries"
        defaultProperty: "seriesChildren"
        prototype: "QtDataVisualization::QScatter3DSeries"
        exports: ["QtDataVisualization/Scatter3DSeries 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "seriesChildren"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "baseGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "singleHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "multiHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "invalidSelectionIndex"; type: "int"; isReadonly: true }
        Signal {
            name: "baseGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Method { name: "handleBaseGradientUpdate" }
        Method { name: "handleSingleHighlightGradientUpdate" }
        Method { name: "handleMultiHighlightGradientUpdate" }
    }
    Component {
        name: "QtDataVisualization::DeclarativeSurface"
        defaultProperty: "seriesList"
        prototype: "QtDataVisualization::AbstractDeclarative"
        exports: [
            "QtDataVisualization/Surface3D 1.0",
            "QtDataVisualization/Surface3D 1.2"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "axisX"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "axisY"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "axisZ"; type: "QValue3DAxis"; isPointer: true }
        Property { name: "selectedSeries"; type: "QSurface3DSeries"; isReadonly: true; isPointer: true }
        Property { name: "seriesList"; type: "QSurface3DSeries"; isList: true; isReadonly: true }
        Property { name: "flipHorizontalGrid"; revision: 1; type: "bool" }
        Signal {
            name: "axisXChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "axisYChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "axisZChanged"
            Parameter { name: "axis"; type: "QValue3DAxis"; isPointer: true }
        }
        Signal {
            name: "selectedSeriesChanged"
            Parameter { name: "series"; type: "QSurface3DSeries"; isPointer: true }
        }
        Signal {
            name: "flipHorizontalGridChanged"
            revision: 1
            Parameter { name: "flip"; type: "bool" }
        }
        Method {
            name: "handleAxisXChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisYChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "handleAxisZChanged"
            Parameter { name: "axis"; type: "QAbstract3DAxis"; isPointer: true }
        }
        Method {
            name: "addSeries"
            Parameter { name: "series"; type: "QSurface3DSeries"; isPointer: true }
        }
        Method {
            name: "removeSeries"
            Parameter { name: "series"; type: "QSurface3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::DeclarativeSurface3DSeries"
        defaultProperty: "seriesChildren"
        prototype: "QtDataVisualization::QSurface3DSeries"
        exports: ["QtDataVisualization/Surface3DSeries 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "seriesChildren"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "selectedPoint"; type: "QPointF" }
        Property { name: "invalidSelectionPosition"; type: "QPointF"; isReadonly: true }
        Property { name: "baseGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "singleHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "multiHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Signal {
            name: "selectedPointChanged"
            Parameter { name: "position"; type: "QPointF" }
        }
        Signal {
            name: "baseGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Method { name: "handleBaseGradientUpdate" }
        Method { name: "handleSingleHighlightGradientUpdate" }
        Method { name: "handleMultiHighlightGradientUpdate" }
    }
    Component {
        name: "QtDataVisualization::DeclarativeTheme3D"
        defaultProperty: "themeChildren"
        prototype: "QtDataVisualization::Q3DTheme"
        exports: ["QtDataVisualization/Theme3D 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "themeChildren"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "baseColors"; type: "DeclarativeColor"; isList: true; isReadonly: true }
        Property { name: "baseGradients"; type: "ColorGradient"; isList: true; isReadonly: true }
        Property { name: "singleHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Property { name: "multiHighlightGradient"; type: "ColorGradient"; isPointer: true }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "ColorGradient"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DCamera"
        prototype: "QtDataVisualization::Q3DObject"
        exports: [
            "QtDataVisualization/Camera3D 1.0",
            "QtDataVisualization/Camera3D 1.2"
        ]
        exportMetaObjectRevisions: [0, 1]
        Enum {
            name: "CameraPreset"
            values: {
                "CameraPresetNone": -1,
                "CameraPresetFrontLow": 0,
                "CameraPresetFront": 1,
                "CameraPresetFrontHigh": 2,
                "CameraPresetLeftLow": 3,
                "CameraPresetLeft": 4,
                "CameraPresetLeftHigh": 5,
                "CameraPresetRightLow": 6,
                "CameraPresetRight": 7,
                "CameraPresetRightHigh": 8,
                "CameraPresetBehindLow": 9,
                "CameraPresetBehind": 10,
                "CameraPresetBehindHigh": 11,
                "CameraPresetIsometricLeft": 12,
                "CameraPresetIsometricLeftHigh": 13,
                "CameraPresetIsometricRight": 14,
                "CameraPresetIsometricRightHigh": 15,
                "CameraPresetDirectlyAbove": 16,
                "CameraPresetDirectlyAboveCW45": 17,
                "CameraPresetDirectlyAboveCCW45": 18,
                "CameraPresetFrontBelow": 19,
                "CameraPresetLeftBelow": 20,
                "CameraPresetRightBelow": 21,
                "CameraPresetBehindBelow": 22,
                "CameraPresetDirectlyBelow": 23
            }
        }
        Property { name: "xRotation"; type: "float" }
        Property { name: "yRotation"; type: "float" }
        Property { name: "zoomLevel"; type: "float" }
        Property { name: "cameraPreset"; type: "CameraPreset" }
        Property { name: "wrapXRotation"; type: "bool" }
        Property { name: "wrapYRotation"; type: "bool" }
        Property { name: "target"; revision: 1; type: "QVector3D" }
        Property { name: "minZoomLevel"; revision: 1; type: "float" }
        Property { name: "maxZoomLevel"; revision: 1; type: "float" }
        Signal {
            name: "xRotationChanged"
            Parameter { name: "rotation"; type: "float" }
        }
        Signal {
            name: "yRotationChanged"
            Parameter { name: "rotation"; type: "float" }
        }
        Signal {
            name: "zoomLevelChanged"
            Parameter { name: "zoomLevel"; type: "float" }
        }
        Signal {
            name: "cameraPresetChanged"
            Parameter { name: "preset"; type: "Q3DCamera::CameraPreset" }
        }
        Signal {
            name: "wrapXRotationChanged"
            Parameter { name: "isEnabled"; type: "bool" }
        }
        Signal {
            name: "wrapYRotationChanged"
            Parameter { name: "isEnabled"; type: "bool" }
        }
        Signal {
            name: "targetChanged"
            revision: 1
            Parameter { name: "target"; type: "QVector3D" }
        }
        Signal {
            name: "minZoomLevelChanged"
            revision: 1
            Parameter { name: "zoomLevel"; type: "float" }
        }
        Signal {
            name: "maxZoomLevelChanged"
            revision: 1
            Parameter { name: "zoomLevel"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DInputHandler"
        prototype: "QtDataVisualization::QAbstract3DInputHandler"
        exports: ["QtDataVisualization/InputHandler3D 1.2"]
        exportMetaObjectRevisions: [0]
        Property { name: "rotationEnabled"; type: "bool" }
        Property { name: "zoomEnabled"; type: "bool" }
        Property { name: "selectionEnabled"; type: "bool" }
        Property { name: "zoomAtTargetEnabled"; type: "bool" }
        Signal {
            name: "rotationEnabledChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "zoomEnabledChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "selectionEnabledChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "zoomAtTargetEnabledChanged"
            Parameter { name: "enable"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DLight"
        prototype: "QtDataVisualization::Q3DObject"
        exports: [
            "QtDataVisualization/Light3D 1.0",
            "QtDataVisualization/Light3D 1.3"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "autoPosition"; revision: 1; type: "bool" }
        Signal {
            name: "autoPositionChanged"
            revision: 1
            Parameter { name: "autoPosition"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DObject"
        prototype: "QObject"
        exports: ["QtDataVisualization/Object3D 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "parentScene"; type: "Q3DScene"; isReadonly: true; isPointer: true }
        Property { name: "position"; type: "QVector3D" }
        Signal {
            name: "positionChanged"
            Parameter { name: "position"; type: "QVector3D" }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DScene"
        prototype: "QObject"
        Property { name: "viewport"; type: "QRect"; isReadonly: true }
        Property { name: "primarySubViewport"; type: "QRect" }
        Property { name: "secondarySubViewport"; type: "QRect" }
        Property { name: "selectionQueryPosition"; type: "QPoint" }
        Property { name: "secondarySubviewOnTop"; type: "bool" }
        Property { name: "slicingActive"; type: "bool" }
        Property { name: "activeCamera"; type: "Q3DCamera"; isPointer: true }
        Property { name: "activeLight"; type: "Q3DLight"; isPointer: true }
        Property { name: "devicePixelRatio"; type: "float" }
        Property { name: "graphPositionQuery"; revision: 1; type: "QPoint" }
        Signal {
            name: "viewportChanged"
            Parameter { name: "viewport"; type: "QRect" }
        }
        Signal {
            name: "primarySubViewportChanged"
            Parameter { name: "subViewport"; type: "QRect" }
        }
        Signal {
            name: "secondarySubViewportChanged"
            Parameter { name: "subViewport"; type: "QRect" }
        }
        Signal {
            name: "secondarySubviewOnTopChanged"
            Parameter { name: "isSecondaryOnTop"; type: "bool" }
        }
        Signal {
            name: "slicingActiveChanged"
            Parameter { name: "isSlicingActive"; type: "bool" }
        }
        Signal {
            name: "activeCameraChanged"
            Parameter { name: "camera"; type: "Q3DCamera"; isPointer: true }
        }
        Signal {
            name: "activeLightChanged"
            Parameter { name: "light"; type: "Q3DLight"; isPointer: true }
        }
        Signal {
            name: "devicePixelRatioChanged"
            Parameter { name: "pixelRatio"; type: "float" }
        }
        Signal {
            name: "selectionQueryPositionChanged"
            Parameter { name: "position"; type: "QPoint" }
        }
        Signal {
            name: "graphPositionQueryChanged"
            revision: 1
            Parameter { name: "position"; type: "QPoint" }
        }
    }
    Component {
        name: "QtDataVisualization::Q3DTheme"
        prototype: "QObject"
        exports: ["QtDataVisualization/Q3DTheme 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "ColorStyle"
            values: {
                "ColorStyleUniform": 0,
                "ColorStyleObjectGradient": 1,
                "ColorStyleRangeGradient": 2
            }
        }
        Enum {
            name: "Theme"
            values: {
                "ThemeQt": 0,
                "ThemePrimaryColors": 1,
                "ThemeDigia": 2,
                "ThemeStoneMoss": 3,
                "ThemeArmyBlue": 4,
                "ThemeRetro": 5,
                "ThemeEbony": 6,
                "ThemeIsabelle": 7,
                "ThemeUserDefined": 8
            }
        }
        Property { name: "type"; type: "Theme" }
        Property { name: "baseColors"; type: "QList<QColor>" }
        Property { name: "backgroundColor"; type: "QColor" }
        Property { name: "windowColor"; type: "QColor" }
        Property { name: "labelTextColor"; type: "QColor" }
        Property { name: "labelBackgroundColor"; type: "QColor" }
        Property { name: "gridLineColor"; type: "QColor" }
        Property { name: "singleHighlightColor"; type: "QColor" }
        Property { name: "multiHighlightColor"; type: "QColor" }
        Property { name: "lightColor"; type: "QColor" }
        Property { name: "baseGradients"; type: "QList<QLinearGradient>" }
        Property { name: "singleHighlightGradient"; type: "QLinearGradient" }
        Property { name: "multiHighlightGradient"; type: "QLinearGradient" }
        Property { name: "lightStrength"; type: "float" }
        Property { name: "ambientLightStrength"; type: "float" }
        Property { name: "highlightLightStrength"; type: "float" }
        Property { name: "labelBorderEnabled"; type: "bool" }
        Property { name: "font"; type: "QFont" }
        Property { name: "backgroundEnabled"; type: "bool" }
        Property { name: "gridEnabled"; type: "bool" }
        Property { name: "labelBackgroundEnabled"; type: "bool" }
        Property { name: "colorStyle"; type: "ColorStyle" }
        Signal {
            name: "typeChanged"
            Parameter { name: "themeType"; type: "Q3DTheme::Theme" }
        }
        Signal {
            name: "baseColorsChanged"
            Parameter { name: "colors"; type: "QList<QColor>" }
        }
        Signal {
            name: "backgroundColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "windowColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "labelTextColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "labelBackgroundColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "gridLineColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "singleHighlightColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "multiHighlightColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "lightColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "baseGradientsChanged"
            Parameter { name: "gradients"; type: "QList<QLinearGradient>" }
        }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "QLinearGradient" }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "QLinearGradient" }
        }
        Signal {
            name: "lightStrengthChanged"
            Parameter { name: "strength"; type: "float" }
        }
        Signal {
            name: "ambientLightStrengthChanged"
            Parameter { name: "strength"; type: "float" }
        }
        Signal {
            name: "highlightLightStrengthChanged"
            Parameter { name: "strength"; type: "float" }
        }
        Signal {
            name: "labelBorderEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "fontChanged"
            Parameter { name: "font"; type: "QFont" }
        }
        Signal {
            name: "backgroundEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "gridEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "labelBackgroundEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "colorStyleChanged"
            Parameter { name: "style"; type: "Q3DTheme::ColorStyle" }
        }
    }
    Component {
        name: "QtDataVisualization::QAbstract3DAxis"
        prototype: "QObject"
        exports: [
            "QtDataVisualization/AbstractAxis3D 1.0",
            "QtDataVisualization/AbstractAxis3D 1.1"
        ]
        isCreatable: false
        exportMetaObjectRevisions: [0, 1]
        Enum {
            name: "AxisOrientation"
            values: {
                "AxisOrientationNone": 0,
                "AxisOrientationX": 1,
                "AxisOrientationY": 2,
                "AxisOrientationZ": 4
            }
        }
        Enum {
            name: "AxisType"
            values: {
                "AxisTypeNone": 0,
                "AxisTypeCategory": 1,
                "AxisTypeValue": 2
            }
        }
        Property { name: "title"; type: "string" }
        Property { name: "labels"; type: "QStringList" }
        Property { name: "orientation"; type: "AxisOrientation"; isReadonly: true }
        Property { name: "type"; type: "AxisType"; isReadonly: true }
        Property { name: "min"; type: "float" }
        Property { name: "max"; type: "float" }
        Property { name: "autoAdjustRange"; type: "bool" }
        Property { name: "labelAutoRotation"; revision: 1; type: "float" }
        Property { name: "titleVisible"; revision: 1; type: "bool" }
        Property { name: "titleFixed"; revision: 1; type: "bool" }
        Signal {
            name: "titleChanged"
            Parameter { name: "newTitle"; type: "string" }
        }
        Signal {
            name: "orientationChanged"
            Parameter { name: "orientation"; type: "QAbstract3DAxis::AxisOrientation" }
        }
        Signal {
            name: "minChanged"
            Parameter { name: "value"; type: "float" }
        }
        Signal {
            name: "maxChanged"
            Parameter { name: "value"; type: "float" }
        }
        Signal {
            name: "rangeChanged"
            Parameter { name: "min"; type: "float" }
            Parameter { name: "max"; type: "float" }
        }
        Signal {
            name: "autoAdjustRangeChanged"
            Parameter { name: "autoAdjust"; type: "bool" }
        }
        Signal {
            name: "labelAutoRotationChanged"
            revision: 1
            Parameter { name: "angle"; type: "float" }
        }
        Signal {
            name: "titleVisibilityChanged"
            revision: 1
            Parameter { name: "visible"; type: "bool" }
        }
        Signal {
            name: "titleFixedChanged"
            revision: 1
            Parameter { name: "fixed"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::QAbstract3DInputHandler"
        prototype: "QObject"
        exports: ["QtDataVisualization/AbstractInputHandler3D 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "InputView"
            values: {
                "InputViewNone": 0,
                "InputViewOnPrimary": 1,
                "InputViewOnSecondary": 2
            }
        }
        Property { name: "inputView"; type: "InputView" }
        Property { name: "inputPosition"; type: "QPoint" }
        Property { name: "scene"; type: "Q3DScene"; isPointer: true }
        Signal {
            name: "positionChanged"
            Parameter { name: "position"; type: "QPoint" }
        }
        Signal {
            name: "inputViewChanged"
            Parameter { name: "view"; type: "QAbstract3DInputHandler::InputView" }
        }
        Signal {
            name: "sceneChanged"
            Parameter { name: "scene"; type: "Q3DScene"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::QAbstract3DSeries"
        prototype: "QObject"
        exports: [
            "QtDataVisualization/Abstract3DSeries 1.0",
            "QtDataVisualization/Abstract3DSeries 1.1"
        ]
        isCreatable: false
        exportMetaObjectRevisions: [0, 1]
        Enum {
            name: "SeriesType"
            values: {
                "SeriesTypeNone": 0,
                "SeriesTypeBar": 1,
                "SeriesTypeScatter": 2,
                "SeriesTypeSurface": 4
            }
        }
        Enum {
            name: "Mesh"
            values: {
                "MeshUserDefined": 0,
                "MeshBar": 1,
                "MeshCube": 2,
                "MeshPyramid": 3,
                "MeshCone": 4,
                "MeshCylinder": 5,
                "MeshBevelBar": 6,
                "MeshBevelCube": 7,
                "MeshSphere": 8,
                "MeshMinimal": 9,
                "MeshArrow": 10,
                "MeshPoint": 11
            }
        }
        Property { name: "type"; type: "SeriesType"; isReadonly: true }
        Property { name: "itemLabelFormat"; type: "string" }
        Property { name: "visible"; type: "bool" }
        Property { name: "mesh"; type: "Mesh" }
        Property { name: "meshSmooth"; type: "bool" }
        Property { name: "meshRotation"; type: "QQuaternion" }
        Property { name: "userDefinedMesh"; type: "string" }
        Property { name: "colorStyle"; type: "QtDataVisualization::Q3DTheme::ColorStyle" }
        Property { name: "baseColor"; type: "QColor" }
        Property { name: "baseGradient"; type: "QLinearGradient" }
        Property { name: "singleHighlightColor"; type: "QColor" }
        Property { name: "singleHighlightGradient"; type: "QLinearGradient" }
        Property { name: "multiHighlightColor"; type: "QColor" }
        Property { name: "multiHighlightGradient"; type: "QLinearGradient" }
        Property { name: "name"; type: "string" }
        Property { name: "itemLabel"; revision: 1; type: "string"; isReadonly: true }
        Property { name: "itemLabelVisible"; revision: 1; type: "bool" }
        Signal {
            name: "itemLabelFormatChanged"
            Parameter { name: "format"; type: "string" }
        }
        Signal {
            name: "visibilityChanged"
            Parameter { name: "visible"; type: "bool" }
        }
        Signal {
            name: "meshChanged"
            Parameter { name: "mesh"; type: "QAbstract3DSeries::Mesh" }
        }
        Signal {
            name: "meshSmoothChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "meshRotationChanged"
            Parameter { name: "rotation"; type: "QQuaternion" }
        }
        Signal {
            name: "userDefinedMeshChanged"
            Parameter { name: "fileName"; type: "string" }
        }
        Signal {
            name: "colorStyleChanged"
            Parameter { name: "style"; type: "Q3DTheme::ColorStyle" }
        }
        Signal {
            name: "baseColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "baseGradientChanged"
            Parameter { name: "gradient"; type: "QLinearGradient" }
        }
        Signal {
            name: "singleHighlightColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "singleHighlightGradientChanged"
            Parameter { name: "gradient"; type: "QLinearGradient" }
        }
        Signal {
            name: "multiHighlightColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "multiHighlightGradientChanged"
            Parameter { name: "gradient"; type: "QLinearGradient" }
        }
        Signal {
            name: "nameChanged"
            Parameter { name: "name"; type: "string" }
        }
        Signal {
            name: "itemLabelChanged"
            revision: 1
            Parameter { name: "label"; type: "string" }
        }
        Signal {
            name: "itemLabelVisibilityChanged"
            revision: 1
            Parameter { name: "visible"; type: "bool" }
        }
        Method {
            name: "setMeshAxisAndAngle"
            Parameter { name: "axis"; type: "QVector3D" }
            Parameter { name: "angle"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::QAbstractDataProxy"
        prototype: "QObject"
        exports: ["QtDataVisualization/AbstractDataProxy 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "DataType"
            values: {
                "DataTypeNone": 0,
                "DataTypeBar": 1,
                "DataTypeScatter": 2,
                "DataTypeSurface": 4
            }
        }
        Property { name: "type"; type: "DataType"; isReadonly: true }
    }
    Component {
        name: "QtDataVisualization::QBar3DSeries"
        prototype: "QtDataVisualization::QAbstract3DSeries"
        exports: ["QtDataVisualization/QBar3DSeries 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "dataProxy"; type: "QBarDataProxy"; isPointer: true }
        Property { name: "selectedBar"; type: "QPoint" }
        Property { name: "meshAngle"; type: "float" }
        Signal {
            name: "dataProxyChanged"
            Parameter { name: "proxy"; type: "QBarDataProxy"; isPointer: true }
        }
        Signal {
            name: "selectedBarChanged"
            Parameter { name: "position"; type: "QPoint" }
        }
        Signal {
            name: "meshAngleChanged"
            Parameter { name: "angle"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::QBarDataProxy"
        prototype: "QtDataVisualization::QAbstractDataProxy"
        exports: ["QtDataVisualization/BarDataProxy 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "rowCount"; type: "int"; isReadonly: true }
        Property { name: "rowLabels"; type: "QStringList" }
        Property { name: "columnLabels"; type: "QStringList" }
        Property { name: "series"; type: "QBar3DSeries"; isReadonly: true; isPointer: true }
        Signal { name: "arrayReset" }
        Signal {
            name: "rowsAdded"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsChanged"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsRemoved"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsInserted"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemChanged"
            Parameter { name: "rowIndex"; type: "int" }
            Parameter { name: "columnIndex"; type: "int" }
        }
        Signal {
            name: "rowCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "seriesChanged"
            Parameter { name: "series"; type: "QBar3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::QCategory3DAxis"
        prototype: "QtDataVisualization::QAbstract3DAxis"
        exports: ["QtDataVisualization/CategoryAxis3D 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "labels"; type: "QStringList" }
    }
    Component {
        name: "QtDataVisualization::QCustom3DItem"
        prototype: "QObject"
        exports: [
            "QtDataVisualization/Custom3DItem 1.1",
            "QtDataVisualization/Custom3DItem 1.2"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "meshFile"; type: "string" }
        Property { name: "textureFile"; type: "string" }
        Property { name: "position"; type: "QVector3D" }
        Property { name: "positionAbsolute"; type: "bool" }
        Property { name: "scaling"; type: "QVector3D" }
        Property { name: "rotation"; type: "QQuaternion" }
        Property { name: "visible"; type: "bool" }
        Property { name: "shadowCasting"; type: "bool" }
        Property { name: "scalingAbsolute"; revision: 1; type: "bool" }
        Signal {
            name: "meshFileChanged"
            Parameter { name: "meshFile"; type: "string" }
        }
        Signal {
            name: "textureFileChanged"
            Parameter { name: "textureFile"; type: "string" }
        }
        Signal {
            name: "positionChanged"
            Parameter { name: "position"; type: "QVector3D" }
        }
        Signal {
            name: "positionAbsoluteChanged"
            Parameter { name: "positionAbsolute"; type: "bool" }
        }
        Signal {
            name: "scalingChanged"
            Parameter { name: "scaling"; type: "QVector3D" }
        }
        Signal {
            name: "rotationChanged"
            Parameter { name: "rotation"; type: "QQuaternion" }
        }
        Signal {
            name: "visibleChanged"
            Parameter { name: "visible"; type: "bool" }
        }
        Signal {
            name: "shadowCastingChanged"
            Parameter { name: "shadowCasting"; type: "bool" }
        }
        Signal {
            name: "scalingAbsoluteChanged"
            revision: 1
            Parameter { name: "scalingAbsolute"; type: "bool" }
        }
        Method {
            name: "setRotationAxisAndAngle"
            Parameter { name: "axis"; type: "QVector3D" }
            Parameter { name: "angle"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::QCustom3DLabel"
        prototype: "QtDataVisualization::QCustom3DItem"
        exports: ["QtDataVisualization/Custom3DLabel 1.1"]
        exportMetaObjectRevisions: [0]
        Property { name: "text"; type: "string" }
        Property { name: "font"; type: "QFont" }
        Property { name: "textColor"; type: "QColor" }
        Property { name: "backgroundColor"; type: "QColor" }
        Property { name: "borderEnabled"; type: "bool" }
        Property { name: "backgroundEnabled"; type: "bool" }
        Property { name: "facingCamera"; type: "bool" }
        Signal {
            name: "textChanged"
            Parameter { name: "text"; type: "string" }
        }
        Signal {
            name: "fontChanged"
            Parameter { name: "font"; type: "QFont" }
        }
        Signal {
            name: "textColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "backgroundColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "borderEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "backgroundEnabledChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "facingCameraChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::QCustom3DVolume"
        prototype: "QtDataVisualization::QCustom3DItem"
        exports: ["QtDataVisualization/Custom3DVolume 1.2"]
        exportMetaObjectRevisions: [0]
        Property { name: "textureWidth"; type: "int" }
        Property { name: "textureHeight"; type: "int" }
        Property { name: "textureDepth"; type: "int" }
        Property { name: "sliceIndexX"; type: "int" }
        Property { name: "sliceIndexY"; type: "int" }
        Property { name: "sliceIndexZ"; type: "int" }
        Property { name: "colorTable"; type: "QVector<QRgb>" }
        Property { name: "textureData"; type: "QVector<uchar>"; isPointer: true }
        Property { name: "alphaMultiplier"; type: "float" }
        Property { name: "preserveOpacity"; type: "bool" }
        Property { name: "useHighDefShader"; type: "bool" }
        Property { name: "drawSlices"; type: "bool" }
        Property { name: "drawSliceFrames"; type: "bool" }
        Property { name: "sliceFrameColor"; type: "QColor" }
        Property { name: "sliceFrameWidths"; type: "QVector3D" }
        Property { name: "sliceFrameGaps"; type: "QVector3D" }
        Property { name: "sliceFrameThicknesses"; type: "QVector3D" }
        Signal {
            name: "textureWidthChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "textureHeightChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "textureDepthChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "sliceIndexXChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "sliceIndexYChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "sliceIndexZChanged"
            Parameter { name: "value"; type: "int" }
        }
        Signal {
            name: "textureDataChanged"
            Parameter { name: "data"; type: "QVector<uchar>"; isPointer: true }
        }
        Signal {
            name: "textureFormatChanged"
            Parameter { name: "format"; type: "QImage::Format" }
        }
        Signal {
            name: "alphaMultiplierChanged"
            Parameter { name: "mult"; type: "float" }
        }
        Signal {
            name: "preserveOpacityChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "useHighDefShaderChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "drawSlicesChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "drawSliceFramesChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "sliceFrameColorChanged"
            Parameter { name: "color"; type: "QColor" }
        }
        Signal {
            name: "sliceFrameWidthsChanged"
            Parameter { name: "values"; type: "QVector3D" }
        }
        Signal {
            name: "sliceFrameGapsChanged"
            Parameter { name: "values"; type: "QVector3D" }
        }
        Signal {
            name: "sliceFrameThicknessesChanged"
            Parameter { name: "values"; type: "QVector3D" }
        }
    }
    Component {
        name: "QtDataVisualization::QHeightMapSurfaceDataProxy"
        prototype: "QtDataVisualization::QSurfaceDataProxy"
        exports: ["QtDataVisualization/HeightMapSurfaceDataProxy 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "heightMap"; type: "QImage" }
        Property { name: "heightMapFile"; type: "string" }
        Property { name: "minXValue"; type: "float" }
        Property { name: "maxXValue"; type: "float" }
        Property { name: "minZValue"; type: "float" }
        Property { name: "maxZValue"; type: "float" }
        Signal {
            name: "heightMapChanged"
            Parameter { name: "image"; type: "QImage" }
        }
        Signal {
            name: "heightMapFileChanged"
            Parameter { name: "filename"; type: "string" }
        }
        Signal {
            name: "minXValueChanged"
            Parameter { name: "value"; type: "float" }
        }
        Signal {
            name: "maxXValueChanged"
            Parameter { name: "value"; type: "float" }
        }
        Signal {
            name: "minZValueChanged"
            Parameter { name: "value"; type: "float" }
        }
        Signal {
            name: "maxZValueChanged"
            Parameter { name: "value"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::QItemModelBarDataProxy"
        prototype: "QtDataVisualization::QBarDataProxy"
        exports: [
            "QtDataVisualization/ItemModelBarDataProxy 1.0",
            "QtDataVisualization/ItemModelBarDataProxy 1.1"
        ]
        exportMetaObjectRevisions: [0, 1]
        Enum {
            name: "MultiMatchBehavior"
            values: {
                "MMBFirst": 0,
                "MMBLast": 1,
                "MMBAverage": 2,
                "MMBCumulative": 3
            }
        }
        Property { name: "itemModel"; type: "QAbstractItemModel"; isPointer: true }
        Property { name: "rowRole"; type: "string" }
        Property { name: "columnRole"; type: "string" }
        Property { name: "valueRole"; type: "string" }
        Property { name: "rotationRole"; type: "string" }
        Property { name: "rowCategories"; type: "QStringList" }
        Property { name: "columnCategories"; type: "QStringList" }
        Property { name: "useModelCategories"; type: "bool" }
        Property { name: "autoRowCategories"; type: "bool" }
        Property { name: "autoColumnCategories"; type: "bool" }
        Property { name: "rowRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "columnRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "valueRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "rotationRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "rowRoleReplace"; revision: 1; type: "string" }
        Property { name: "columnRoleReplace"; revision: 1; type: "string" }
        Property { name: "valueRoleReplace"; revision: 1; type: "string" }
        Property { name: "rotationRoleReplace"; revision: 1; type: "string" }
        Property { name: "multiMatchBehavior"; revision: 1; type: "MultiMatchBehavior" }
        Signal {
            name: "itemModelChanged"
            Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
        }
        Signal {
            name: "rowRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "columnRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "valueRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "rotationRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "useModelCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "autoRowCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "autoColumnCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "rowRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "columnRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "valueRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "rotationRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "rowRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "columnRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "valueRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "rotationRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "multiMatchBehaviorChanged"
            revision: 1
            Parameter { name: "behavior"; type: "MultiMatchBehavior" }
        }
        Method {
            name: "rowCategoryIndex"
            type: "int"
            Parameter { name: "category"; type: "string" }
        }
        Method {
            name: "columnCategoryIndex"
            type: "int"
            Parameter { name: "category"; type: "string" }
        }
    }
    Component {
        name: "QtDataVisualization::QItemModelScatterDataProxy"
        prototype: "QtDataVisualization::QScatterDataProxy"
        exports: [
            "QtDataVisualization/ItemModelScatterDataProxy 1.0",
            "QtDataVisualization/ItemModelScatterDataProxy 1.1"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "itemModel"; type: "QAbstractItemModel"; isPointer: true }
        Property { name: "xPosRole"; type: "string" }
        Property { name: "yPosRole"; type: "string" }
        Property { name: "zPosRole"; type: "string" }
        Property { name: "rotationRole"; type: "string" }
        Property { name: "xPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "yPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "zPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "rotationRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "xPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "yPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "zPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "rotationRoleReplace"; revision: 1; type: "string" }
        Signal {
            name: "itemModelChanged"
            Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
        }
        Signal {
            name: "xPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "yPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "zPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "rotationRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "xPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "yPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "zPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "rotationRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "rotationRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "xPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "yPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "zPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
    }
    Component {
        name: "QtDataVisualization::QItemModelSurfaceDataProxy"
        prototype: "QtDataVisualization::QSurfaceDataProxy"
        exports: [
            "QtDataVisualization/ItemModelSurfaceDataProxy 1.0",
            "QtDataVisualization/ItemModelSurfaceDataProxy 1.1"
        ]
        exportMetaObjectRevisions: [0, 1]
        Enum {
            name: "MultiMatchBehavior"
            values: {
                "MMBFirst": 0,
                "MMBLast": 1,
                "MMBAverage": 2,
                "MMBCumulativeY": 3
            }
        }
        Property { name: "itemModel"; type: "QAbstractItemModel"; isPointer: true }
        Property { name: "rowRole"; type: "string" }
        Property { name: "columnRole"; type: "string" }
        Property { name: "xPosRole"; type: "string" }
        Property { name: "yPosRole"; type: "string" }
        Property { name: "zPosRole"; type: "string" }
        Property { name: "rowCategories"; type: "QStringList" }
        Property { name: "columnCategories"; type: "QStringList" }
        Property { name: "useModelCategories"; type: "bool" }
        Property { name: "autoRowCategories"; type: "bool" }
        Property { name: "autoColumnCategories"; type: "bool" }
        Property { name: "rowRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "columnRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "xPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "yPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "zPosRolePattern"; revision: 1; type: "QRegExp" }
        Property { name: "rowRoleReplace"; revision: 1; type: "string" }
        Property { name: "columnRoleReplace"; revision: 1; type: "string" }
        Property { name: "xPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "yPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "zPosRoleReplace"; revision: 1; type: "string" }
        Property { name: "multiMatchBehavior"; revision: 1; type: "MultiMatchBehavior" }
        Signal {
            name: "itemModelChanged"
            Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
        }
        Signal {
            name: "rowRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "columnRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "xPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "yPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "zPosRoleChanged"
            Parameter { name: "role"; type: "string" }
        }
        Signal {
            name: "useModelCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "autoRowCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "autoColumnCategoriesChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "rowRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "columnRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "xPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "yPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "zPosRolePatternChanged"
            revision: 1
            Parameter { name: "pattern"; type: "QRegExp" }
        }
        Signal {
            name: "rowRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "columnRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "xPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "yPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "zPosRoleReplaceChanged"
            revision: 1
            Parameter { name: "replace"; type: "string" }
        }
        Signal {
            name: "multiMatchBehaviorChanged"
            revision: 1
            Parameter { name: "behavior"; type: "MultiMatchBehavior" }
        }
        Method {
            name: "rowCategoryIndex"
            type: "int"
            Parameter { name: "category"; type: "string" }
        }
        Method {
            name: "columnCategoryIndex"
            type: "int"
            Parameter { name: "category"; type: "string" }
        }
    }
    Component {
        name: "QtDataVisualization::QLogValue3DAxisFormatter"
        prototype: "QtDataVisualization::QValue3DAxisFormatter"
        exports: ["QtDataVisualization/LogValueAxis3DFormatter 1.1"]
        exportMetaObjectRevisions: [0]
        Property { name: "base"; type: "double" }
        Property { name: "autoSubGrid"; type: "bool" }
        Property { name: "showEdgeLabels"; type: "bool" }
        Signal {
            name: "baseChanged"
            Parameter { name: "base"; type: "double" }
        }
        Signal {
            name: "autoSubGridChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
        Signal {
            name: "showEdgeLabelsChanged"
            Parameter { name: "enabled"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::QScatter3DSeries"
        prototype: "QtDataVisualization::QAbstract3DSeries"
        exports: ["QtDataVisualization/QScatter3DSeries 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "dataProxy"; type: "QScatterDataProxy"; isPointer: true }
        Property { name: "selectedItem"; type: "int" }
        Property { name: "itemSize"; type: "float" }
        Signal {
            name: "dataProxyChanged"
            Parameter { name: "proxy"; type: "QScatterDataProxy"; isPointer: true }
        }
        Signal {
            name: "selectedItemChanged"
            Parameter { name: "index"; type: "int" }
        }
        Signal {
            name: "itemSizeChanged"
            Parameter { name: "size"; type: "float" }
        }
    }
    Component {
        name: "QtDataVisualization::QScatterDataProxy"
        prototype: "QtDataVisualization::QAbstractDataProxy"
        exports: ["QtDataVisualization/ScatterDataProxy 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "itemCount"; type: "int"; isReadonly: true }
        Property { name: "series"; type: "QScatter3DSeries"; isReadonly: true; isPointer: true }
        Signal { name: "arrayReset" }
        Signal {
            name: "itemsAdded"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemsChanged"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemsRemoved"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemsInserted"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "seriesChanged"
            Parameter { name: "series"; type: "QScatter3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::QSurface3DSeries"
        prototype: "QtDataVisualization::QAbstract3DSeries"
        exports: ["QtDataVisualization/QSurface3DSeries 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "DrawFlag"
            values: {
                "DrawWireframe": 1,
                "DrawSurface": 2,
                "DrawSurfaceAndWireframe": 3
            }
        }
        Enum {
            name: "DrawFlags"
            values: {
                "DrawWireframe": 1,
                "DrawSurface": 2,
                "DrawSurfaceAndWireframe": 3
            }
        }
        Property { name: "dataProxy"; type: "QSurfaceDataProxy"; isPointer: true }
        Property { name: "selectedPoint"; type: "QPoint" }
        Property { name: "flatShadingEnabled"; type: "bool" }
        Property { name: "flatShadingSupported"; type: "bool"; isReadonly: true }
        Property { name: "drawMode"; type: "DrawFlags" }
        Property { name: "texture"; type: "QImage" }
        Property { name: "textureFile"; type: "string" }
        Signal {
            name: "dataProxyChanged"
            Parameter { name: "proxy"; type: "QSurfaceDataProxy"; isPointer: true }
        }
        Signal {
            name: "selectedPointChanged"
            Parameter { name: "position"; type: "QPoint" }
        }
        Signal {
            name: "flatShadingEnabledChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "flatShadingSupportedChanged"
            Parameter { name: "enable"; type: "bool" }
        }
        Signal {
            name: "drawModeChanged"
            Parameter { name: "mode"; type: "QSurface3DSeries::DrawFlags" }
        }
        Signal {
            name: "textureChanged"
            Parameter { name: "image"; type: "QImage" }
        }
        Signal {
            name: "textureFileChanged"
            Parameter { name: "filename"; type: "string" }
        }
    }
    Component {
        name: "QtDataVisualization::QSurfaceDataProxy"
        prototype: "QtDataVisualization::QAbstractDataProxy"
        exports: ["QtDataVisualization/SurfaceDataProxy 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "rowCount"; type: "int"; isReadonly: true }
        Property { name: "columnCount"; type: "int"; isReadonly: true }
        Property { name: "series"; type: "QSurface3DSeries"; isReadonly: true; isPointer: true }
        Signal { name: "arrayReset" }
        Signal {
            name: "rowsAdded"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsChanged"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsRemoved"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "rowsInserted"
            Parameter { name: "startIndex"; type: "int" }
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "itemChanged"
            Parameter { name: "rowIndex"; type: "int" }
            Parameter { name: "columnIndex"; type: "int" }
        }
        Signal {
            name: "rowCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "columnCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "seriesChanged"
            Parameter { name: "series"; type: "QSurface3DSeries"; isPointer: true }
        }
    }
    Component {
        name: "QtDataVisualization::QTouch3DInputHandler"
        prototype: "QtDataVisualization::Q3DInputHandler"
        exports: ["QtDataVisualization/TouchInputHandler3D 1.2"]
        exportMetaObjectRevisions: [0]
    }
    Component {
        name: "QtDataVisualization::QValue3DAxis"
        prototype: "QtDataVisualization::QAbstract3DAxis"
        exports: [
            "QtDataVisualization/ValueAxis3D 1.0",
            "QtDataVisualization/ValueAxis3D 1.1"
        ]
        exportMetaObjectRevisions: [0, 1]
        Property { name: "segmentCount"; type: "int" }
        Property { name: "subSegmentCount"; type: "int" }
        Property { name: "labelFormat"; type: "string" }
        Property { name: "formatter"; revision: 1; type: "QValue3DAxisFormatter"; isPointer: true }
        Property { name: "reversed"; revision: 1; type: "bool" }
        Signal {
            name: "segmentCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "subSegmentCountChanged"
            Parameter { name: "count"; type: "int" }
        }
        Signal {
            name: "labelFormatChanged"
            Parameter { name: "format"; type: "string" }
        }
        Signal {
            name: "formatterChanged"
            revision: 1
            Parameter { name: "formatter"; type: "QValue3DAxisFormatter"; isPointer: true }
        }
        Signal {
            name: "reversedChanged"
            revision: 1
            Parameter { name: "enable"; type: "bool" }
        }
    }
    Component {
        name: "QtDataVisualization::QValue3DAxisFormatter"
        prototype: "QObject"
        exports: ["QtDataVisualization/ValueAxis3DFormatter 1.1"]
        exportMetaObjectRevisions: [0]
    }
}
