Score node that simplifies building up repetitive and overlapping motivic cells, such as used in Minimalism.
More...
#include <Cell.hpp>
Public Member Functions |
virtual void | addChild (Node *node) |
| Cell () |
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 Score & | getScore () |
virtual void | produceOrTransform (Score &collectingScore, size_t beginAt, size_t endAt, const Eigen::MatrixXd &coordinates) |
| This function is called by the traverse() function.
|
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 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 | ~Cell () |
Data Fields |
std::vector< Node * > | children |
| Child Nodes, if any.
|
double | duration |
| If not 0, the score is rescaled to this duration.
|
double | durationSeconds |
| If relativeDuraton is true, then this time is added to the duration of the Nth repetition in order to obtain the starting time of the N + 1th repetition; if relativeDuration is false, then this time is added to the starting time of the Nth repetition in order to obtain the starting time of the N + 1th repetition.
|
std::string | importFilename |
bool | relativeDuration |
| Indicates whether the durationSeconds of this cell is added to the duration of the notes produced by the child nodes of this (true) at each repetition, or is simply the duration of the cell (false), in which case the notes of the Nth repetition may (or may not) overlap the notes of the N + 1th repetition.
|
int | repeatCount |
| The number of times to repeat the notes produced by the child nodes of this.
|
Detailed Description
Score node that simplifies building up repetitive and overlapping motivic cells, such as used in Minimalism.
Constructor & Destructor Documentation
virtual csound::Cell::~Cell |
( |
| ) |
|
|
virtual |
Member Function Documentation
virtual void csound::Node::addChild |
( |
Node * |
node | ) |
|
|
virtualinherited |
virtual void csound::Node::clear |
( |
| ) |
|
|
virtualinherited |
virtual Eigen::MatrixXd csound::Node::createTransform |
( |
| ) |
|
|
virtualinherited |
virtual double& csound::Node::element |
( |
size_t |
row, |
|
|
size_t |
column |
|
) |
| |
|
virtualinherited |
Returns a reference to the indicated element of the local transformation of coordinate system.
virtual Eigen::MatrixXd csound::Node::getLocalCoordinates |
( |
| ) |
const |
|
virtualinherited |
Returns the local transformation of coordinate system.
virtual Score& csound::ScoreNode::getScore |
( |
| ) |
|
|
virtualinherited |
virtual void csound::Cell::produceOrTransform |
( |
Score & |
collectingScore, |
|
|
size_t |
beginAt, |
|
|
size_t |
endAt, |
|
|
const Eigen::MatrixXd & |
compositeCordinates |
|
) |
| |
|
virtual |
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 from csound::ScoreNode.
virtual void csound::Node::setElement |
( |
size_t |
row, |
|
|
size_t |
column, |
|
|
double |
value |
|
) |
| |
|
virtualinherited |
Sets the indicated element of the local transformation of coordinate system.
virtual Eigen::MatrixXd csound::Node::traverse |
( |
const Eigen::MatrixXd & |
globalCoordinates, |
|
|
Score & |
score |
|
) |
| |
|
virtualinherited |
Field Documentation
std::vector<Node *> csound::Node::children |
|
inherited |
double csound::ScoreNode::duration |
|
inherited |
If not 0, the score is rescaled to this duration.
double csound::Cell::durationSeconds |
If relativeDuraton is true, then this time is added to the duration of the Nth repetition in order to obtain the starting time of the N + 1th repetition; if relativeDuration is false, then this time is added to the starting time of the Nth repetition in order to obtain the starting time of the N + 1th repetition.
std::string csound::ScoreNode::importFilename |
|
inherited |
Eigen::MatrixXd csound::Node::localCoordinates |
|
protectedinherited |
bool csound::Cell::relativeDuration |
Indicates whether the durationSeconds of this cell is added to the duration of the notes produced by the child nodes of this (true) at each repetition, or is simply the duration of the cell (false), in which case the notes of the Nth repetition may (or may not) overlap the notes of the N + 1th repetition.
int csound::Cell::repeatCount |
The number of times to repeat the notes produced by the child nodes of this.
Score csound::ScoreNode::score |
|
protectedinherited |