20 Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
21 Q_PROPERTY(QVector3D position READ position WRITE setPosition NOTIFY positionChanged)
22 Q_PROPERTY(QQuaternion rotation READ rotation WRITE setRotation NOTIFY rotationChanged)
23 Q_PROPERTY(
float volume READ volume WRITE setVolume NOTIFY volumeChanged)
24 Q_PROPERTY(DistanceModel distanceModel READ distanceModel WRITE setDistanceModel NOTIFY distanceModelChanged)
25 Q_PROPERTY(
float size READ size WRITE setSize NOTIFY sizeChanged)
26 Q_PROPERTY(
float distanceCutoff READ distanceCutoff WRITE setDistanceCutoff NOTIFY distanceCutoffChanged)
27 Q_PROPERTY(
float manualAttenuation READ manualAttenuation WRITE setManualAttenuation NOTIFY manualAttenuationChanged)
28 Q_PROPERTY(
float occlusionIntensity READ occlusionIntensity WRITE setOcclusionIntensity NOTIFY occlusionIntensityChanged)
29 Q_PROPERTY(
float directivity READ directivity WRITE setDirectivity NOTIFY directivityChanged)
30 Q_PROPERTY(
float directivityOrder READ directivityOrder WRITE setDirectivityOrder NOTIFY directivityOrderChanged)
31 Q_PROPERTY(
float nearFieldGain READ nearFieldGain WRITE setNearFieldGain NOTIFY nearFieldGainChanged)
32 Q_PROPERTY(
int loops READ loops WRITE setLoops NOTIFY loopsChanged)
33 Q_PROPERTY(
bool autoPlay READ autoPlay WRITE setAutoPlay NOTIFY autoPlayChanged)
36 explicit QSpatialSound(QAudioEngine *engine);
37 ~QSpatialSound() override;
39 void setSource(
const QUrl &url);
50 void setLoops(
int loops);
52 bool autoPlay()
const;
53 void setAutoPlay(
bool autoPlay);
55 void setPosition(QVector3D pos);
56 QVector3D position()
const;
58 void setRotation(
const QQuaternion &q);
59 QQuaternion rotation()
const;
61 void setVolume(
float volume);
64 enum class DistanceModel {
69 Q_ENUM(DistanceModel);
71 void setDistanceModel(DistanceModel model);
72 DistanceModel distanceModel()
const;
74 void setSize(
float size);
77 void setDistanceCutoff(
float cutoff);
78 float distanceCutoff()
const;
80 void setManualAttenuation(
float attenuation);
81 float manualAttenuation()
const;
83 void setOcclusionIntensity(
float occlusion);
84 float occlusionIntensity()
const;
86 void setDirectivity(
float alpha);
87 float directivity()
const;
89 void setDirectivityOrder(
float alpha);
90 float directivityOrder()
const;
92 void setNearFieldGain(
float gain);
93 float nearFieldGain()
const;
95 QAudioEngine *engine()
const;
100 void autoPlayChanged();
101 void positionChanged();
102 void rotationChanged();
103 void volumeChanged();
104 void distanceModelChanged();
106 void distanceCutoffChanged();
107 void manualAttenuationChanged();
108 void occlusionIntensityChanged();
109 void directivityChanged();
110 void directivityOrderChanged();
111 void nearFieldGainChanged();
119 Q_DECLARE_PRIVATE(QSpatialSound)
120 friend class QAmbientSoundPrivate;
123 QT6_ONLY(
void *unused =
nullptr;)