csl::InOut Class Reference

#include <InOut.h>

Inheritance diagram for csl::InOut:

csl::Effect csl::UnitGenerator csl::Controllable csl::Model

List of all members.

Public Member Functions

 InOut (IO *anIO, unsigned inChan, unsigned outChan, InOutFlags f)
 Constuctor with IO, number of channels in & out, and processing.
 InOut (IO *anIO, unsigned inChan, unsigned outChan, InOutFlags f,...)
 InOut (UnitGenerator &myInput, unsigned inChan, unsigned outChan, InOutFlags f)
 InOut (UnitGenerator &myInput, unsigned inChan, unsigned outChan, InOutFlags,...)
 ~InOut ()
void setInChan (unsigned chan)
void setOutChan (unsigned chan)
 set # in/out chans
unsigned getInChan (void)
unsigned getOutChan (void)
 get # in/out chans
void setChanMap (unsigned *chans)
 set channel map
void setChanGains (float *values)
 set gain array
void setGain (unsigned index, float value)
 set gain value at index
virtual void nextBuffer (Buffer &outputBuffer) throw (CException)

Private Attributes

IOmIO
 The (Singleton) IO pointer (or NULL, to act as an effect).
BufferCMap mMap
 the mapped buffer pointers for the output channels
unsigned mInChan
 # in chans
unsigned mOutChan
 # out chans
InOutFlags mFlags
float * mGains
 amplitude scales


Detailed Description

InOut class copies the IO port's input buffer to the output buffer, possibly with channel remap and scaling

Constructor & Destructor Documentation

InOut::InOut ( IO anIO,
unsigned  inChan,
unsigned  outChan,
InOutFlags  f 
)

Constuctor with IO, number of channels in & out, and processing.

References mGains, and mOutChan.

InOut::InOut ( IO anIO,
unsigned  inChan,
unsigned  outChan,
InOutFlags  f,
  ... 
)

InOut::InOut ( UnitGenerator myInput,
unsigned  inChan,
unsigned  outChan,
InOutFlags  f 
)

InOut::InOut ( UnitGenerator myInput,
unsigned  inChan,
unsigned  outChan,
InOutFlags  f,
  ... 
)

InOut::~InOut (  ) 


Member Function Documentation

void csl::InOut::setInChan ( unsigned  chan  )  [inline]

References mInChan.

void csl::InOut::setOutChan ( unsigned  chan  )  [inline]

set # in/out chans

References mOutChan.

unsigned csl::InOut::getInChan ( void   )  [inline]

References mInChan.

unsigned csl::InOut::getOutChan ( void   )  [inline]

get # in/out chans

References mOutChan.

void InOut::setChanMap ( unsigned *  chans  ) 

set channel map

< set channel map

References csl::BufferCMap::mChannelMap, mMap, and mOutChan.

void InOut::setChanGains ( float *  values  ) 

set gain array

< set gain array

References mGains, and mOutChan.

void InOut::setGain ( unsigned  index,
float  value 
)

set gain value at index

< set gain value at index

References mGains.

void InOut::nextBuffer ( Buffer outputBuffer  )  throw (CException) [virtual]

get a buffer of Frames -- this is the core CSL "pull" function; the given buffer can be written into, and a changed() message is sent.

Reimplemented from csl::UnitGenerator.

References CSL_INPUT, testkiss::j, kL2M, kLR2M, kN2M, kNoProc, kR2M, csl::Port::mBuffer, csl::Buffer::mBuffers, and csl::Effect::pullInput().


Member Data Documentation

IO* csl::InOut::mIO [private]

The (Singleton) IO pointer (or NULL, to act as an effect).

the mapped buffer pointers for the output channels

Referenced by InOut(), and setChanMap().

unsigned csl::InOut::mInChan [private]

# in chans

Referenced by getInChan(), and setInChan().

unsigned csl::InOut::mOutChan [private]

# out chans

Referenced by getOutChan(), InOut(), setChanGains(), setChanMap(), and setOutChan().

float* csl::InOut::mGains [private]

amplitude scales

Referenced by InOut(), setChanGains(), and setGain().


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

Generated on Thu Sep 17 23:14:17 2009 for CSL by  doxygen 1.5.8