Public Member Functions |
virtual void | addChild (Node *node) |
virtual void | clear () |
virtual Eigen::MatrixXd | createTransform () |
virtual double & | element (size_t row, size_t column) |
| Returns a reference to the indicated element of the local transformation of coordinate system.
|
virtual Eigen::MatrixXd | getLocalCoordinates () const |
| Returns the local transformation of coordinate system.
|
virtual void | produceOrTransform (Score &collectingScore, size_t beginAt, size_t endAt, const Eigen::MatrixXd &compositeCordinates) |
| This function is called by the traverse() function.
|
| Sequence () |
virtual void | setElement (size_t row, size_t column, double value) |
| Sets the indicated element of the local transformation of coordinate system.
|
virtual Eigen::MatrixXd | traverse (const Eigen::MatrixXd &globalCoordinates, Score &score) |
| The notes produced by the first child node have a total duration.
|
virtual | ~Sequence () |
Node that creates a temporal sequence of child nodes.
virtual void csound::Node::produceOrTransform |
( |
Score & |
collectingScore, |
|
|
size_t |
beginAt, |
|
|
size_t |
endAt, |
|
|
const Eigen::MatrixXd & |
compositeCordinates |
|
) |
| |
|
virtualinherited |
This function is called by the traverse() function.
The default implementation does nothing. If a derived node produces new Events, then it must transform them by the composite coordinates, then append them to the collecting score. If a derived node transforms Events produced by child Nodes, then it must transform only Events in the collecting score starting at the startAt index and continuing up to, but not including, the endAt index. These bookmarks, in turn, must be set in the Traverse function by all Nodes that produce events.
Reimplemented in csound::ChordLindenmayer, csound::VoiceleadingNode, csound::RemoveDuplicates, csound::Random, csound::Cell, csound::CounterpointNode, csound::MCRM, csound::ScoreNode, and csound::Rescale.