iso::synth::LimiterUnit Class Reference

#include <iso_synth_limiter_unit.h>

Inherits iso::synth::ProcessUnit.

Inheritance diagram for iso::synth::LimiterUnit:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LimiterUnit ()
 default constructor
 LimiterUnit (const String &pName)
 name constructor
 LimiterUnit (unsigned int pChannelCount)
 default constructor
 LimiterUnit (const String &pName, unsigned int pChannelCount)
 name constructor
 LimiterUnit (const String &pName, unsigned int pFrameCount, unsigned int pChannelCount, unsigned int pRate, FanInType pFanInType=FANIN_ADD) throw (SynthException)
 name and parameter based contructor
 LimiterUnit (const String &pName, const Unit &pUnit)
 name & copy constructor
 LimiterUnit (const data::Values &pValues) throw (SynthException)
 values based constructor
virtual ~LimiterUnit ()
 destructor
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 Attributes

ControlPort * mThresh1
 operand control port
ControlPort * mThresh2
Buffer * mT1Buffer
 operand control port buffer
Buffer * mT2Buffer

Detailed Description

range of a signal

control ports:
mThresh1, mThresh2 : threshold ports, the unit auto-detects which one is the upper threshold of the two every frame

Created by Daniel Bisig on 6/24/06. Copyright 2007 John Flury All rights reserved.


Constructor & Destructor Documentation

LimiterUnit::LimiterUnit (  ) 

default constructor

LimiterUnit::LimiterUnit ( const String &  pName  ) 

name constructor

Parameters:
pName unit name

LimiterUnit::LimiterUnit ( unsigned int  pChannelCount  ) 

default constructor

LimiterUnit::LimiterUnit ( const String &  pName,
unsigned int  pChannelCount 
)

name constructor

Parameters:
pName unit name
pChannelCount number of channels

LimiterUnit::LimiterUnit ( const String &  pName,
unsigned int  pFrameCount,
unsigned int  pChannelCount,
unsigned int  pRate,
FanInType  pFanInType = FANIN_ADD 
) throw (SynthException)

name and parameter based contructor

Parameters:
pName unit name
pFrameCount number of frames
pChannelCount number of channels
pRate samping rate
pFanInType strategy for combining audio buffers in case this unit is connected to several units

LimiterUnit::LimiterUnit ( const String &  pName,
const Unit &  pUnit 
)

name & copy constructor

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

LimiterUnit::LimiterUnit ( 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 : number of frames 2: unsigned int : number of channels 3: unsigned int : samping rate

LimiterUnit::~LimiterUnit (  )  [virtual]

destructor


Member Function Documentation

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

processes buffer

Parameters:
pBuffer buffer to process

Reimplemented from iso::synth::ProcessUnit.

String LimiterUnit::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.


Member Data Documentation

const String LimiterUnit::sClassName [static]

default name

Reimplemented from iso::synth::ProcessUnit.

ControlPort* iso::synth::LimiterUnit::mThresh1 [protected]

operand control port

ControlPort* iso::synth::LimiterUnit::mThresh2 [protected]

Buffer* iso::synth::LimiterUnit::mT1Buffer [protected]

operand control port buffer

Buffer* iso::synth::LimiterUnit::mT2Buffer [protected]


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