#include <CounterpointNode.hpp>
Inherits csound::Node, and Counterpoint.
Public Types
- enum { MostNotes_ = 128,
MostVoices_ = 12
}
- enum {
Unison = 0,
MinorSecond = 1,
MajorSecond = 2,
MinorThird = 3,
MajorThird = 4,
Fourth = 5,
Tritone = 6,
Fifth = 7,
MinorSixth = 8,
MajorSixth = 9,
MinorSeventh = 10,
MajorSeventh = 11,
Octave = 12
}
- enum {
Aeolian = 1,
Dorian = 2,
Phrygian = 3,
Lydian = 4,
Mixolydian = 5,
Ionian = 6,
Locrian = 7
}
- enum { DirectMotion = 1,
ContraryMotion = 2,
ObliqueMotion = 3,
NoMotion = 4
}
- enum {
WholeNote = 8,
HalfNote = 4,
DottedHalfNote = 6,
QuarterNote = 2,
DottedQuarterNote = 3,
EighthNote = 1
}
- enum {
One = 0,
Two = 2,
Three = 3,
Four = 4,
Five = 5,
Six = 6,
Eight = 8
}
- enum { infinity = 1000000,
Bad = 100,
RealBad = 200
}
- enum { INTERVALS_WITH_BASS_SIZE = 8
}
- enum { NumFields = 16,
Field = (MostVoices_+1),
EndF = (Field*NumFields)
}
- enum { GenerateCounterpoint = 0,
CorrectCounterpoint = 1
}
Public Member Functions
- int ABS (int i)
- virtual void addChild (Node *node)
- void AddInterval (int n)
- int ADissonance (int Interval, int Cn, int Cp, int v, int Species)
- int AnOctave (int Interval)
- void AnySpecies (int OurMode, int *StartPitches, int CurV, int CantusFirmusLength, int Species)
- void ARRBLT (int *dest, int *source, int num)
- int ASeventh (int Interval)
- int ASkip (int Interval)
- int AStep (int Interval)
- int ATenth (int Interval)
- int AThird (int Interval)
- int BadMelody (int Intv)
- int Bass (int Cn, int v)
- int Beat8 (int n)
- void BestFitFirst (int CurTime, int CurrentPenalty, int NumParts, int Species, int BrLim)
- int Cantus (int n, int v)
- int Check (int Cn, int Cp, int v, int NumParts, int Species, int CurLim)
- void CleanRhy ()
- virtual void clear ()
- virtual void clear ()
- int ConsecutiveSkipsInSameDirection (int Pitch1, int Pitch2, int Pitch3)
- void counterpoint (int OurMode, int *StartPitches, int CurV, int CantusFirmusLength, int Species, int *cantus)
- CounterpointNode ()
- virtual ublas::matrix< double > createTransform ()
- int CurRhy (int n)
- int DirectMotionToPerfectConsonance (int Pitch1, int Pitch2, int Pitch3, int Pitch4)
- int Doubled (int Pitch, int Cn, int v)
- int DownBeat (int n, int v)
- virtual double & element (size_t row, size_t column)
- int ExtremeRange (int Pitch)
- void fillCantus (int c0, int c1, int c2, int c3, int c4, int c5, int c6, int c7, int c8, int c9, int c10, int c11, int c12, int c13, int c14)
- void FillRhyPat ()
- int FirstNote (int n, int v)
- virtual ublas::matrix< double > getLocalCoordinates () const
- int GoodRhy ()
- virtual void initialize (int mostnotes, int mostvoices)
- int InMode (int Pitch, int Mode)
- int LastNote (int n, int v)
- int Look (int CurPen, int CurVoice, int NumParts, int Species, int Lim, int *Pens, int *Is, int *CurNotes)
- int MAX (int a, int b)
- void message (const char *format,...)
- void message (const char *format, va_list valist)
- int MIN (int a, int b)
- int MotionType (int Pitch1, int Pitch2, int Pitch3, int Pitch4)
- int NextToLastNote (int n, int v)
- int Other (int Cn, int v, int v1)
- int OtherVoiceCheck (int Cn, int Cp, int v, int NumParts, int Species, int CurLim)
- int OutOfRange (int Pitch)
- int PitchRepeats (int Cn, int Cp, int v)
- virtual void produceOrTransform (Score &score, size_t beginAt, size_t endAt, const ublas::matrix< double > &globalCoordinates)
- virtual void produceOrTransform (Score &score, size_t beginAt, size_t endAt, const ublas::matrix< double > &coordinates)
- float RANDOM (float amp)
- int SaveIndx (int indx, int *Sp)
- void SaveResults (int CurrentPenalty, int Penalty, int v1, int Species)
- virtual void setElement (size_t row, size_t column, double value)
- void SetUs (int n, int p, int v)
- int Size (int MelInt)
- int SpecialSpeciesCheck (int Cn, int Cp, int v, int Other0, int Other1, int Other2, int NumParts, int Species, int MelInt, int Interval, int ActInt, int LastIntClass, int Pitch, int LastMelInt, int CurLim)
- void toCsoundScore (std::string filename, double secondsPerPulse)
- int TooMuchOfInterval (int Cn, int Cp, int v)
- int TotalRange (int Cn, int Cp, int v)
- virtual ublas::matrix< double > traverse (const ublas::matrix< double > &globalCoordinates, Score &score)
- int UpBeat (int n, int v)
- int Us (int n, int v)
- void UsedRhy (int n)
- int VIndex (int Time, int VNum)
- void winners (int v1, int *data, int *best, int *best1, int *best2, int *durs)
- virtual ~CounterpointNode ()
Data Fields
Static Public Attributes
Protected Attributes
Detailed Description
Uses Bill Schottstaedt's species counterpoint generator code to either (a) generate a counterpoint in species 1, 2, or 3 for a cantus firmus selected from notes generated by child nodes, or (b) attempt to correct the voice leading for species 1, 2, or 3 counterpoint in notes generated by child nodes.
Member Enumeration Documentation
anonymous enum [inherited] |
anonymous enum [inherited] |
- Enumerator:
Unison |
|
MinorSecond |
|
MajorSecond |
|
MinorThird |
|
MajorThird |
|
Fourth |
|
Tritone |
|
Fifth |
|
MinorSixth |
|
MajorSixth |
|
MinorSeventh |
|
MajorSeventh |
|
Octave |
|
anonymous enum [inherited] |
- Enumerator:
Aeolian |
|
Dorian |
|
Phrygian |
|
Lydian |
|
Mixolydian |
|
Ionian |
|
Locrian |
|
anonymous enum [inherited] |
- Enumerator:
DirectMotion |
|
ContraryMotion |
|
ObliqueMotion |
|
NoMotion |
|
anonymous enum [inherited] |
- Enumerator:
WholeNote |
|
HalfNote |
|
DottedHalfNote |
|
QuarterNote |
|
DottedQuarterNote |
|
EighthNote |
|
anonymous enum [inherited] |
- Enumerator:
One |
|
Two |
|
Three |
|
Four |
|
Five |
|
Six |
|
Eight |
|
anonymous enum [inherited] |
anonymous enum [inherited] |
anonymous enum [inherited] |
- Enumerator:
GenerateCounterpoint |
|
CorrectCounterpoint |
|
Constructor & Destructor Documentation
csound::CounterpointNode::CounterpointNode |
( |
|
) |
|
virtual csound::CounterpointNode::~CounterpointNode |
( |
|
) |
[virtual] |
Member Function Documentation
int Counterpoint::ABS |
( |
int |
i |
) |
[inherited] |
virtual void csound::Node::addChild |
( |
Node * |
node |
) |
[virtual, inherited] |
void Counterpoint::AddInterval |
( |
int |
n |
) |
[inherited] |
int Counterpoint::ADissonance |
( |
int |
Interval, |
|
|
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v, |
|
|
int |
Species | |
|
) |
| | [inherited] |
int Counterpoint::AnOctave |
( |
int |
Interval |
) |
[inherited] |
void Counterpoint::AnySpecies |
( |
int |
OurMode, |
|
|
int * |
StartPitches, |
|
|
int |
CurV, |
|
|
int |
CantusFirmusLength, |
|
|
int |
Species | |
|
) |
| | [inherited] |
void Counterpoint::ARRBLT |
( |
int * |
dest, |
|
|
int * |
source, |
|
|
int |
num | |
|
) |
| | [inherited] |
int Counterpoint::ASeventh |
( |
int |
Interval |
) |
[inherited] |
int Counterpoint::ASkip |
( |
int |
Interval |
) |
[inherited] |
int Counterpoint::AStep |
( |
int |
Interval |
) |
[inherited] |
int Counterpoint::ATenth |
( |
int |
Interval |
) |
[inherited] |
int Counterpoint::AThird |
( |
int |
Interval |
) |
[inherited] |
int Counterpoint::BadMelody |
( |
int |
Intv |
) |
[inherited] |
int Counterpoint::Bass |
( |
int |
Cn, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Beat8 |
( |
int |
n |
) |
[inherited] |
void Counterpoint::BestFitFirst |
( |
int |
CurTime, |
|
|
int |
CurrentPenalty, |
|
|
int |
NumParts, |
|
|
int |
Species, |
|
|
int |
BrLim | |
|
) |
| | [inherited] |
int Counterpoint::Cantus |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Check |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v, |
|
|
int |
NumParts, |
|
|
int |
Species, |
|
|
int |
CurLim | |
|
) |
| | [inherited] |
void Counterpoint::CleanRhy |
( |
|
) |
[inherited] |
virtual void csound::Node::clear |
( |
|
) |
[virtual, inherited] |
virtual void Counterpoint::clear |
( |
|
) |
[virtual, inherited] |
int Counterpoint::ConsecutiveSkipsInSameDirection |
( |
int |
Pitch1, |
|
|
int |
Pitch2, |
|
|
int |
Pitch3 | |
|
) |
| | [inherited] |
void Counterpoint::counterpoint |
( |
int |
OurMode, |
|
|
int * |
StartPitches, |
|
|
int |
CurV, |
|
|
int |
CantusFirmusLength, |
|
|
int |
Species, |
|
|
int * |
cantus | |
|
) |
| | [inherited] |
virtual ublas::matrix<double> csound::Node::createTransform |
( |
|
) |
[virtual, inherited] |
int Counterpoint::CurRhy |
( |
int |
n |
) |
[inherited] |
int Counterpoint::DirectMotionToPerfectConsonance |
( |
int |
Pitch1, |
|
|
int |
Pitch2, |
|
|
int |
Pitch3, |
|
|
int |
Pitch4 | |
|
) |
| | [inherited] |
int Counterpoint::Doubled |
( |
int |
Pitch, |
|
|
int |
Cn, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::DownBeat |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
virtual double& csound::Node::element |
( |
size_t |
row, |
|
|
size_t |
column | |
|
) |
| | [virtual, inherited] |
int Counterpoint::ExtremeRange |
( |
int |
Pitch |
) |
[inherited] |
void Counterpoint::fillCantus |
( |
int |
c0, |
|
|
int |
c1, |
|
|
int |
c2, |
|
|
int |
c3, |
|
|
int |
c4, |
|
|
int |
c5, |
|
|
int |
c6, |
|
|
int |
c7, |
|
|
int |
c8, |
|
|
int |
c9, |
|
|
int |
c10, |
|
|
int |
c11, |
|
|
int |
c12, |
|
|
int |
c13, |
|
|
int |
c14 | |
|
) |
| | [inherited] |
void Counterpoint::FillRhyPat |
( |
|
) |
[inherited] |
int Counterpoint::FirstNote |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
virtual ublas::matrix<double> csound::Node::getLocalCoordinates |
( |
|
) |
const [virtual, inherited] |
Returns the local transformation of coordinate system.
Reimplemented in csound::Random.
int Counterpoint::GoodRhy |
( |
|
) |
[inherited] |
virtual void Counterpoint::initialize |
( |
int |
mostnotes, |
|
|
int |
mostvoices | |
|
) |
| | [virtual, inherited] |
int Counterpoint::InMode |
( |
int |
Pitch, |
|
|
int |
Mode | |
|
) |
| | [inherited] |
int Counterpoint::LastNote |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Look |
( |
int |
CurPen, |
|
|
int |
CurVoice, |
|
|
int |
NumParts, |
|
|
int |
Species, |
|
|
int |
Lim, |
|
|
int * |
Pens, |
|
|
int * |
Is, |
|
|
int * |
CurNotes | |
|
) |
| | [inherited] |
int Counterpoint::MAX |
( |
int |
a, |
|
|
int |
b | |
|
) |
| | [inherited] |
void Counterpoint::message |
( |
const char * |
format, |
|
|
va_list |
valist | |
|
) |
| | [inherited] |
void Counterpoint::message |
( |
const char * |
format, |
|
|
|
... | |
|
) |
| | [inherited] |
int Counterpoint::MIN |
( |
int |
a, |
|
|
int |
b | |
|
) |
| | [inherited] |
int Counterpoint::MotionType |
( |
int |
Pitch1, |
|
|
int |
Pitch2, |
|
|
int |
Pitch3, |
|
|
int |
Pitch4 | |
|
) |
| | [inherited] |
int Counterpoint::NextToLastNote |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Other |
( |
int |
Cn, |
|
|
int |
v, |
|
|
int |
v1 | |
|
) |
| | [inherited] |
int Counterpoint::OtherVoiceCheck |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v, |
|
|
int |
NumParts, |
|
|
int |
Species, |
|
|
int |
CurLim | |
|
) |
| | [inherited] |
int Counterpoint::OutOfRange |
( |
int |
Pitch |
) |
[inherited] |
int Counterpoint::PitchRepeats |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v | |
|
) |
| | [inherited] |
virtual void csound::Node::produceOrTransform |
( |
Score & |
score, |
|
|
size_t |
beginAt, |
|
|
size_t |
endAt, |
|
|
const ublas::matrix< double > & |
coordinates | |
|
) |
| | [virtual, inherited] |
virtual void csound::CounterpointNode::produceOrTransform |
( |
Score & |
score, |
|
|
size_t |
beginAt, |
|
|
size_t |
endAt, |
|
|
const ublas::matrix< double > & |
globalCoordinates | |
|
) |
| | [virtual] |
float Counterpoint::RANDOM |
( |
float |
amp |
) |
[inherited] |
int Counterpoint::SaveIndx |
( |
int |
indx, |
|
|
int * |
Sp | |
|
) |
| | [inherited] |
void Counterpoint::SaveResults |
( |
int |
CurrentPenalty, |
|
|
int |
Penalty, |
|
|
int |
v1, |
|
|
int |
Species | |
|
) |
| | [inherited] |
virtual void csound::Node::setElement |
( |
size_t |
row, |
|
|
size_t |
column, |
|
|
double |
value | |
|
) |
| | [virtual, inherited] |
void Counterpoint::SetUs |
( |
int |
n, |
|
|
int |
p, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Size |
( |
int |
MelInt |
) |
[inherited] |
int Counterpoint::SpecialSpeciesCheck |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v, |
|
|
int |
Other0, |
|
|
int |
Other1, |
|
|
int |
Other2, |
|
|
int |
NumParts, |
|
|
int |
Species, |
|
|
int |
MelInt, |
|
|
int |
Interval, |
|
|
int |
ActInt, |
|
|
int |
LastIntClass, |
|
|
int |
Pitch, |
|
|
int |
LastMelInt, |
|
|
int |
CurLim | |
|
) |
| | [inherited] |
void Counterpoint::toCsoundScore |
( |
std::string |
filename, |
|
|
double |
secondsPerPulse | |
|
) |
| | [inherited] |
int Counterpoint::TooMuchOfInterval |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::TotalRange |
( |
int |
Cn, |
|
|
int |
Cp, |
|
|
int |
v | |
|
) |
| | [inherited] |
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::Hocket, and csound::Sequence.
int Counterpoint::UpBeat |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
int Counterpoint::Us |
( |
int |
n, |
|
|
int |
v | |
|
) |
| | [inherited] |
void Counterpoint::UsedRhy |
( |
int |
n |
) |
[inherited] |
int Counterpoint::VIndex |
( |
int |
Time, |
|
|
int |
VNum | |
|
) |
| | [inherited] |
void Counterpoint::winners |
( |
int |
v1, |
|
|
int * |
data, |
|
|
int * |
best, |
|
|
int * |
best1, |
|
|
int * |
best2, |
|
|
int * |
durs | |
|
) |
| | [inherited] |
Field Documentation