Sur cette page

Qt3DCore::QAbstractFunctor Class

class Qt3DCore::QAbstractFunctor

QAbstractFunctor est une classe de base abstraite pour tous les foncteurs. En savoir plus...

En-tête : #include <QAbstractFunctor>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3DCore)
target_link_libraries(mytarget PRIVATE Qt6::3DCore)
qmake : QT += 3dcore
Hérité par :

Qt3DRender::QTextureImageDataGenerator

Statut : Obsolète

Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Fonctions publiques

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

Macros

QT3D_FUNCTOR(Class)

Description détaillée

La classe QAbstractFunctor sert de classe de base à tous les functors et générateurs de données du module Qt3DCore.

Lorsque l'utilisateur définit un nouveau foncteur ou générateur, il doit implémenter la méthode ` QAbstractFunctor::id()`, ce qui doit être effectué à l'aide de la macro ` QT3D_FUNCTOR ` dans la définition de la classe.

Documentation des fonctions membres

[constexpr noexcept default] QAbstractFunctor::QAbstractFunctor()

Construit par défaut une instance de ` QAbstractFunctor`.

[virtual noexcept] QAbstractFunctor::~QAbstractFunctor()

Destructeur

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

Cette méthode permet de convertir le foncteur other en type T si l'autre est de type T (ou d'une sous-classe) ; sinon, elle renvoie 0. Cette méthode fonctionne de manière similaire à qobject_cast(), sauf qu'elle s'applique aux foncteurs dérivés de QAbstractFunctor.

Avertissement : si T n’a pas été déclaré avec la macro QT3D_FUNCTOR, les résultats sont indéfinis.

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

Renvoie un pointeur vers l'identifiant du foncteur.

Documentation des macros

QT3D_FUNCTOR(Class)

Cette macro attribue l'identifiant « functor » à l'Class, qui est utilisé par QAbstractFunctor::functor_cast pour déterminer si la conversion est possible.

© 2026 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.