Class: HeadMusic::Style::Guides::FirstSpeciesHarmony

Inherits:
Object
  • Object
show all
Defined in:
lib/head_music/style/guides/first_species_harmony.rb

Overview

Rules for first species harmony

Constant Summary collapse

RULESET =
[
  HeadMusic::Style::Guidelines::ApproachPerfectionContrarily,
  HeadMusic::Style::Guidelines::AvoidCrossingVoices,
  HeadMusic::Style::Guidelines::AvoidOverlappingVoices,
  HeadMusic::Style::Guidelines::ConsonantDownbeats,
  HeadMusic::Style::Guidelines::NoUnisonsInMiddle,
  HeadMusic::Style::Guidelines::OneToOne,
  HeadMusic::Style::Guidelines::PreferContraryMotion,
  HeadMusic::Style::Guidelines::PreferImperfect
].freeze

Class Method Summary collapse

Class Method Details

.analyze(voice) ⇒ Object



17
18
19
# File 'lib/head_music/style/guides/first_species_harmony.rb', line 17

def self.analyze(voice)
  RULESET.map { |rule| rule.new(voice) }
end