csl::Instrument Class Reference

#include <Instrument.h>

Inheritance diagram for csl::Instrument:

csl::UnitGenerator csl::Model csl::AdditiveInstrument csl::BasicFMInstrument csl::BasicWhiteNoiseInstrument csl::SndFileInstrument csl::FancyFMInstrument csl::SampleBankInstrument

List of all members.

Public Member Functions

 Instrument ()
 Constructors.
 ~Instrument ()
UnitGeneratorgraph ()
 Accessors.
UGenMapgenMap ()
 my UGen graph
UGenVectorenvelopes ()
 the map of ugens in the graph by name
const string name ()
 the vector of envelopes to query or trigger
UnitGeneratorgenNamed (string name)
 answer the number of channels
AccessorVector getAccessors ()
 Accessor management.
unsigned numAccessors ()
 answer the accessor vector
virtual void setParameter (unsigned selector, int argc, void **argv, const char *types)
 answer the number of accessors
virtual void nextBuffer (Buffer &outputBuffer) throw (CException)
 set a named parameter
virtual bool isActive ()
 Envelope query and re-trigger.
virtual void play ()
virtual void playOSC (int argc, void **argv, const char *types)
virtual void playNote (int argc, void **argv, const char *types)
 Play a note via a direct fcn call (subclasses refine this).
virtual void release ()

Protected Attributes

UnitGeneratormGraph
 Caches.
string mName
 my name
UGenMap mUGens
 the map of ugens in the graph by name
UGenVector mEnvelopes
 the vector of envelopes to query or trigger
AccessorVector mAccessors
 the accessor vector


Detailed Description

Instrument class (abstract)

Constructor & Destructor Documentation

Instrument::Instrument (  ) 

Constructors.

Instrument::~Instrument (  ) 


Member Function Documentation

UnitGenerator* csl::Instrument::graph (  )  [inline]

Accessors.

References mGraph.

UGenMap* csl::Instrument::genMap (  )  [inline]

my UGen graph

References mUGens.

UGenVector* csl::Instrument::envelopes (  )  [inline]

the map of ugens in the graph by name

References mEnvelopes.

const string csl::Instrument::name (  )  [inline]

the vector of envelopes to query or trigger

References mName.

Referenced by setupOSCInstrLibrary().

UnitGenerator * Instrument::genNamed ( string  name  ) 

answer the number of channels

answer my name get a UGen from the graph

References mUGens.

AccessorVector csl::Instrument::getAccessors (  )  [inline]

Accessor management.

References mAccessors.

Referenced by setupOSCInstrLibrary().

unsigned csl::Instrument::numAccessors (  )  [inline]

answer the accessor vector

References mAccessors.

Referenced by setupOSCInstrLibrary().

virtual void csl::Instrument::setParameter ( unsigned  selector,
int  argc,
void **  argv,
const char *  types 
) [inline, virtual]

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

set a named parameter

get a UGen from the graph

Sample creation

Reimplemented from csl::UnitGenerator.

bool Instrument::isActive (  )  [virtual]

Envelope query and re-trigger.

Reimplemented from csl::UnitGenerator.

References FALSE, csl::UnitGenerator::isActive(), mEnvelopes, mGraph, and TRUE.

void Instrument::play (  )  [virtual]

virtual void csl::Instrument::playOSC ( int  argc,
void **  argv,
const char *  types 
) [inline, virtual]

virtual void csl::Instrument::playNote ( int  argc,
void **  argv,
const char *  types 
) [inline, virtual]

Play a note via a direct fcn call (subclasses refine this).

void Instrument::release (  )  [virtual]

References mEnvelopes.


Member Data Documentation

string csl::Instrument::mName [protected]


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