mirror of https://github.com/AxioDL/amuse.git
26 lines
776 B
C++
26 lines
776 B
C++
#ifndef __AMUSE_SURROUNDPROFILES_HPP__
|
|
#define __AMUSE_SURROUNDPROFILES_HPP__
|
|
|
|
#include "IBackendVoice.hpp"
|
|
#include "IBackendVoiceAllocator.hpp"
|
|
#include "Emitter.hpp"
|
|
|
|
namespace amuse
|
|
{
|
|
struct ReferenceVector;
|
|
|
|
/** Support class for attenuating channel audio based on speaker 'positions' */
|
|
class SurroundProfiles
|
|
{
|
|
static void SetupRefs(float matOut[8], const ChannelMap& map,
|
|
const Vector3f& listenEmit, const ReferenceVector refs[]);
|
|
public:
|
|
static void SetupMatrix(float matOut[8], const ChannelMap& map, AudioChannelSet set,
|
|
const Vector3f& emitPos, const Vector3f& listenPos,
|
|
const Vector3f& listenDir, const Vector3f& listenUp);
|
|
};
|
|
|
|
}
|
|
|
|
#endif // __AMUSE_SURROUNDPROFILES_HPP__
|