music-preludes-1.6: src/Music/Prelude/Piano.hs
{-# LANGUAGE
GeneralizedNewtypeDeriving,
DeriveDataTypeable #-}
------------------------------------------------------------------------------------
-- |
-- Copyright : (c) Hans Hoglund 2012
--
-- License : BSD-style
--
-- Maintainer : hans@hanshoglund.se
-- Stability : experimental
-- Portability : non-portable (TF,GNTD)
--
-- A basic music representation for piano.
--
-------------------------------------------------------------------------------------
module Music.Prelude.Piano (
module Music.Score,
PianoPart,
Note,
asScore
) where
import Music.Pitch
import Music.Score hiding (Pitch, Interval, Note)
import Music.Dynamics.Literal --TODO
import Data.Typeable
import Data.AffineSpace.Point
import qualified Music.Score as Score
import qualified Music.Lilypond as Lilypond
import qualified Music.MusicXml.Simple as Xml
asScore :: Score Note -> Score Note
asScore = id
data PianoPart
= Pno
deriving (Eq, Ord, Enum)
instance Show PianoPart where
show Pno = "Piano"
type Note = (PartT PianoPart (TieT
(TremoloT (HarmonicT (SlideT
(DynamicT (ArticulationT (TextT Integer))))))))