Csound and CsoundAC API  5.17
Public Member Functions | Data Fields | Protected Attributes | Static Private Attributes
csound::Rescale Class Reference

Rescales all child events to fit a bounding hypercube in music space. More...

#include <Rescale.hpp>

+ Inheritance diagram for csound::Rescale:

Public Member Functions

virtual void addChild (Node *node)
virtual void clear ()
virtual ublas::matrix< double > createTransform ()
virtual double & element (size_t row, size_t column)
virtual ublas::matrix< double > getLocalCoordinates () const
 Returns the local transformation of coordinate system.
virtual void getRescale (int dimension, bool &rescaleMinimum, bool &rescaleRange, double &targetMinimum, double &targetRange)
virtual ScoregetScore ()
virtual void initialize ()
virtual void produceOrTransform (Score &score, size_t beginAt, size_t endAt, const ublas::matrix< double > &coordinates)
 The default implementation does nothing.
 Rescale ()
virtual void setElement (size_t row, size_t column, double value)
virtual void setRescale (int dimension, bool rescaleMinimum, bool rescaleRange, double targetMinimum, double targetRange)
virtual ublas::matrix< double > traverse (const ublas::matrix< double > &globalCoordinates, Score &score)
 The default implementation postconcatenates its own local coordinate system with the global coordinates, then passes the score and the product of coordinate systems to each child, thus performing a depth-first traversal of the music graph.
virtual ~Rescale ()

Data Fields

std::vector< Node * > children
 Child Nodes, if any.
std::string importFilename

Protected Attributes

ublas::matrix< double > localCoordinates
Score score

Static Private Attributes

static std::map< std::string,
size_t > 
dimensions
static bool initialized

Detailed Description

Rescales all child events to fit a bounding hypercube in music space.

No, some, or all dimensions may be rescaled to fit the minimum alone, the range alone, or both the minimum and the range.


Constructor & Destructor Documentation

virtual csound::Rescale::~Rescale ( ) [virtual]

Member Function Documentation

virtual void csound::Node::addChild ( Node node) [virtual, inherited]
virtual void csound::Node::clear ( ) [virtual, inherited]
virtual ublas::matrix<double> csound::Node::createTransform ( ) [virtual, inherited]
virtual double& csound::Node::element ( size_t  row,
size_t  column 
) [virtual, inherited]
virtual ublas::matrix<double> csound::Node::getLocalCoordinates ( ) const [virtual, inherited]

Returns the local transformation of coordinate system.

virtual void csound::Rescale::getRescale ( int  dimension,
bool &  rescaleMinimum,
bool &  rescaleRange,
double &  targetMinimum,
double &  targetRange 
) [virtual]
virtual Score& csound::ScoreNode::getScore ( ) [virtual, inherited]
virtual void csound::Rescale::initialize ( ) [virtual]
virtual void csound::Rescale::produceOrTransform ( Score score,
size_t  beginAt,
size_t  endAt,
const ublas::matrix< double > &  compositeCordinates 
) [virtual]

The default implementation does nothing.

Derived nodes that produce notes from scratch should transform them using the composite transformation of coordinate system, which is passed in from the traverse() function.

Reimplemented from csound::ScoreNode.

virtual void csound::Node::setElement ( size_t  row,
size_t  column,
double  value 
) [virtual, inherited]
virtual void csound::Rescale::setRescale ( int  dimension,
bool  rescaleMinimum,
bool  rescaleRange,
double  targetMinimum,
double  targetRange 
) [virtual]
virtual ublas::matrix<double> csound::Node::traverse ( const ublas::matrix< double > &  globalCoordinates,
Score score 
) [virtual, inherited]

The default implementation postconcatenates its own local coordinate system with the global coordinates, then passes the score and the product of coordinate systems to each child, thus performing a depth-first traversal of the music graph.

Reimplemented in csound::Sequence, and csound::Hocket.


Field Documentation

std::vector<Node *> csound::Node::children [inherited]

Child Nodes, if any.

std::map<std::string, size_t> csound::Rescale::dimensions [static, private]
std::string csound::ScoreNode::importFilename [inherited]
bool csound::Rescale::initialized [static, private]
ublas::matrix<double> csound::Node::localCoordinates [protected, inherited]
Score csound::ScoreNode::score [protected, inherited]