QEntity Class | Qt 3D 5.12.12

- Qt 5.12
- Qt 3D
- C++ Classes
- QEntity
- Qt 5.12.12 Reference Documentation

# QEntity Class

(Qt3DCore::QEntity)

Qt3DCore::QEntity is a Qt3DCore::QNode subclass that can aggregate several Qt3DCore::QComponent instances that will specify its behavior. More...

Header: | #include <QEntity>
qmake: | QT += 3dcore
Since: | Qt 5.5
Instantiated By: | Entity
Inherits: | Qt3DCore::QNode
Inherited By: | Qt3DExtras::QAbstractCameraController, Qt3DExtras::QSkyboxEntity, Qt3DExtras::QText2DEntity, and Qt3DRender::QCamera

- List of all members, including inherited members
- Obsolete members

## Public Functions

| QEntity(Qt3DCore::QNode *parent = nullptr)
virtual | ~QEntity()
void | addComponent(Qt3DCore::QComponent *comp)
Qt3DCore::QComponentVector | components() const
Qt3DCore::QEntity * | parentEntity() const
void | removeComponent(Qt3DCore::QComponent *comp)

- 13 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject

## Static Public Members

const QMetaObject | staticMetaObject

- 9 static public members inherited from QObject

## Related Non-Members

typedef | QComponentVector

### Additional Inherited Members

- 3 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject
- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
- 4 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject

## Detailed Description

Qt3DCore::QEntity is a Qt3DCore::QNode subclass that can aggregate several Qt3DCore::QComponent instances that will specify its behavior.

By itself a Qt3DCore::QEntity is an empty shell. The behavior of a Qt3DCore::QEntity object is defined by the Qt3DCore::QComponent objects it references. Each Qt3D backend aspect will be able to interpret and process an Entity by recognizing which components it is made up of. One aspect may decide to only process entities composed of a single Qt3DCore::QTransform component whilst another may focus on Qt3DInput::QMouseHandler.

See also Qt3DCore::QComponent and Qt3DCore::QTransform.

## Member Function Documentation

### QEntity::QEntity(Qt3DCore::QNode *parent = nullptr)

Constructs a new Qt3DCore::QEntity instance with parent as parent.

### `[virtual]` QEntity::~QEntity()

Destroys the instance of QEntity. The destructor is virtual.

### void QEntity::addComponent(Qt3DCore::QComponent *comp)

Adds a new reference to the component comp.

Note: If the Qt3DCore::QComponent has no parent, the Qt3DCore::QEntity will set itself as its parent thereby taking ownership of the component.

### Qt3DCore::QComponentVector QEntity::components() const

Returns the list of Qt3DCore::QComponent instances the entity is referencing.

### Qt3DCore::QEntity *QEntity::parentEntity() const

Returns the parent Qt3DCore::QEntity instance of this entity. If the immediate parent isn't a Qt3DCore::QEntity, this function traverses up the scene hierarchy until a parent Qt3DCore::QEntity is found. If no Qt3DCore::QEntity parent can be found, returns null.

### void QEntity::removeComponent(Qt3DCore::QComponent *comp)

Removes the reference to comp.

## Related Non-Members

### typedef Qt3DCore::QComponentVector

List of QComponent pointers.