Table of Contents

Class CounterpointRulesCheckResult

Namespace
Celeritas.Core.Analysis
Assembly
Celeritas.dll

Summary counts from a basic counterpoint rules check.

public sealed record CounterpointRulesCheckResult : IEquatable<CounterpointRulesCheckResult>
Inheritance
CounterpointRulesCheckResult
Implements
Inherited Members

Properties

HiddenParallels

Number of hidden (direct) perfect-interval motions detected.

public required int HiddenParallels { get; init; }

Property Value

int

ParallelFifths

Number of parallel-fifth motions detected.

public required int ParallelFifths { get; init; }

Property Value

int

ParallelOctaves

Number of parallel-octave/unison motions detected.

public required int ParallelOctaves { get; init; }

Property Value

int

QualityScore

Overall quality score in the range 0-1.

public required float QualityScore { get; init; }

Property Value

float

SpacingViolations

Number of voice-spacing violations detected; each is a Spacing entry in Violations.

public required int SpacingViolations { get; init; }

Property Value

int

Violations

Full list of counterpoint violations underlying the counts, each naming the time and the two voices it involves.

public required IReadOnlyList<CounterpointViolation> Violations { get; init; }

Property Value

IReadOnlyList<CounterpointViolation>

Remarks

Every count on this record is the number of entries here whose Type matches it: Parallel Fifths, Parallel Octaves, Hidden Perfect Interval, Voice Crossing, Spacing. The list also carries the findings this check does not count — Large Leap and Unresolved Dissonance — so it is longer than their sum.

VoiceCrossing

Number of voice-crossing occurrences detected; each is a Voice Crossing entry in Violations.

public required int VoiceCrossing { get; init; }

Property Value

int