.. _moduleFiguredBassRules:

music21.figuredBass.rules
=========================

.. WARNING: DO NOT EDIT THIS FILE:
   AUTOMATICALLY GENERATED.
   PLEASE EDIT THE .py FILE DIRECTLY.

.. automodule:: music21.figuredBass.rules

Rules
-----

.. autoclass:: music21.figuredBass.rules.Rules

.. rubric:: :class:`~music21.figuredBass.rules.Rules` instance variables

.. attribute:: Rules.applyConsecutivePossibRulesToResolution

	False by default. If True, consecutive possibility rules are applied
	between (specialPossib, resPossib) pairs.

.. attribute:: Rules.applySinglePossibRulesToResolution

	False by default. If True, single possibility rules are applied to
	resolution possibilities.

.. attribute:: Rules.doubledRootInDim7

	False by default. If True, Diminished seventh resolutions to the
	tonic will contain a doubled *root*, as opposed to a doubled *third*.
	Rule is ignored (determined in context)
	if :attr:`~music21.figuredBass.segment.Segment.segmentChord` is in first inversion.

.. attribute:: Rules.forbidHiddenFifths

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.hiddenFifth` is applied to all
	(possibA, possibB) pairs, and all those pairs for which the method returns
	False are retained.

.. attribute:: Rules.forbidHiddenOctaves

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.hiddenOctave` is applied to all
	(possibA, possibB) pairs, and all those pairs for which the method returns
	False are retained.

.. attribute:: Rules.forbidIncompletePossibilities

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.isIncomplete` is applied to all possibA,
	and all those possibilities for which the method returns False are retained.

.. attribute:: Rules.forbidParallelFifths

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.parallelFifths` is applied to all
	(possibA, possibB) pairs, and all those pairs for which the method returns
	False are retained.

.. attribute:: Rules.forbidParallelOctaves

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.parallelOctaves` is applied to all
	(possibA, possibB) pairs, and all those pairs for which the method returns
	False are retained.

.. attribute:: Rules.forbidVoiceCrossing

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.voiceCrossing` is applied to all possibA,
	and all those possibilities for which the method returns False are retained.

.. attribute:: Rules.forbidVoiceOverlap

	True by default. If True,
	:meth:`~music21.figuredBass.possibility.voiceOverlap` is applied to all
	(possibA, possibB) pairs, and all those pairs for which the method returns
	False are retained.

.. attribute:: Rules.partMovementLimits

	[] (empty list) by default. Contains (partNumber, maxSeparation)
	pairs provided as arguments
	to :meth:`~music21.figuredBass.possibility.partMovementsWithinLimits`.
	Method is applied to all (possibA, possibB) pairs, and all those pairs
	for which the method returns True are retained.

.. attribute:: Rules.resolveAugmentedSixthProperly

	True by default. If True, Segments
	whose :attr:`~music21.figuredBass.segment.Segment.segmentChord` spells out an
	augmented sixth chord are resolved properly by
	using :meth:`~music21.figuredBass.segment.Segment.resolveAugmentedSixthSegment`.

.. attribute:: Rules.resolveDiminishedSeventhProperly

	True by default. If True, Segments
	whose :attr:`~music21.figuredBass.segment.Segment.segmentChord` spells out
	a fully-diminished seventh chord are resolved properly by
	using :meth:`~music21.figuredBass.segment.Segment.resolveDiminishedSeventhSegment`.

.. attribute:: Rules.resolveDominantSeventhProperly

	True by default. If True, Segments
	whose :attr:`~music21.figuredBass.segment.Segment.segmentChord` spells out a
	dominant seventh chord are resolved properly by
	using :meth:`~music21.figuredBass.segment.Segment.resolveDominantSeventhSegment`.

.. attribute:: Rules.restrictDoublingsInItalianA6Resolution

	True by default. If True, then doublings in the It+6 chord are limited to the
	tonic, or fifth. Setting this to False allows doubling of the root or third, most likely
	through parallel unisons if :attr:`~music21.figuredBass.rules.Rules.forbidParallelOctaves`
	is set to True.

.. attribute:: Rules.upperPartsMaxSemitoneSeparation

	12 by default. A number, in semitones,
	representing the maxSemitoneSeparation argument provided to
	:meth:`~music21.figuredBass.possibility.upperPartsWithinLimit`.
	Method is applied to all possibA, and all those possibilities for which the method returns
	True are retained.
