qaudioroom.sip 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. // qaudioroom.sip generated by MetaSIP
  2. //
  3. // This file is part of the QtSpatialAudio Python extension module.
  4. //
  5. // Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
  6. //
  7. // This file is part of PyQt6.
  8. //
  9. // This file may be used under the terms of the GNU General Public License
  10. // version 3.0 as published by the Free Software Foundation and appearing in
  11. // the file LICENSE included in the packaging of this file. Please review the
  12. // following information to ensure the GNU General Public License version 3.0
  13. // requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  14. //
  15. // If you do not wish to use this file under the terms of the GPL version 3.0
  16. // then you may purchase a commercial license. For more information contact
  17. // info@riverbankcomputing.com.
  18. //
  19. // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  20. // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  21. %If (Qt_6_5_0 -)
  22. class QAudioRoom : public QObject
  23. {
  24. %TypeHeaderCode
  25. #include <qaudioroom.h>
  26. %End
  27. public:
  28. enum Material
  29. {
  30. Transparent,
  31. AcousticCeilingTiles,
  32. BrickBare,
  33. BrickPainted,
  34. ConcreteBlockCoarse,
  35. ConcreteBlockPainted,
  36. CurtainHeavy,
  37. FiberGlassInsulation,
  38. GlassThin,
  39. GlassThick,
  40. Grass,
  41. LinoleumOnConcrete,
  42. Marble,
  43. Metal,
  44. ParquetOnConcrete,
  45. PlasterRough,
  46. PlasterSmooth,
  47. PlywoodPanel,
  48. PolishedConcreteOrTile,
  49. Sheetrock,
  50. WaterOrIceSurface,
  51. WoodCeiling,
  52. WoodPanel,
  53. UniformMaterial,
  54. };
  55. enum Wall
  56. {
  57. LeftWall,
  58. RightWall,
  59. Floor,
  60. Ceiling,
  61. FrontWall,
  62. BackWall,
  63. };
  64. explicit QAudioRoom(QAudioEngine *engine);
  65. virtual ~QAudioRoom();
  66. void setPosition(QVector3D pos);
  67. QVector3D position() const;
  68. void setDimensions(QVector3D dim);
  69. QVector3D dimensions() const;
  70. void setRotation(const QQuaternion &q);
  71. QQuaternion rotation() const;
  72. void setWallMaterial(QAudioRoom::Wall wall, QAudioRoom::Material material);
  73. QAudioRoom::Material wallMaterial(QAudioRoom::Wall wall) const;
  74. void setReflectionGain(float factor);
  75. float reflectionGain() const;
  76. void setReverbGain(float factor);
  77. float reverbGain() const;
  78. void setReverbTime(float factor);
  79. float reverbTime() const;
  80. void setReverbBrightness(float factor);
  81. float reverbBrightness() const;
  82. signals:
  83. void positionChanged();
  84. void dimensionsChanged();
  85. void rotationChanged();
  86. void wallsChanged();
  87. void reflectionGainChanged();
  88. void reverbGainChanged();
  89. void reverbTimeChanged();
  90. void reverbBrightnessChanged();
  91. };
  92. %End