SAL
A C++ library for spatial audio.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
sal::UniformArray< T > Class Template Reference

#include <microphonearray.h>

Inheritance diagram for sal::UniformArray< T >:
sal::MicrophoneArray sal::Microphone sal::CircularArray< T > sal::StereoMic< T >

Public Member Functions

 UniformArray (const mcl::Point &position, const mcl::Quaternion &orientation, const T &mic_prototype, const mcl::Int num_microphones)
 
virtual ~UniformArray ()
 
- Public Member Functions inherited from sal::MicrophoneArray
 MicrophoneArray (const mcl::Point &position, const mcl::Quaternion &orientation, const std::vector< Microphone * > &microphones)
 
virtual void SetPosition (const mcl::Point &position) noexcept
 
void SetOrientation (const mcl::Quaternion &orientation) noexcept
 
bool IsCoincident () const noexcept
 
Int num_channels () const noexcept
 
const MicrophoneGetConstMicrophonePointer (const Int microphone_id) const noexcept
 
MicrophoneGetMicrophonePointer (const Int microphone_id) noexcept
 
std::vector< Microphone * > GetMicrophonePointers () const noexcept
 
std::vector< const Microphone * > GetConstMicrophonePointers () const noexcept
 
Int num_microphones () const noexcept
 
virtual ~MicrophoneArray ()
 
virtual void AddPlaneWave (const Sample *input_data, const Int num_samples, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
virtual void AddPlaneWaveRelative (const Sample *input_data, const Int num_samples, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
- Public Member Functions inherited from sal::Microphone
 Microphone (mcl::Point position, mcl::Quaternion orientation=mcl::Quaternion::Identity())
 
mcl::Point position () const noexcept
 
mcl::Quaternion orientation () const noexcept
 
void SetHandedness (const mcl::Handedness handedness) noexcept
 
void AddPlaneWave (const MonoBuffer &signal, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample *input_data, const Int num_samples, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample input_sample, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const MonoBuffer &input_buffer, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample input_sample, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
virtual bool IsOmni () const noexcept
 
mcl::Point GetRelativePoint (const mcl::Point &point) const noexcept
 
virtual void Reset () noexcept
 
virtual ~Microphone ()
 
virtual void AddPlaneWaveRelative (const MonoBuffer &signal, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 

Additional Inherited Members

- Static Public Member Functions inherited from sal::MicrophoneArray
static bool Test ()
 
- Protected Attributes inherited from sal::MicrophoneArray
std::vector< Microphone * > microphones_
 

Detailed Description

template<class T>
class sal::UniformArray< T >

This object creates a microphone array based on a microphone prototype. So, for instance, you can take an omnimic, and create an array of N omni mics. This class is a parent for more specific classes, e.g. a circular array etc. This class simply creates N copies of the mic_prototype and repositions them in the set position, with given orientation and handedness.

Constructor & Destructor Documentation

template<class T >
sal::UniformArray< T >::UniformArray ( const mcl::Point &  position,
const mcl::Quaternion &  orientation,
const T &  mic_prototype,
const mcl::Int  num_microphones 
)
inline
template<class T >
virtual sal::UniformArray< T >::~UniformArray ( )
inlinevirtual

The documentation for this class was generated from the following file: