QAbstractFunctor Class

class Qt3DCore::QAbstractFunctor

QAbstractFunctor ist eine abstrakte Basisklasse für alle Funktoren. Mehr...

Kopfzeile: #include <QAbstractFunctor>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3DCore)
target_link_libraries(mytarget PRIVATE Qt6::3DCore)
qmake: QT += 3dcore
Vererbt von:

Qt3DRender::QTextureGenerator und Qt3DRender::QTextureImageDataGenerator

Status: Deprecated

Öffentliche Funktionen

virtual ~QAbstractFunctor()
const T *functor_cast(const Qt3DCore::QAbstractFunctor *other) const
virtual qintptr id() const = 0

Makros

QT3D_FUNCTOR(Class)

Detaillierte Beschreibung

Der QAbstractFunctor wird als Basisklasse für alle Funktoren und Datengeneratoren im Qt3DCore Modul verwendet.

Wenn der Benutzer einen neuen Funktor oder Generator definiert, muss er die Methode QAbstractFunctor::id() implementieren, was mit dem Makro QT3D_FUNCTOR in der Klassendefinition geschehen sollte.

Dokumentation der Mitgliedsfunktionen

[virtual noexcept] QAbstractFunctor::~QAbstractFunctor()

Desktruktor

template <typename T> const T *QAbstractFunctor::functor_cast(const Qt3DCore::QAbstractFunctor *other) const

Mit dieser Methode wird der Funktor other in den Typ T gecastet, wenn der andere vom Typ T (oder einer Unterklasse) ist; andernfalls wird 0 zurückgegeben. Diese Methode funktioniert ähnlich wie qobject_cast(), außer bei Funktoren, die von QAbstractFunctor abgeleitet sind.

Warnung: Wenn T nicht mit dem Makro QT3D_FUNCTOR deklariert wurde, sind die Ergebnisse undefiniert.

[pure virtual] qintptr QAbstractFunctor::id() const

Gibt einen Zeiger auf die id des Funktors zurück.

Makro-Dokumentation

QT3D_FUNCTOR(Class)

Dieses Makro weist dem Class eine Funktor-ID zu, die von QAbstractFunctor::functor_cast verwendet wird, um festzustellen, ob der Cast durchgeführt werden kann.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.