Source code for song_match.song.songs.mary_had_a_little_lamb

"""Module containing :class:`~song_match.song.songs.mary_had_a_little_lamb.MaryHadALittleLamb`."""

from typing import List

from cozmo.lights import Light

from song_match.cube.lights import BLUE_LIGHT
from song_match.cube.lights import CYAN_LIGHT
from song_match.cube.lights import PINK_LIGHT
from song_match.song import Song
from song_match.song.note import HALF_NOTE
from song_match.song.note import Note
from song_match.song.note import QUARTER_NOTE

MEDIUM = 8
LONG = 16


[docs]class MaryHadALittleLamb(Song): """Mary Had a Little Lamb""" @property def _notes(self) -> List[Note]: return [ Note('C4'), Note('D4'), Note('E4') ] @property def _sequence(self) -> List[Note]: c_quarter = Note('C4', QUARTER_NOTE) d_quarter = Note('D4', QUARTER_NOTE) e_quarter = Note('E4', QUARTER_NOTE) d_half = Note('D4', HALF_NOTE) e_half = Note('E4', HALF_NOTE) return [ e_quarter, d_quarter, c_quarter, d_quarter, e_quarter, e_quarter, e_half, d_quarter, d_quarter, d_half, e_quarter, e_quarter, e_half, e_quarter, d_quarter, c_quarter, d_quarter, e_quarter, e_quarter, e_half, d_quarter, d_quarter, e_quarter, d_quarter, c_quarter, ] @property def _cube_lights(self) -> List[Light]: return [ PINK_LIGHT, BLUE_LIGHT, CYAN_LIGHT ] @property def _difficulty_markers(self) -> List[int]: return [ MEDIUM, LONG ]