Csound and CsoundAC API  5.17
Public Types | Public Member Functions | Data Fields | Static Public Attributes
Counterpoint Class Reference

#include <Counterpoint.hpp>

+ Inheritance diagram for 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) }

Public Member Functions

int ABS (int i)
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 ()
int ConsecutiveSkipsInSameDirection (int Pitch1, int Pitch2, int Pitch3)
 Counterpoint ()
void counterpoint (int OurMode, int *StartPitches, int CurV, int CantusFirmusLength, int Species, int *cantus)
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)
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)
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)
float RANDOM (float amp)
int SaveIndx (int indx, int *Sp)
void SaveResults (int CurrentPenalty, int Penalty, int v1, int Species)
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)
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 ~Counterpoint ()

Data Fields

int AllDone
int AllVoicesSkipPenalty
int AscendingSixthPenalty
int AugmentedIntervalPenalty
int BadCadencePenalty
int BadMelodyPenalty
int BasePitch
Eigen::MatrixXi BestFit
Eigen::MatrixXi BestFit1
Eigen::MatrixXi BestFit2
int BestFitPenalty
int Branches
int CompoundPenalty
int CrossAboveCantusPenalty
int CrossBelowBassPenalty
Eigen::MatrixXi Ctrpt
int DirectMotionPenalty
int DirectPerfectOnDownbeatPenalty
int DirectToFifthPenalty
int DirectToOctavePenalty
int DirectToTritonePenalty
int DissonanceNotFillingThirdPenalty
int DissonancePenalty
int DoubledFifthPenalty
int DoubledLeadingTonePenalty
int DoubledSixthPenalty
int DownBeatUnisonPenalty
Eigen::MatrixXi Dur
int EighthJumpPenalty
int EndOnPerfectPenalty
int ExtremeRangePenalty
int FifthFollowedBySameDirectionPenalty
int FifthPrecededBySameDirectionPenalty
int Fits [3]
int FourRepeatedNotesPenalty
int HalfUntiedPenalty
int HighestSemitone
int InnerVoicesInDirectToPerfectPenalty
int InnerVoicesInDirectToTritonePenalty
int IntervalsWithBass [INTERVALS_WITH_BASS_SIZE]
int LeapAtCadencePenalty
int LesserLigaturePenalty
int LowerNeighborPenalty
int LowestSemitone
int LydianCadentialTritonePenalty
int MaxPenalty
int MelodicBoredomPenalty
int MelodicTritonePenalty
void(* messageCallback )(CSOUND *csound, int attribute, const char *format, va_list valist)
int Mode
int MostNotes
int MostVoices
int NoLeadingTonePenalty
int NoMotionAgainstOctavePenalty
int NotaCambiataPenalty
int NotaLigaturePenalty
int NotBestCadencePenalty
int NotContraryToOthersPenalty
int NoTimeForaLigaturePenalty
int NotTriadPenalty
int OctaveLeapPenalty
Eigen::MatrixXi Onset
int OutOfModePenalty
int OutOfRangePenalty
int OverOctavePenalty
int OverTwelfthPenalty
int ParallelFifthPenalty
int ParallelUnisonPenalty
float PenaltyRatio
int PerfectConsonancePenalty
long randx
int RepeatedPitchPenalty
int RepetitionOnUpbeatPenalty
Eigen::VectorXi RhyNotes
Eigen::MatrixXi RhyPat
int SixFiveChordPenalty
int SixthFollowedBySameDirectionPenalty
int SixthLeapPenalty
int SixthPrecededBySameDirectionPenalty
int SkipFollowedBySameDirectionPenalty
int SkipFromUnisonPenalty
int SkipPrecededBySameDirectionPenalty
int SkipTo8vePenalty
int SkipToDownBeatPenalty
int TenthToOctavePenalty
int ThirdDoubledPenalty
int ThreeRepeatedNotesPenalty
int ThreeSkipsPenalty
Eigen::VectorXi TotalNotes
int TotalTime
int TripledBassPenalty
int TwoRepeatedNotesPenalty
int TwoSkipsNotInTriadPenalty
int TwoSkipsPenalty
boost::variate_generator
< boost::mt19937,
boost::uniform_real<> > * 
uniform_real_generator
int UnisonDownbeatPenalty
int UnisonOnBeat4Penalty
int UnisonPenalty
int UnisonUpbeatPenalty
int UnpreparedSixFivePenalty
int UnresolvedLeadingTonePenalty
int UnresolvedLigaturePenalty
int UnresolvedSixFivePenalty
int UpperNeighborPenalty
int UpperVoicesTooFarApartPenalty
Eigen::VectorXi vbs
int VerticalTritonePenalty

Static Public Attributes

static int _Aeolian [12]
static int _Dorian [12]
static int _Ionian [12]
static int _Locrian [12]
static int _Lydian [12]
static int _Mixolydian [12]
static int _Phrygian [12]
static int BadMelodyInterval [13]
static int Dissonance [13]
static int ImperfectConsonance [13]
static int Indx [17]
static boost::mt19937 mersenneTwister
static int PerfectConsonance [13]

Member Enumeration Documentation

anonymous enum
Enumerator:
MostNotes_ 
MostVoices_ 
anonymous enum
Enumerator:
Unison 
MinorSecond 
MajorSecond 
MinorThird 
MajorThird 
Fourth 
Tritone 
Fifth 
MinorSixth 
MajorSixth 
MinorSeventh 
MajorSeventh 
Octave 
anonymous enum
Enumerator:
Aeolian 
Dorian 
Phrygian 
Lydian 
Mixolydian 
Ionian 
Locrian 
anonymous enum
Enumerator:
DirectMotion 
ContraryMotion 
ObliqueMotion 
NoMotion 
anonymous enum
Enumerator:
WholeNote 
HalfNote 
DottedHalfNote 
QuarterNote 
DottedQuarterNote 
EighthNote 
anonymous enum
Enumerator:
One 
Two 
Three 
Four 
Five 
Six 
Eight 
anonymous enum
Enumerator:
infinity 
Bad 
RealBad 
anonymous enum
Enumerator:
INTERVALS_WITH_BASS_SIZE 
anonymous enum
Enumerator:
NumFields 
Field 
EndF 

Constructor & Destructor Documentation

Counterpoint::Counterpoint ( )
virtual Counterpoint::~Counterpoint ( )
virtual

Member Function Documentation

int Counterpoint::ABS ( int  i)
void Counterpoint::AddInterval ( int  n)
int Counterpoint::ADissonance ( int  Interval,
int  Cn,
int  Cp,
int  v,
int  Species 
)
int Counterpoint::AnOctave ( int  Interval)
void Counterpoint::AnySpecies ( int  OurMode,
int *  StartPitches,
int  CurV,
int  CantusFirmusLength,
int  Species 
)
void Counterpoint::ARRBLT ( int *  dest,
int *  source,
int  num 
)
int Counterpoint::ASeventh ( int  Interval)
int Counterpoint::ASkip ( int  Interval)
int Counterpoint::AStep ( int  Interval)
int Counterpoint::ATenth ( int  Interval)
int Counterpoint::AThird ( int  Interval)
int Counterpoint::BadMelody ( int  Intv)
int Counterpoint::Bass ( int  Cn,
int  v 
)
int Counterpoint::Beat8 ( int  n)
void Counterpoint::BestFitFirst ( int  CurTime,
int  CurrentPenalty,
int  NumParts,
int  Species,
int  BrLim 
)
int Counterpoint::Cantus ( int  n,
int  v 
)
int Counterpoint::Check ( int  Cn,
int  Cp,
int  v,
int  NumParts,
int  Species,
int  CurLim 
)
void Counterpoint::CleanRhy ( )
virtual void Counterpoint::clear ( )
virtual
int Counterpoint::ConsecutiveSkipsInSameDirection ( int  Pitch1,
int  Pitch2,
int  Pitch3 
)
void Counterpoint::counterpoint ( int  OurMode,
int *  StartPitches,
int  CurV,
int  CantusFirmusLength,
int  Species,
int *  cantus 
)
int Counterpoint::CurRhy ( int  n)
int Counterpoint::DirectMotionToPerfectConsonance ( int  Pitch1,
int  Pitch2,
int  Pitch3,
int  Pitch4 
)
int Counterpoint::Doubled ( int  Pitch,
int  Cn,
int  v 
)
int Counterpoint::DownBeat ( int  n,
int  v 
)
int Counterpoint::ExtremeRange ( int  Pitch)
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 
)
void Counterpoint::FillRhyPat ( )
int Counterpoint::FirstNote ( int  n,
int  v 
)
int Counterpoint::GoodRhy ( )
virtual void Counterpoint::initialize ( int  mostnotes,
int  mostvoices 
)
virtual
int Counterpoint::InMode ( int  Pitch,
int  Mode 
)
int Counterpoint::LastNote ( int  n,
int  v 
)
int Counterpoint::Look ( int  CurPen,
int  CurVoice,
int  NumParts,
int  Species,
int  Lim,
int *  Pens,
int *  Is,
int *  CurNotes 
)
int Counterpoint::MAX ( int  a,
int  b 
)
void Counterpoint::message ( const char *  format,
  ... 
)
void Counterpoint::message ( const char *  format,
va_list  valist 
)
int Counterpoint::MIN ( int  a,
int  b 
)
int Counterpoint::MotionType ( int  Pitch1,
int  Pitch2,
int  Pitch3,
int  Pitch4 
)
int Counterpoint::NextToLastNote ( int  n,
int  v 
)
int Counterpoint::Other ( int  Cn,
int  v,
int  v1 
)
int Counterpoint::OtherVoiceCheck ( int  Cn,
int  Cp,
int  v,
int  NumParts,
int  Species,
int  CurLim 
)
int Counterpoint::OutOfRange ( int  Pitch)
int Counterpoint::PitchRepeats ( int  Cn,
int  Cp,
int  v 
)
float Counterpoint::RANDOM ( float  amp)
int Counterpoint::SaveIndx ( int  indx,
int *  Sp 
)
void Counterpoint::SaveResults ( int  CurrentPenalty,
int  Penalty,
int  v1,
int  Species 
)
void Counterpoint::SetUs ( int  n,
int  p,
int  v 
)
int Counterpoint::Size ( int  MelInt)
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 
)
void Counterpoint::toCsoundScore ( std::string  filename,
double  secondsPerPulse 
)
int Counterpoint::TooMuchOfInterval ( int  Cn,
int  Cp,
int  v 
)
int Counterpoint::TotalRange ( int  Cn,
int  Cp,
int  v 
)
int Counterpoint::UpBeat ( int  n,
int  v 
)
int Counterpoint::Us ( int  n,
int  v 
)
void Counterpoint::UsedRhy ( int  n)
int Counterpoint::VIndex ( int  Time,
int  VNum 
)
void Counterpoint::winners ( int  v1,
int *  data,
int *  best,
int *  best1,
int *  best2,
int *  durs 
)

Field Documentation

int Counterpoint::_Aeolian[12]
static
int Counterpoint::_Dorian[12]
static
int Counterpoint::_Ionian[12]
static
int Counterpoint::_Locrian[12]
static
int Counterpoint::_Lydian[12]
static
int Counterpoint::_Mixolydian[12]
static
int Counterpoint::_Phrygian[12]
static
int Counterpoint::AllDone
int Counterpoint::AllVoicesSkipPenalty
int Counterpoint::AscendingSixthPenalty
int Counterpoint::AugmentedIntervalPenalty
int Counterpoint::BadCadencePenalty
int Counterpoint::BadMelodyInterval[13]
static
int Counterpoint::BadMelodyPenalty
int Counterpoint::BasePitch
Eigen::MatrixXi Counterpoint::BestFit
Eigen::MatrixXi Counterpoint::BestFit1
Eigen::MatrixXi Counterpoint::BestFit2
int Counterpoint::BestFitPenalty
int Counterpoint::Branches
int Counterpoint::CompoundPenalty
int Counterpoint::CrossAboveCantusPenalty
int Counterpoint::CrossBelowBassPenalty
Eigen::MatrixXi Counterpoint::Ctrpt
int Counterpoint::DirectMotionPenalty
int Counterpoint::DirectPerfectOnDownbeatPenalty
int Counterpoint::DirectToFifthPenalty
int Counterpoint::DirectToOctavePenalty
int Counterpoint::DirectToTritonePenalty
int Counterpoint::Dissonance[13]
static
int Counterpoint::DissonanceNotFillingThirdPenalty
int Counterpoint::DissonancePenalty
int Counterpoint::DoubledFifthPenalty
int Counterpoint::DoubledLeadingTonePenalty
int Counterpoint::DoubledSixthPenalty
int Counterpoint::DownBeatUnisonPenalty
Eigen::MatrixXi Counterpoint::Dur
int Counterpoint::EighthJumpPenalty
int Counterpoint::EndOnPerfectPenalty
int Counterpoint::ExtremeRangePenalty
int Counterpoint::FifthFollowedBySameDirectionPenalty
int Counterpoint::FifthPrecededBySameDirectionPenalty
int Counterpoint::Fits[3]
int Counterpoint::FourRepeatedNotesPenalty
int Counterpoint::HalfUntiedPenalty
int Counterpoint::HighestSemitone
int Counterpoint::ImperfectConsonance[13]
static
int Counterpoint::Indx[17]
static
int Counterpoint::InnerVoicesInDirectToPerfectPenalty
int Counterpoint::InnerVoicesInDirectToTritonePenalty
int Counterpoint::IntervalsWithBass[INTERVALS_WITH_BASS_SIZE]
int Counterpoint::LeapAtCadencePenalty
int Counterpoint::LesserLigaturePenalty
int Counterpoint::LowerNeighborPenalty
int Counterpoint::LowestSemitone
int Counterpoint::LydianCadentialTritonePenalty
int Counterpoint::MaxPenalty
int Counterpoint::MelodicBoredomPenalty
int Counterpoint::MelodicTritonePenalty
boost::mt19937 Counterpoint::mersenneTwister
static
void(* Counterpoint::messageCallback)(CSOUND *csound, int attribute, const char *format, va_list valist)
int Counterpoint::Mode
int Counterpoint::MostNotes
int Counterpoint::MostVoices
int Counterpoint::NoLeadingTonePenalty
int Counterpoint::NoMotionAgainstOctavePenalty
int Counterpoint::NotaCambiataPenalty
int Counterpoint::NotaLigaturePenalty
int Counterpoint::NotBestCadencePenalty
int Counterpoint::NotContraryToOthersPenalty
int Counterpoint::NoTimeForaLigaturePenalty
int Counterpoint::NotTriadPenalty
int Counterpoint::OctaveLeapPenalty
Eigen::MatrixXi Counterpoint::Onset
int Counterpoint::OutOfModePenalty
int Counterpoint::OutOfRangePenalty
int Counterpoint::OverOctavePenalty
int Counterpoint::OverTwelfthPenalty
int Counterpoint::ParallelFifthPenalty
int Counterpoint::ParallelUnisonPenalty
float Counterpoint::PenaltyRatio
int Counterpoint::PerfectConsonance[13]
static
int Counterpoint::PerfectConsonancePenalty
long Counterpoint::randx
int Counterpoint::RepeatedPitchPenalty
int Counterpoint::RepetitionOnUpbeatPenalty
Eigen::VectorXi Counterpoint::RhyNotes
Eigen::MatrixXi Counterpoint::RhyPat
int Counterpoint::SixFiveChordPenalty
int Counterpoint::SixthFollowedBySameDirectionPenalty
int Counterpoint::SixthLeapPenalty
int Counterpoint::SixthPrecededBySameDirectionPenalty
int Counterpoint::SkipFollowedBySameDirectionPenalty
int Counterpoint::SkipFromUnisonPenalty
int Counterpoint::SkipPrecededBySameDirectionPenalty
int Counterpoint::SkipTo8vePenalty
int Counterpoint::SkipToDownBeatPenalty
int Counterpoint::TenthToOctavePenalty
int Counterpoint::ThirdDoubledPenalty
int Counterpoint::ThreeRepeatedNotesPenalty
int Counterpoint::ThreeSkipsPenalty
Eigen::VectorXi Counterpoint::TotalNotes
int Counterpoint::TotalTime
int Counterpoint::TripledBassPenalty
int Counterpoint::TwoRepeatedNotesPenalty
int Counterpoint::TwoSkipsNotInTriadPenalty
int Counterpoint::TwoSkipsPenalty
boost::variate_generator<boost::mt19937, boost::uniform_real<> >* Counterpoint::uniform_real_generator
int Counterpoint::UnisonDownbeatPenalty
int Counterpoint::UnisonOnBeat4Penalty
int Counterpoint::UnisonPenalty
int Counterpoint::UnisonUpbeatPenalty
int Counterpoint::UnpreparedSixFivePenalty
int Counterpoint::UnresolvedLeadingTonePenalty
int Counterpoint::UnresolvedLigaturePenalty
int Counterpoint::UnresolvedSixFivePenalty
int Counterpoint::UpperNeighborPenalty
int Counterpoint::UpperVoicesTooFarApartPenalty
Eigen::VectorXi Counterpoint::vbs
int Counterpoint::VerticalTritonePenalty