| Copyright | (c) Hans Hoglund 2012 |
|---|---|
| License | BSD-style |
| Maintainer | hans@hanshoglund.se |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Data.Music.MusicXml.Score
Description
- data Score
- = Partwise ScoreAttrs ScoreHeader [(PartAttrs, [(MeasureAttrs, Music)])]
- | Timewise ScoreAttrs ScoreHeader [(MeasureAttrs, [(PartAttrs, Music)])]
- data ScoreHeader = ScoreHeader (Maybe String) (Maybe String) (Maybe Identification) PartList
- data Identification = Identification [Creator]
- data Creator = Creator String String
- data Defaults = Defaults
- data ScoreAttrs = ScoreAttrs [Int]
- data PartAttrs = PartAttrs String
- data MeasureAttrs = MeasureAttrs Int
- newtype PartList = PartList {
- getPartList :: [PartListElem]
- data PartListElem
- data GroupSymbol
- data GroupBarlines
- newtype Music = Music {}
- data MusicElem
- data Attributes
- = Divisions Divs
- | Key Fifths Mode
- | Time TimeSignature
- | Staves Natural
- | PartSymbol
- | Instruments Natural
- | Clef ClefSign Line
- | StaffDetails
- | Transpose
- | Directive
- | MeasureStyle
- data TimeSignature
- data ClefSign
- data Note
- data FullNote
- type IsChord = Bool
- noChord :: IsChord
- noTies :: [Tie]
- type Tie = StartStop
- data NoteProps = NoteProps {
- noteInstrument :: Maybe String
- noteVoice :: Maybe Natural
- noteType :: Maybe NoteType
- noteDots :: Natural
- noteAccidental :: Maybe (Accidental, Bool, Bool)
- noteTimeMod :: Maybe (Natural, Natural)
- noteStem :: Maybe StemDirection
- noteNoteHead :: Maybe (NoteHead, Bool, Bool)
- noteNoteHeadText :: Maybe String
- noteStaff :: Maybe Natural
- noteBeam :: Maybe (Level, BeamType)
- noteNotations :: [Notation]
- noteLyrics :: [Lyric]
- class HasNoteProps a where
- modifyNoteProps :: (NoteProps -> NoteProps) -> a -> a
- data Notation
- = Tied StartStopContinue
- | Slur Level StartStopContinue
- | Tuplet Level StartStopContinue
- | Glissando Level StartStopContinue LineType (Maybe String)
- | Slide Level StartStopContinue LineType (Maybe String)
- | Ornaments [(Ornament, [Accidental])]
- | Technical [Technical]
- | Articulations [Articulation]
- | DynamicNotation Dynamics
- | Fermata FermataSign
- | Arpeggiate
- | NonArpeggiate
- | AccidentalMark Accidental
- | OtherNotation String
- data FermataSign
- data Articulation
- data Ornament
- = TrillMark
- | Turn
- | DelayedTurn
- | InvertedTurn
- | DelayedInvertedTurn
- | VerticalTurn
- | Shake
- | WavyLine
- | Mordent
- | InvertedMordent
- | Schleifer
- | Tremolo Natural
- | OtherOrnament String
- data Technical
- = UpBow
- | DownBow
- | Harmonic
- | OpenString
- | ThumbPosition
- | Fingering
- | Pluck
- | DoubleTongue
- | TripleTongue
- | Stopped
- | SnapPizzicato
- | Fret
- | String
- | HammerOn
- | PullOff
- | Bend
- | Tap
- | Heel
- | Toe
- | Fingernails
- | Hole
- | Arrow
- | Handbell
- | OtherTechnical String
- data Direction
- = Rehearsal String
- | Segno
- | Words String
- | Coda
- | Crescendo StartStop
- | Diminuendo StartStop
- | Dynamics Dynamics
- | Dashes Level StartStop
- | Bracket
- | Pedal StartStopChange
- | Metronome NoteVal Bool Tempo
- | OctaveShift
- | HarpPedals
- | Damp
- | DampAll
- | EyeGlasses
- | StringMute
- | Scordatura
- | Image
- | PrincipalVoice
- | AccordionRegistration
- | Percussion
- | OtherDirection String
- data Lyric = Lyric
- type Pitch = (PitchClass, Maybe Semitones, Octaves)
- type DisplayPitch = (PitchClass, Octaves)
- data PitchClass
- newtype Semitones = Semitones {}
- noSemitones :: Maybe Semitones
- newtype Octaves = Octaves {
- getOctaves :: Int
- newtype Fifths = Fifths {}
- newtype Line = Line {}
- data Mode
- data Accidental
- = DoubleFlat
- | Flat
- | Natural
- | Sharp
- | DoubleSharp
- type Duration = Divs
- type NoteType = (NoteVal, Maybe NoteSize)
- newtype Divs = Divs {}
- newtype NoteVal = NoteVal {}
- data NoteSize
- newtype Beat = Beat {}
- newtype BeatType = BeatType {
- getBeatType :: Int
- data Dynamics
- data StemDirection
- = StemDown
- | StemUp
- | StemNone
- | StemDouble
- data NoteHead
- = SlashNoteHead
- | TriangleNoteHead
- | DiamondNoteHead
- | SquareNoteHead
- | CrossNoteHead
- | XNoteHead
- | CircleXNoteHead
- | InvertedTriangleNoteHead
- | ArrowDownNoteHead
- | ArrowUpNoteHead
- | SlashedNoteHead
- | BackSlashedNoteHead
- | NormalNoteHead
- | ClusterNoteHead
- | CircleDotNoteHead
- | LeftTriangleNoteHead
- | RectangleNoteHead
- | NoNoteHead
- data LineType
- newtype Level = Level {
- getLevel :: Max8
- data BeamType
- type StartStop = StartStopContinueChange
- type StartStopChange = StartStopContinueChange
- type StartStopContinue = StartStopContinueChange
- data StartStopContinueChange
Score
Constructors
| Partwise ScoreAttrs ScoreHeader [(PartAttrs, [(MeasureAttrs, Music)])] | |
| Timewise ScoreAttrs ScoreHeader [(MeasureAttrs, [(PartAttrs, Music)])] |
Instances
data ScoreHeader Source
Constructors
| ScoreHeader (Maybe String) (Maybe String) (Maybe Identification) PartList |
Instances
| WriteMusicXml ScoreHeader | |
| Default ScoreHeader |
data MeasureAttrs Source
Constructors
| MeasureAttrs Int |
Part list
Constructors
| PartList | |
Fields
| |
data PartListElem Source
Constructors
| Part String String (Maybe String) (Maybe String) (Maybe String) | |
| Group Level StartStop String (Maybe String) (Maybe GroupSymbol) (Maybe GroupBarlines) Bool |
Instances
data GroupSymbol Source
Constructors
| GroupBrace | |
| GroupLine | |
| GroupBracket | |
| GroupSquare | |
| NoGroupSymbol |
data GroupBarlines Source
Constructors
| GroupBarLines | |
| GroupNoBarLines | |
| GroupMensurstrich |
Music
Constructors
Instances
Attributes
data Attributes Source
Constructors
| Divisions Divs | |
| Key Fifths Mode | |
| Time TimeSignature | |
| Staves Natural | |
| PartSymbol | |
| Instruments Natural | |
| Clef ClefSign Line | |
| StaffDetails | |
| Transpose | |
| Directive | |
| MeasureStyle |
Instances
data TimeSignature Source
Constructors
| CommonTime | |
| CutTime | |
| DivTime Beat BeatType |
Notes
Constructors
| Note FullNote Duration [Tie] NoteProps | |
| CueNote FullNote Duration NoteProps | |
| GraceNote FullNote [Tie] NoteProps |
Instances
| WriteMusicXml Note | |
| Default Note | |
| HasNoteProps Note |
Constructors
| Pitched IsChord Pitch | |
| Unpitched IsChord (Maybe DisplayPitch) | |
| Rest IsChord (Maybe DisplayPitch) |
Instances
| WriteMusicXml FullNote | |
| Default FullNote |
Constructors
| NoteProps | |
Fields
| |
Instances
| WriteMusicXml NoteProps | |
| Default NoteProps |
class HasNoteProps a where Source
Methods
modifyNoteProps :: (NoteProps -> NoteProps) -> a -> a Source
Instances
Notations
Constructors
Instances
data FermataSign Source
Constructors
| NormalFermata | |
| AngledFermata | |
| SquaredFermata |
data Articulation Source
Constructors
| Accent | |
| StrongAccent | |
| Staccato | |
| Tenuto | |
| DetachedLegato | |
| Staccatissimo | |
| Spiccato | |
| Scoop | |
| Plop | |
| Doit | |
| Falloff | |
| BreathMark | |
| Caesura | |
| Stress | |
| Unstress | |
| OtherArticulation |
Instances
Constructors
| TrillMark | |
| Turn | |
| DelayedTurn | |
| InvertedTurn | |
| DelayedInvertedTurn | |
| VerticalTurn | |
| Shake | |
| WavyLine | |
| Mordent | |
| InvertedMordent | |
| Schleifer | |
| Tremolo Natural | |
| OtherOrnament String |
Instances
Constructors
Instances
Directions
Constructors
Instances
Lyrics
Basic types
Pitch
type DisplayPitch = (PitchClass, Octaves) Source
data PitchClass Source
Instances
| Enum PitchClass | |
| Eq PitchClass | |
| Ord PitchClass | |
| Show PitchClass | |
| IsPitch DisplayPitch | |
| IsPitch Pitch |
Constructors
| Semitones | Semitones, i.e 100 cent |
Fields | |
Constructors
| Octaves | Octaves, i.e. 1200 cent |
Fields
| |
Constructors
| Fifths | Number of fifths upwards relative to C (i.e. F is -1, G is 1) |
Time
Constructors
| NoteVal | Notated time in fractions, in |
Fields | |
Constructors
| BeatType | Time denominator |
Fields
| |
Dynamics
Misc
data StemDirection Source
Constructors
| StemDown | |
| StemUp | |
| StemNone | |
| StemDouble |
Constructors
Constructors
| BeginBeam | |
| ContinueBeam | |
| EndBeam | |
| ForwardHook | |
| BackwardHook |