inheritance tree
ScaleDegreeMixinForChord
class definition
[abstract class] ScaleDegreeMixinForChord extends the root pitch representation of the class DiatonicChord (HS.score.diatonicChord). Whereas the DiatonicChord root is expressed by a pitch class, ScaleDegreeMixinForChord additional represents the root as a scale degree. This mixin defines the two parameters rootDegree and rootAccidental. rootDegree denotes the degree of the root's pitch in the scale the chord is related to. rootAccidental denotes an accidental for rootDegree in that scale, encoded as described in the doc for DegreeToPC. The relation between pitchClass, scaleDegree and scaleAccidental is constrained.
ScaleDegreeMixinForChord is defined as a mixin to make it more easy to combine this mixin with other extensions to the class DiatonicChord. ScaleDegreeMixinForChord is designed to extend the class DiatonicChord, because this mixin depends on the mixin InScaleMixinForChord (HS.score.inScaleMixinForChord).
NB: the parameters rootDegree and rootAccidental are only constrained in their relation to the parameter root _after_ the related scale is known and fully determined.
class ScaleDegreeMixinForChord (Inheritance-free)
feat !ScaleDegreeMixinForChordType
attr rootAccidental rootDegree
- getRootAccidental($)
- getRootAccidentalParameter($)
- getRootDegree($)
- getRootDegreeParameter($)
- initScaleDegreeMixinForChord(rootAccidental:Accidental rootDegree:Degree)
end