Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qaudioroom.h
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-3.0-only
3
4#ifndef QAUDIOROOM_H
5#define QAUDIOROOM_H
6
7#include <QtSpatialAudio/qtspatialaudioglobal.h>
8#include <QtCore/qobject.h>
9#include <QtGui/qvector3d.h>
10
12
13class QAudioEngine;
15
16class Q_SPATIALAUDIO_EXPORT QAudioRoom : public QObject
17{
19 Q_PROPERTY(QVector3D position READ position WRITE setPosition NOTIFY positionChanged)
20 Q_PROPERTY(QVector3D dimensions READ dimensions WRITE setDimensions NOTIFY dimensionsChanged)
21 Q_PROPERTY(QQuaternion rotation READ rotation WRITE setRotation NOTIFY rotationChanged)
22 Q_PROPERTY(float reflectionGain READ reflectionGain WRITE setReflectionGain NOTIFY reflectionGainChanged)
23 Q_PROPERTY(float reverbGain READ reverbGain WRITE setReverbGain NOTIFY reverbGainChanged)
24 Q_PROPERTY(float reverbTime READ reverbTime WRITE setReverbTime NOTIFY reverbTimeChanged)
25 Q_PROPERTY(float reverbBrightness READ reverbBrightness WRITE setReverbBrightness NOTIFY reverbBrightnessChanged)
26public:
28 ~QAudioRoom();
29
56
65
67 QVector3D position() const;
68
69 void setDimensions(QVector3D dim);
70 QVector3D dimensions() const;
71
72 void setRotation(const QQuaternion &q);
73 QQuaternion rotation() const;
74
75 void setWallMaterial(Wall wall, Material material);
76 Material wallMaterial(Wall wall) const;
77
78 void setReflectionGain(float factor);
79 float reflectionGain() const;
80
81 void setReverbGain(float factor);
82 float reverbGain() const;
83
84 void setReverbTime(float factor);
85 float reverbTime() const;
86
87 void setReverbBrightness(float factor);
88 float reverbBrightness() const;
89
99
100private:
101 friend class QAudioRoomPrivate;
103};
104
106
107#endif
\inmodule QtSpatialAudio
\inmodule QtSpatialAudio
Definition qaudioroom.h:17
void reverbTimeChanged()
void positionChanged()
void reverbGainChanged()
void wallsChanged()
Signals when the wall material changes.
void rotationChanged()
void reverbBrightnessChanged()
void reflectionGainChanged()
Material
Defines different materials that can be applied to the different walls of the room.
Definition qaudioroom.h:30
@ ParquetOnConcrete
Definition qaudioroom.h:45
@ ConcreteBlockCoarse
Definition qaudioroom.h:35
@ LinoleumOnConcrete
Definition qaudioroom.h:42
@ FiberGlassInsulation
Definition qaudioroom.h:38
@ PolishedConcreteOrTile
Definition qaudioroom.h:49
@ UniformMaterial
Definition qaudioroom.h:54
@ AcousticCeilingTiles
Definition qaudioroom.h:32
@ ConcreteBlockPainted
Definition qaudioroom.h:36
@ WaterOrIceSurface
Definition qaudioroom.h:51
Wall
An enum defining the 6 walls of the room.
Definition qaudioroom.h:57
void dimensionsChanged()
\inmodule QtCore
Definition qobject.h:103
The QQuaternion class represents a quaternion consisting of a vector and scalar.
The QVector3D class represents a vector or vertex in 3D space.
Definition qvectornd.h:171
Combined button and popup list for selecting options.
n void setPosition(void) \n\
GLdouble GLdouble GLdouble GLdouble q
Definition qopenglext.h:259
static qreal position(const QQuickItem *item, QQuickAnchors::Anchor anchorLine)
#define Q_PROPERTY(...)
#define Q_OBJECT
#define Q_SIGNALS
#define explicit
QJSEngine engine
[0]