[docs]class MusicTreeException(Exception):
pass
[docs]class MusicTreeTypeError(MusicTreeException, TypeError):
pass
[docs]class ClassHasNoMusicXMLEquivalentError(MusicTreeException, AttributeError):
pass
[docs]class AddChordError(MusicTreeException):
def __init__(self):
msg = "Use Part.add_chord() instead!"
super().__init__(msg)
[docs]class AlreadyFinalizedError(MusicTreeException):
def __init__(self, object_, method_=None):
msg = f"{object_.__class__.__name__} is already finalized."
if method_:
msg += f" Method {object_.__class__.__name__}.{method_}() cannot be called after finalization."
super().__init__(msg)
[docs]class DeepCopyException(MusicTreeException):
pass
[docs]class WrongNumberOfChordsError(MusicTreeException):
pass
# Beat exceptions
[docs]class BeatException(MusicTreeException):
pass
[docs]class BeatWrongDurationError(BeatException, ValueError):
pass
[docs]class BeatIsFullError(BeatException):
pass
[docs]class BeatNotFullError(BeatException):
pass
[docs]class BeatHasNoParentError(BeatException):
pass
[docs]class BeatUpdateChordTupletsError(BeatException):
pass
# Chord exceptions
[docs]class ChordException(MusicTreeException):
pass
[docs]class ChordAddXException(ChordException):
pass
[docs]class ChordAddXPlacementException(ChordAddXException):
pass
[docs]class ChordAlreadySplitError(ChordException):
pass
[docs]class ChordAlreadyHasNotesError(ChordException):
pass
[docs]class ChordCannotSplitError(ChordException):
pass
[docs]class ChordHasNoMidisError(ChordException):
pass
[docs]class ChordHasNoParentBeamError(ChordException):
pass
[docs]class ChordHasNoParentPartError(ChordException):
pass
[docs]class ChordHasNoNotesError(ChordException):
pass
[docs]class ChordHasNoQuarterDurationError(ChordException):
pass
[docs]class ChordNumberOfDotsNotSetError(ChordException):
pass
[docs]class ChordParentBeamError(ChordException):
pass
[docs]class ChordQuarterDurationAlreadySetError(ChordException):
pass
[docs]class ChordTestError(ChordException):
pass
[docs]class ChordTypeNotSetError(ChordException):
pass
# GraceChord Exceptions
[docs]class GraceChordException(ChordException):
pass
[docs]class GraceChordCannotHaveGraceNotesError(GraceChordException):
pass
[docs]class GraceChordCannotSetQuarterDurationError(GraceChordException):
pass
# Lyrics exceptions
[docs]class LyricsException(MusicTreeException):
pass
[docs]class LyricsExtensionError(LyricsException):
pass
[docs]class LyricSyllabicOrExtensionError(LyricsException):
pass
[docs]class LyricsWrongNumberOfChordsError(LyricsException):
pass
# Measure exceptions
[docs]class MeasureException(MusicTreeException):
pass
# Metronome exceptions
[docs]class MetronomeException(MusicTreeException):
pass
[docs]class MetronomeWrongBeatUnitError(MetronomeException):
pass
# Note exceptions
[docs]class NoteException(MusicTreeException):
pass
[docs]class NotationException(NoteException):
pass
[docs]class NoteHasNoParentChordError(NoteException):
pass
[docs]class NoteMidiHasNoParentChordError(NoteException):
pass
[docs]class NoteTypeError(NoteException):
pass
# Part exceptions
[docs]class PartException(MusicTreeException):
pass
# QuarterDuration exceptions
[docs]class QuarterDurationException(MusicTreeException):
pass
[docs]class QuarterDurationIsNotWritable(QuarterDurationException):
pass
# Rest exceptions
[docs]class RestException(MusicTreeException):
pass
[docs]class RestCannotSetMidiError(RestException):
pass
[docs]class RestWithDisplayStepHasNoDisplayOctave(RestException):
pass
[docs]class RestWithDisplayOctaveHasNoDisplayStep(RestException):
pass
# SimpleFormat exceptions
# Score exceptions
[docs]class ScoreException(MusicTreeException):
pass
[docs]class ScoreMultiMeasureRestError(ScoreException):
pass
[docs]class ScorePartIdIsNotUniqueError(ScoreException):
pass
[docs]class ScoreHasNoPartsError(ScoreException):
pass
# Staff exceptions
[docs]class StaffException(MusicTreeException):
pass
[docs]class StaffHasNoParentError(StaffException):
pass
# Time exceptions
[docs]class TimeException(MusicTreeException):
pass
[docs]class TimeActualSignaturesNotValidError(TimeException):
pass
# Tuplet exceptions
[docs]class TupletException(MusicTreeException):
pass
[docs]class TupletNormalTypeError(TupletException):
pass
# Voice exceptions
[docs]class VoiceException(MusicTreeException):
pass
[docs]class VoiceHasNoBeatsError(VoiceException):
pass
[docs]class VoiceHasNoParentError(VoiceException):
pass
[docs]class VoiceIsFullError(VoiceException):
pass