iso::synth::Decoder Class Reference

#include <iso_synth_decoder.h>

Inherits iso::synth::ProcessUnit.

Inheritance diagram for iso::synth::Decoder:

Inheritance graph
[legend]
Collaboration diagram for iso::synth::Decoder:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Decoder ()
 default constructor
 Decoder (unsigned int pAmbiOrder, unsigned int pAmbiDim, QVector< math::Vector< sample > > &pSpeakerPositions)
 create ambisonic decoder
 Decoder (const String &pName, unsigned int pAmbiOrder, unsigned int pAmbiDim, QVector< math::Vector< sample > > &pSpeakerPositions)
 create ambisonic decoder
 Decoder (const String &pName, unsigned int pAmbiOrder, unsigned int pAmbiDim, QVector< math::Vector< sample > > &pSpeakerPositions, unsigned int pFrameCount, unsigned int pRate, FanInType pFanInType=FANIN_ADD) throw (SynthException)
 name and parameter based constructor
 Decoder (const Decoder &pUnit)
 copy constructor
 Decoder (const String &pName, const Decoder &pUnit)
 name & copy constructor
 Decoder (const data::Values &pValues) throw (SynthException)
 values based constructor
 ~Decoder ()
 destructor
const QVector< math::Vector<
sample > > & 
speakerPositions () const
 return speaker positions
virtual void process (Buffer *pBuffer) throw (SynthException)
 processes buffer
virtual String info (bool pPropagate=false, bool pShowPorts=true) const
 obtain textual unit information

Static Public Attributes

static const String sClassName
 default name

Protected Member Functions

void init ()
 initializes unit
void init (const QVector< math::Vector< sample > > &pSpeakerPositions)
 initializes unit

Protected Attributes

unsigned int mAmbiOrder
 ambisonics order
unsigned int mAmbiDim
 ambisonics dimension
QVector< math::Vector< sample > > mSpeakerPositions
 speaker positions
DecodeStrategymStrategy
 ambisonics decoding strategy

Static Protected Attributes

static unsigned int sUnitCount
 total number of multiply units created so far

Friends

std::ostream & operator<< (std::ostream &pOstream, const Decoder &pUnit)
 print unit information

Constructor & Destructor Documentation

Decoder::Decoder (  ) 

default constructor

creates horizontal arrangement of 8 speakers

Decoder::Decoder ( unsigned int  pAmbiOrder,
unsigned int  pAmbiDim,
QVector< math::Vector< sample > > &  pSpeakerPositions 
)

create ambisonic decoder

Parameters:
pAmbiOrder ambisonics order ( > 0 )
pAmbiDim ambisonics dimension ( 2 or 3 )
pSpeakerPositions speaker positions

Decoder::Decoder ( const String pName,
unsigned int  pAmbiOrder,
unsigned int  pAmbiDim,
QVector< math::Vector< sample > > &  pSpeakerPositions 
)

create ambisonic decoder

Parameters:
pName unit name
pAmbiOrder ambisonics order ( > 0 )
pAmbiDim ambisonics dimension ( 2 or 3 )
pSpeakerPositions speaker positions

Decoder::Decoder ( const String pName,
unsigned int  pAmbiOrder,
unsigned int  pAmbiDim,
QVector< math::Vector< sample > > &  pSpeakerPositions,
unsigned int  pFrameCount,
unsigned int  pRate,
FanInType  pFanInType = FANIN_ADD 
) throw (SynthException)

name and parameter based constructor

Parameters:
pName unit name
pAmbiOrder ambisonics order ( > 0 )
pAmbiDim ambisonics dimension ( 2 or 3 )
pSpeakerPositions speaker positions
pFrameCount number of frames
pRate samping rate
pFanInType strategy for combining audio buffers in case this unit is connected to several units

Decoder::Decoder ( const Decoder pUnit  ) 

copy constructor

Parameters:
pUnit unit to copy properties from
constructor copies frameCount, channelCount and rate but not unit name

Decoder::Decoder ( const String pName,
const Decoder pUnit 
)

name & copy constructor

Parameters:
pName unit name
pUnit unit to copy properties from
constructor copies frameCount, channelCount and rate but not unit name

Decoder::Decoder ( const data::Values &  pValues  )  throw (SynthException)

values based constructor

Parameters:
pValues unit values
Exceptions:
SynthException failed to create unit
pValues structure & data types: 0: const String& : unit name 1: unsigned int : ambisonics order 2: unsigned int : ambisonics dimension 3: QVector< math::Vector<sample> > speaker positions 4: unsigned int : frame count 5: unsigned int : sample rate

Decoder::~Decoder (  ) 

destructor


Member Function Documentation

const QVector< math::Vector< sample > > & Decoder::speakerPositions (  )  const

return speaker positions

Returns:
speaker positions

void Decoder::process ( Buffer pBuffer  )  throw (SynthException) [virtual]

processes buffer

Parameters:
pBuffer buffer to process

Reimplemented from iso::synth::ProcessUnit.

base::String Decoder::info ( bool  pPropagate = false,
bool  pShowPorts = true 
) const [virtual]

obtain textual unit information

Parameters:
pPropagate if true, the unit calls the info methods of its input ports
pShowPorts print port information
Returns:
String containing unit information

Reimplemented from iso::synth::ProcessUnit.

void Decoder::init (  )  [protected]

initializes unit

void Decoder::init ( const QVector< math::Vector< sample > > &  pSpeakerPositions  )  [protected]

initializes unit

Parameters:
pSpeakerPositions speaker positions


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  pOstream,
const Decoder pUnit 
) [friend]

print unit information


Member Data Documentation

const base::String Decoder::sClassName [static]

default name

Reimplemented from iso::synth::ProcessUnit.

unsigned int Decoder::sUnitCount [static, protected]

total number of multiply units created so far

Reimplemented from iso::synth::ProcessUnit.

unsigned int iso::synth::Decoder::mAmbiOrder [protected]

ambisonics order

unsigned int iso::synth::Decoder::mAmbiDim [protected]

ambisonics dimension

QVector< math::Vector<sample> > iso::synth::Decoder::mSpeakerPositions [protected]

speaker positions

DecodeStrategy* iso::synth::Decoder::mStrategy [protected]

ambisonics decoding strategy


The documentation for this class was generated from the following files:
Generated on Fri Feb 25 14:18:45 2011 for synth by  doxygen 1.5.1