diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-08-22 14:41:57 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-11-03 14:28:40 +0000 |
commit | 3ed8bac937c29ded4fd092c5b77b268d9d2efa94 (patch) | |
tree | 0f37edaa7e3615323410f94f47df6b124dde8e44 | |
parent | f0a7b12c2004f522ba1c840d67796fb173c73253 (diff) |
Add QRhi and related classes
CMake logic borrowed from the native interface patch.
[ChangeLog][PySide6] QRhi and related classes have been added.
Task-number: QTBUG-113331
Change-Id: I9dd8b0b92f71027fc9f2c170af2993a5b09a4cfd
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
(cherry picked from commit 879d804fb462589a206d200bfd0371284be8d394)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | build_scripts/wheel_files.py | 1 | ||||
-rw-r--r-- | sources/pyside6/PySide6/QtGui/CMakeLists.txt | 71 | ||||
-rw-r--r-- | sources/pyside6/PySide6/QtGui/QtGui_global.post.h.in | 3 | ||||
-rw-r--r-- | sources/pyside6/PySide6/QtGui/typesystem_gui.xml | 1 | ||||
-rw-r--r-- | sources/pyside6/PySide6/QtGui/typesystem_gui_rhi.xml | 175 | ||||
-rw-r--r-- | sources/pyside6/PySide6/QtQuick/typesystem_quick.xml | 2 | ||||
-rw-r--r-- | sources/pyside6/PySide6/glue/qtgui.cpp | 11 | ||||
-rw-r--r-- | sources/pyside6/cmake/Macros/PySideModules.cmake | 5 | ||||
-rw-r--r-- | sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py | 2 |
9 files changed, 269 insertions, 2 deletions
diff --git a/build_scripts/wheel_files.py b/build_scripts/wheel_files.py index 69a7b7f82..15aa741ef 100644 --- a/build_scripts/wheel_files.py +++ b/build_scripts/wheel_files.py @@ -320,6 +320,7 @@ def module_QtGui() -> ModuleData: "typesystem_gui_mac.xml", "typesystem_gui_win.xml", "typesystem_gui_x11.xml", + "typesystem_gui_rhi.xml" ] _metatypes = [ diff --git a/sources/pyside6/PySide6/QtGui/CMakeLists.txt b/sources/pyside6/PySide6/QtGui/CMakeLists.txt index 1ab50cd8c..0f5fcd479 100644 --- a/sources/pyside6/PySide6/QtGui/CMakeLists.txt +++ b/sources/pyside6/PySide6/QtGui/CMakeLists.txt @@ -16,6 +16,68 @@ set(QtGui_SRC_UNITY_EXCLUDED_SRC set_property(SOURCE ${QtGui_SRC_UNITY_EXCLUDED_SRC} PROPERTY SKIP_UNITY_BUILD_INCLUSION ON) +set(QtGui_SRC_RHI +${QtGui_GEN_DIR}/qrhi_wrapper.cpp +${QtGui_GEN_DIR}/qrhibuffer_wrapper.cpp +${QtGui_GEN_DIR}/qrhicolorattachment_wrapper.cpp +${QtGui_GEN_DIR}/qrhicommandbuffer_wrapper.cpp +${QtGui_GEN_DIR}/qrhicomputepipeline_wrapper.cpp +${QtGui_GEN_DIR}/qrhidepthstencilclearvalue_wrapper.cpp +${QtGui_GEN_DIR}/qrhidriverinfo_wrapper.cpp +${QtGui_GEN_DIR}/qrhigles2initparams_wrapper.cpp +${QtGui_GEN_DIR}/qrhigles2nativehandles_wrapper.cpp +${QtGui_GEN_DIR}/qrhigraphicspipeline_targetblend_wrapper.cpp +${QtGui_GEN_DIR}/qrhigraphicspipeline_wrapper.cpp +${QtGui_GEN_DIR}/qrhiinitparams_wrapper.cpp +${QtGui_GEN_DIR}/qrhinativehandles_wrapper.cpp +${QtGui_GEN_DIR}/qrhinullinitparams_wrapper.cpp +${QtGui_GEN_DIR}/qrhireadbackdescription_wrapper.cpp +${QtGui_GEN_DIR}/qrhireadbackresult_wrapper.cpp +${QtGui_GEN_DIR}/qrhirenderbuffer_wrapper.cpp +${QtGui_GEN_DIR}/qrhirenderpassdescriptor_wrapper.cpp +${QtGui_GEN_DIR}/qrhirendertarget_wrapper.cpp +${QtGui_GEN_DIR}/qrhiresource_wrapper.cpp +${QtGui_GEN_DIR}/qrhiresourceupdatebatch_wrapper.cpp +${QtGui_GEN_DIR}/qrhisampler_wrapper.cpp +${QtGui_GEN_DIR}/qrhiscissor_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebinding_textureandsampler_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebinding_data_storagebufferdata_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebinding_data_storageimagedata_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebinding_data_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebinding_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderresourcebindings_wrapper.cpp +${QtGui_GEN_DIR}/qrhishaderstage_wrapper.cpp +${QtGui_GEN_DIR}/qrhistats_wrapper.cpp +${QtGui_GEN_DIR}/qrhiswapchain_wrapper.cpp +${QtGui_GEN_DIR}/qrhiswapchainrendertarget_wrapper.cpp +${QtGui_GEN_DIR}/qrhitexture_wrapper.cpp +${QtGui_GEN_DIR}/qrhitexturecopydescription_wrapper.cpp +${QtGui_GEN_DIR}/qrhitexturerendertarget_wrapper.cpp +${QtGui_GEN_DIR}/qrhitexturerendertargetdescription_wrapper.cpp +${QtGui_GEN_DIR}/qrhitexturesubresourceuploaddescription_wrapper.cpp +${QtGui_GEN_DIR}/qrhitextureuploaddescription_wrapper.cpp +${QtGui_GEN_DIR}/qrhitextureuploadentry_wrapper.cpp +${QtGui_GEN_DIR}/qrhivertexinputattribute_wrapper.cpp +${QtGui_GEN_DIR}/qrhivertexinputbinding_wrapper.cpp +${QtGui_GEN_DIR}/qrhivertexinputlayout_wrapper.cpp +${QtGui_GEN_DIR}/qrhiviewport_wrapper.cpp +${QtGui_GEN_DIR}/qshader_wrapper.cpp +${QtGui_GEN_DIR}/qshadercode_wrapper.cpp +${QtGui_GEN_DIR}/qshaderkey_wrapper.cpp +${QtGui_GEN_DIR}/qshaderversion_wrapper.cpp +) + +if (ENABLE_WIN) + list(APPEND QtGui_SRC_RHI + ${QtGui_GEN_DIR}/qrhid3d11initparams_wrapper.cpp + ${QtGui_GEN_DIR}/qrhid3d11nativehandles_wrapper.cpp + ${QtGui_GEN_DIR}/qrhid3d12initparams_wrapper.cpp + ${QtGui_GEN_DIR}/qrhid3d12nativehandles_wrapper.cpp) +elseif (ENABLE_MAC) + list(APPEND QtGui_SRC_RHI + ${QtGui_GEN_DIR}/qrhimetalinitparams_wrapper.cpp) +endif() + set(QtGui_SRC ${QtGui_SRC_UNITY_EXCLUDED_SRC} ${QtGui_GEN_DIR}/qabstractfileiconprovider_wrapper.cpp @@ -162,6 +224,7 @@ ${QtGui_GEN_DIR}/qscreen_wrapper.cpp ${QtGui_GEN_DIR}/qshortcut_wrapper.cpp ${QtGui_GEN_DIR}/qrasterwindow_wrapper.cpp ${QtGui_GEN_DIR}/qrawfont_wrapper.cpp +${QtGui_SRC_RHI} ${QtGui_GEN_DIR}/qscrollevent_wrapper.cpp ${QtGui_GEN_DIR}/qscrollprepareevent_wrapper.cpp ${QtGui_GEN_DIR}/qstatictext_wrapper.cpp @@ -220,6 +283,10 @@ ${QtGui_GEN_DIR}/qwindowstatechangeevent_wrapper.cpp ${QtGui_GEN_DIR}/qtgui_module_wrapper.cpp ) +set(QtGui_private_include_dirs + ${Qt${QT_MAJOR_VERSION}Core_PRIVATE_INCLUDE_DIRS} + ${Qt${QT_MAJOR_VERSION}Gui_PRIVATE_INCLUDE_DIRS}) + configure_file("${QtGui_SOURCE_DIR}/QtGui_global.post.h.in" "${QtGui_BINARY_DIR}/QtGui_global.post.h" @ONLY) @@ -228,6 +295,7 @@ set(QtGui_include_dirs ${QtGui_SOURCE_DIR} ${pyside6_SOURCE_DIR} ${Qt${QT_MAJOR_VERSION}Core_INCLUDE_DIRS} ${Qt${QT_MAJOR_VERSION}Gui_INCLUDE_DIRS} + ${QtGui_private_include_dirs} ${libpyside_SOURCE_DIR} ${QtCore_GEN_DIR} ) @@ -243,7 +311,8 @@ create_pyside_module(NAME QtGui SOURCES QtGui_SRC STATIC_SOURCES QPYTEXTOBJECT_MOC TYPESYSTEM_NAME ${QtGui_BINARY_DIR}/typesystem_gui.xml - DROPPED_ENTRIES QtGui_DROPPED_ENTRIES) + DROPPED_ENTRIES QtGui_DROPPED_ENTRIES + ADDITIONAL_INCLUDE_DIRS QtGui_private_include_dirs) install(FILES ${pyside6_SOURCE_DIR}/qpytextobject.h ${pyside6_SOURCE_DIR}/qtguihelper.h diff --git a/sources/pyside6/PySide6/QtGui/QtGui_global.post.h.in b/sources/pyside6/PySide6/QtGui/QtGui_global.post.h.in index b5d457d95..e5a0eeb90 100644 --- a/sources/pyside6/PySide6/QtGui/QtGui_global.post.h.in +++ b/sources/pyside6/PySide6/QtGui/QtGui_global.post.h.in @@ -1,3 +1,6 @@ #include "qpytextobject.h" // PySide class +#include <rhi/qrhi.h> +#include <rhi/qrhi_platform.h> +#include <rhi/qshader.h> #include <qtguihelper.h> void qt_set_sequence_auto_mnemonic(bool b); diff --git a/sources/pyside6/PySide6/QtGui/typesystem_gui.xml b/sources/pyside6/PySide6/QtGui/typesystem_gui.xml index 727bee0bf..29c221f3a 100644 --- a/sources/pyside6/PySide6/QtGui/typesystem_gui.xml +++ b/sources/pyside6/PySide6/QtGui/typesystem_gui.xml @@ -15,4 +15,5 @@ <load-typesystem name="QtGui/typesystem_gui_x11.xml" generate="yes"/> <?endif?> <load-typesystem name="QtGui/typesystem_gui_common.xml" generate="yes"/> + <load-typesystem name="QtGui/typesystem_gui_rhi.xml" generate="yes"/> </typesystem> diff --git a/sources/pyside6/PySide6/QtGui/typesystem_gui_rhi.xml b/sources/pyside6/PySide6/QtGui/typesystem_gui_rhi.xml new file mode 100644 index 000000000..d37276751 --- /dev/null +++ b/sources/pyside6/PySide6/QtGui/typesystem_gui_rhi.xml @@ -0,0 +1,175 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only +--> +<typesystem package="PySide6.QtGui"> + <value-type name="QRhiDepthStencilClearValue" since="6.6" private="yes"/> + <value-type name="QRhiViewport" since="6.6" private="yes"/> + <value-type name="QRhiScissor" since="6.6" private="yes"/> + <value-type name="QRhiVertexInputBinding" since="6.6" private="yes"> + <enum-type name="Classification"/> + </value-type> + <value-type name="QRhiVertexInputAttribute" since="6.6" private="yes"> + <enum-type name="Format"/> + </value-type> + <value-type name="QRhiVertexInputLayout" since="6.6" private="yes"> + <add-function signature="setBindings(QList<QRhiVertexInputBinding>@bindings@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" snippet="qrhi-initializer-list"/> + </add-function> + <add-function signature="setAttributes(QList<QRhiVertexInputAttribute>@attributes@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" snippet="qrhi-initializer-list"/> + </add-function> + </value-type> + <value-type name="QRhiShaderStage" since="6.6" private="yes"> + <enum-type name="Type"/> + </value-type> + <value-type name="QRhiShaderResourceBinding" since="6.6" private="yes"> + <enum-type name="Type"/> + <enum-type name="StageFlag" flags="StageFlags"/> + <value-type name="TextureAndSampler" private="yes"/> + <value-type name="Data" private="yes"> + <value-type name="StorageImageData" private="yes"/> + <value-type name="StorageBufferData" private="yes"/> + </value-type> + </value-type> + <value-type name="QRhiColorAttachment" since="6.6" private="yes"/> + <value-type name="QRhiTextureRenderTargetDescription" since="6.6" private="yes"> + <add-function signature="setColorAttachments(QList<QRhiColorAttachment>@bcolor_attachments@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" snippet="qrhi-initializer-list"/> + </add-function> + </value-type> + <value-type name="QRhiTextureSubresourceUploadDescription" since="6.6" private="yes"/> + <value-type name="QRhiTextureUploadEntry" since="6.6" private="yes"/> + <value-type name="QRhiTextureUploadDescription" since="6.6" private="yes"> + <add-function signature="setEntries(QList<QRhiTextureUploadEntry>@entries@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" snippet="qrhi-initializer-list"/> + </add-function> + </value-type> + <value-type name="QRhiTextureCopyDescription" since="6.6" private="yes"/> + <value-type name="QRhiReadbackDescription" since="6.6" private="yes"/> + <value-type name="QRhiNativeHandles" since="6.6" private="yes"/> + <object-type name="QRhiResource" since="6.6" private="yes"> + <enum-type name="Type"/> + </object-type> + <object-type name="QRhiBuffer" since="6.6" private="yes"> + <enum-type name="Type"/> + <enum-type name="UsageFlag" flags="UsageFlags"/> + <!-- const char * mixup --> + <modify-function signature="beginFullDynamicBufferUpdateForCurrentFrame()" remove="all"/> + </object-type> + <object-type name="QRhiTexture" since="6.6" private="yes"> + <enum-type name="Format"/> + <enum-type name="Flag" flags="Flags"/> + </object-type> + <object-type name="QRhiSampler" since="6.6" private="yes"> + <enum-type name="Filter"/> + <enum-type name="AddressMode"/> + <enum-type name="CompareOp"/> + </object-type> + <object-type name="QRhiRenderBuffer" since="6.6" private="yes"> + <enum-type name="Type"/> + <enum-type name="Flag" flags="Flags"/> + </object-type> + <object-type name="QRhiRenderPassDescriptor" since="6.6" private="yes"/> + <object-type name="QRhiRenderTarget" since="6.6" private="yes"/> + <object-type name="QRhiSwapChainRenderTarget" since="6.6" private="yes"/> + <object-type name="QRhiTextureRenderTarget" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + </object-type> + <object-type name="QRhiShaderResourceBindings" since="6.6" private="yes"> + <enum-type name="UpdateFlag" flags="UpdateFlags"/> + <modify-field name="BINDING_PREALLOC" remove="true"/> + <add-function signature="setBindings(QList<QRhiShaderResourceBinding>@bindings@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" snippet="qrhi-initializer-list"/> + </add-function> + </object-type> + <object-type name="QRhiGraphicsPipeline" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + <enum-type name="BlendOp"/> + <enum-type name="Topology"/> + <enum-type name="CullMode"/> + <enum-type name="FrontFace"/> + <enum-type name="ColorMaskComponent" flags="ColorMask"/> + <enum-type name="BlendFactor"/> + <enum-type name="CompareOp"/> + <enum-type name="StencilOp"/> + <enum-type name="PolygonMode"/> + <value-type name="TargetBlend" private="yes"/> + <add-function signature="setShaderStages(QList<QRhiShaderStage>@stages@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" + snippet="qrhi-initializer-list"/> + </add-function> + <add-function signature="setTargetBlends(QList<QRhiGraphicsPipeline::TargetBlend>@blends@)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" + snippet="qrhi-initializer-list"/> + </add-function> + </object-type> + <object-type name="QRhiSwapChain" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + <enum-type name="Format"/> + <enum-type name="StereoTargetBuffer"/> + </object-type> + <object-type name="QRhiComputePipeline" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + </object-type> + <object-type name="QRhiCommandBuffer" since="6.6" private="yes"> + <enum-type name="BeginPassFlag" flags="BeginPassFlags"/> + <enum-type name="IndexFormat"/> + <modify-function signature="^setVertexInput\(.*\)$" remove="all"/> + <add-function signature="setVertexInput(int@startBinding@,QList<std::pair<QRhiBuffer*,quint32>>@bindings@,QRhiBuffer*@indexBuf@=nullptr,quint32@indexOffset@=0,QRhiCommandBuffer::IndexFormat @indexFormat@ = QRhiCommandBuffer::IndexUInt16)"> + <inject-code class="target" position="beginning" + file="../glue/qtgui.cpp" + snippet="qrhi-commandbuffer-setvertexinput"/> + </add-function> + </object-type> + <value-type name="QRhiReadbackResult" since="6.6" private="yes"/> + <object-type name="QRhiResourceUpdateBatch" since="6.6" private="yes"/> + <value-type name="QRhiDriverInfo" since="6.6" private="yes"> + <enum-type name="DeviceType"/> + </value-type> + <value-type name="QRhiStats" since="6.6" private="yes"/> + <value-type name="QRhiInitParams" since="6.6" private="yes"/> + <value-type name="QRhiNullInitParams" since="6.6" private="yes"/> + <value-type name="QRhiGles2InitParams" since="6.6" private="yes"/> + <value-type name="QRhiGles2NativeHandles" since="6.6" private="yes"/> + <?if windows?> + <value-type name="QRhiD3D11InitParams" since="6.6" private="yes"/> + <value-type name="QRhiD3D11NativeHandles" since="6.6" private="yes"/> + <value-type name="QRhiD3D12InitParams" since="6.6" private="yes"/> + <value-type name="QRhiD3D12NativeHandles" since="6.6" private="yes"/> + <?endif?> + <?if darwin?> + <value-type name="QRhiMetalInitParams" since="6.6" private="yes"/> + <?endif?> + + <object-type name="QRhi" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + <enum-type name="Implementation"/> + <enum-type name="FrameOpResult"/> + <enum-type name="Feature"/> + <enum-type name="BeginFrameFlag" flags="BeginFrameFlags"/> + <enum-type name="EndFrameFlag" flags="EndFrameFlags"/> + <enum-type name="ResourceLimit"/> + </object-type> + + <value-type name="QShader" since="6.6" private="yes"> + <enum-type name="Stage"/> + <enum-type name="Source"/> + <enum-type name="Variant"/> + <enum-type name="SerializedFormatVersion"/> + </value-type> + <value-type name="QShaderCode" since="6.6" private="yes"/> + <value-type name="QShaderKey" since="6.6" private="yes"/> + <value-type name="QShaderVersion" since="6.6" private="yes"> + <enum-type name="Flag" flags="Flags"/> + </value-type> + +</typesystem> diff --git a/sources/pyside6/PySide6/QtQuick/typesystem_quick.xml b/sources/pyside6/PySide6/QtQuick/typesystem_quick.xml index 3a74964fa..a7f5ec492 100644 --- a/sources/pyside6/PySide6/QtQuick/typesystem_quick.xml +++ b/sources/pyside6/PySide6/QtQuick/typesystem_quick.xml @@ -166,6 +166,8 @@ <enum-type name="DirtyState" flags="DirtyStates"/> </value-type> <modify-function signature="updateSampledImage(QSGMaterialShader::RenderState&,int,QSGTexture**,QSGMaterial*,QSGMaterial*)" remove="all"/> + <!-- Private QRhi class --> + <modify-function signature="setShader(QSGMaterialShader::Stage,QShader)" remove="all"/> </object-type> <object-type name="QSGMaterialType"/> <object-type name="QSGNode"> diff --git a/sources/pyside6/PySide6/glue/qtgui.cpp b/sources/pyside6/PySide6/glue/qtgui.cpp index 443495389..e38684a7f 100644 --- a/sources/pyside6/PySide6/glue/qtgui.cpp +++ b/sources/pyside6/PySide6/glue/qtgui.cpp @@ -868,6 +868,17 @@ const QRect cppResult = *(%CPPSELF.cbegin() + _i); return %CONVERTTOPYTHON[QRect](cppResult); // @snippet qregion-getitem +// Some RHI functions take a std::initializer_list<>. Add functions +// to convert from list. + +// @snippet qrhi-initializer-list +%CPPSELF.%FUNCTION_NAME(%1.cbegin(), %1.cend()); +// @snippet qrhi-initializer-list + +// @snippet qrhi-commandbuffer-setvertexinput +%CPPSELF.%FUNCTION_NAME(%1, %2.size(), %2.constData(), %3, %4, %5); +// @snippet qrhi-commandbuffer-setvertexinput + /********************************************************************* * CONVERSIONS ********************************************************************/ diff --git a/sources/pyside6/cmake/Macros/PySideModules.cmake b/sources/pyside6/cmake/Macros/PySideModules.cmake index 1288abd40..a54f529f9 100644 --- a/sources/pyside6/cmake/Macros/PySideModules.cmake +++ b/sources/pyside6/cmake/Macros/PySideModules.cmake @@ -51,7 +51,7 @@ macro(create_pyside_module) "create_pyside_module" # Macro name "" # Flags "NAME;TYPESYSTEM_PATH;TYPESYSTEM_NAME" # Single value - "INCLUDE_DIRS;LIBRARIES;DEPS;SOURCES;STATIC_SOURCES;DROPPED_ENTRIES;GLUE_SOURCES" # Multival + "INCLUDE_DIRS;LIBRARIES;DEPS;SOURCES;STATIC_SOURCES;DROPPED_ENTRIES;GLUE_SOURCES;ADDITIONAL_INCLUDE_DIRS" # Multival ${ARGN} # Number of arguments given when the macros is called ) @@ -108,6 +108,9 @@ macro(create_pyside_module) INTERFACE_INCLUDE_DIRECTORIES) set(shiboken_include_dir_list ${pyside6_SOURCE_DIR} ${qt_platform_includes} ${qt_core_includes}) + if(module_ADDITIONAL_INCLUDE_DIRS) + list(APPEND shiboken_include_dir_list ${${module_ADDITIONAL_INCLUDE_DIRS}}) + endif() # Transform the path separators into something shiboken understands. make_path(shiboken_include_dirs ${shiboken_include_dir_list}) diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py index 38c1b8ae5..4588b5917 100644 --- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py +++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py @@ -287,6 +287,8 @@ type_map.update({ "zero(Any)": None, # This can be refined by importing numpy.typing optionally, but better than nothing. "numpy.ndarray": typing.List[typing.Any], + "std.array[int, 4]": typing.List[int], + "std.array[float, 4]": typing.List[float] }) type_map.update({ |