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

ControlPortmThresh1
 operand control port
ControlPortmThresh2
BuffermT1Buffer
 operand control port buffer
BuffermT2Buffer

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