| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Musicology.Core
Documentation
module Musicology.Pitch
class (Num (TimeOf a), Ord (TimeOf a)) => Timed a Source #
Instances
| (Num t, Ord t) => Timed (Note p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (OnOff c t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (TimedEvent p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (NoteId p t i) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
class Timed a => HasTime a where Source #
Minimal complete definition
Nothing
Methods
onsetL :: Lens' a (TimeOf a) Source #
offsetL :: Lens' a (TimeOf a) Source #
onset :: a -> TimeOf a Source #
offset :: a -> TimeOf a Source #
Instances
class (Interval (IntervalOf a), ReTypeInterval a (IntervalOf a) ~ a) => Pitched a Source #
Instances
class Pitched a => HasInterval a where Source #
Minimal complete definition
Nothing
Methods
intervalL :: IntervalOf (ReTypeInterval a p2) ~ p2 => Lens a (ReTypeInterval a p2) (IntervalOf a) p2 Source #
interval :: a -> IntervalOf a Source #
setInterval :: IntervalOf (ReTypeInterval a p2) ~ p2 => p2 -> a -> ReTypeInterval a p2 Source #
Instances
| HasInterval c => HasInterval (OnOff c t) Source # | |
Defined in Musicology.Core Methods intervalL :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Lens (OnOff c t) (ReTypeInterval (OnOff c t) p2) (IntervalOf (OnOff c t)) p2 Source # interval :: OnOff c t -> IntervalOf (OnOff c t) Source # setInterval :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => p2 -> OnOff c t -> ReTypeInterval (OnOff c t) p2 Source # | |
class Pitched a => HasPitch a where Source #
Minimal complete definition
Nothing
Methods
pitchL :: IntervalOf (ReTypeInterval a p2) ~ p2 => Lens a (ReTypeInterval a p2) (Pitch (IntervalOf a)) (Pitch p2) Source #
pitch :: a -> Pitch (IntervalOf a) Source #
setPitch :: IntervalOf (ReTypeInterval a p2) ~ p2 => Pitch p2 -> a -> ReTypeInterval a p2 Source #
Instances
| Interval i => HasPitch (Pitch i) Source # | |
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (Pitch i) p2) ~ p2 => Lens (Pitch i) (ReTypeInterval (Pitch i) p2) (Pitch (IntervalOf (Pitch i))) (Pitch p2) Source # pitch :: Pitch i -> Pitch (IntervalOf (Pitch i)) Source # setPitch :: IntervalOf (ReTypeInterval (Pitch i) p2) ~ p2 => Pitch p2 -> Pitch i -> ReTypeInterval (Pitch i) p2 Source # | |
| Interval p => HasPitch (Note p t) Source # | |
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (Note p t) p2) ~ p2 => Lens (Note p t) (ReTypeInterval (Note p t) p2) (Pitch (IntervalOf (Note p t))) (Pitch p2) Source # pitch :: Note p t -> Pitch (IntervalOf (Note p t)) Source # setPitch :: IntervalOf (ReTypeInterval (Note p t) p2) ~ p2 => Pitch p2 -> Note p t -> ReTypeInterval (Note p t) p2 Source # | |
| HasPitch c => HasPitch (OnOff c t) Source # | |
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Lens (OnOff c t) (ReTypeInterval (OnOff c t) p2) (Pitch (IntervalOf (OnOff c t))) (Pitch p2) Source # pitch :: OnOff c t -> Pitch (IntervalOf (OnOff c t)) Source # setPitch :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Pitch p2 -> OnOff c t -> ReTypeInterval (OnOff c t) p2 Source # | |
| Interval p => HasPitch (NoteId p t i) Source # | |
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (NoteId p t i) p2) ~ p2 => Lens (NoteId p t i) (ReTypeInterval (NoteId p t i) p2) (Pitch (IntervalOf (NoteId p t i))) (Pitch p2) Source # pitch :: NoteId p t i -> Pitch (IntervalOf (NoteId p t i)) Source # setPitch :: IntervalOf (ReTypeInterval (NoteId p t i) p2) ~ p2 => Pitch p2 -> NoteId p t i -> ReTypeInterval (NoteId p t i) p2 Source # | |
class Identifiable i where Source #
data TimedEvent c t Source #
Constructors
| TimedEvent c t t |
Instances
| (NFData c, NFData t) => NFData (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Methods rnf :: TimedEvent c t -> () # | |||||
| Generic (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Associated Types
Methods from :: TimedEvent c t -> Rep (TimedEvent c t) x # to :: Rep (TimedEvent c t) x -> TimedEvent c t # | |||||
| (Read c, Read t) => Read (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Methods readsPrec :: Int -> ReadS (TimedEvent c t) # readList :: ReadS [TimedEvent c t] # readPrec :: ReadPrec (TimedEvent c t) # readListPrec :: ReadPrec [TimedEvent c t] # | |||||
| (Show c, Show t) => Show (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Methods showsPrec :: Int -> TimedEvent c t -> ShowS # show :: TimedEvent c t -> String # showList :: [TimedEvent c t] -> ShowS # | |||||
| (Eq c, Eq t) => Eq (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Methods (==) :: TimedEvent c t -> TimedEvent c t -> Bool # (/=) :: TimedEvent c t -> TimedEvent c t -> Bool # | |||||
| (Ord c, Ord t) => Ord (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Methods compare :: TimedEvent c t -> TimedEvent c t -> Ordering # (<) :: TimedEvent c t -> TimedEvent c t -> Bool # (<=) :: TimedEvent c t -> TimedEvent c t -> Bool # (>) :: TimedEvent c t -> TimedEvent c t -> Bool # (>=) :: TimedEvent c t -> TimedEvent c t -> Bool # max :: TimedEvent c t -> TimedEvent c t -> TimedEvent c t # min :: TimedEvent c t -> TimedEvent c t -> TimedEvent c t # | |||||
| (Hashable c, Hashable t) => Hashable (TimedEvent c t) Source # | |||||
Defined in Musicology.Core | |||||
| (Num t, Ord t) => HasTime (TimedEvent p t) Source # | |||||
Defined in Musicology.Core Methods onsetL :: Lens' (TimedEvent p t) (TimeOf (TimedEvent p t)) Source # offsetL :: Lens' (TimedEvent p t) (TimeOf (TimedEvent p t)) Source # onset :: TimedEvent p t -> TimeOf (TimedEvent p t) Source # offset :: TimedEvent p t -> TimeOf (TimedEvent p t) Source # setOnset :: TimeOf (TimedEvent p t) -> TimedEvent p t -> TimedEvent p t Source # setOffset :: TimeOf (TimedEvent p t) -> TimedEvent p t -> TimedEvent p t Source # | |||||
| Pitched c => Pitched (TimedEvent c t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (TimedEvent p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| type Rep (TimedEvent c t) Source # | |||||
Defined in Musicology.Core type Rep (TimedEvent c t) = D1 ('MetaData "TimedEvent" "Musicology.Core" "musicology-core-0.1.0.0-6oBpOL1WWBeK2htKlnTlKJ" 'False) (C1 ('MetaCons "TimedEvent" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 t) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 t)))) | |||||
| type IntervalOf (TimedEvent c t) Source # | |||||
Defined in Musicology.Core | |||||
| type TimeOf (TimedEvent p t) Source # | |||||
Defined in Musicology.Core | |||||
| type ReTypeInterval (TimedEvent c t) p2 Source # | |||||
Defined in Musicology.Core | |||||
timedEventContent :: TimedEvent c t -> c Source #
Instances
| (FromJSON p, FromJSON t) => FromJSON (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| (ToJSON p, ToJSON t) => ToJSON (Note p t) Source # | |||||
| (NFData p, NFData t) => NFData (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| Generic (Note p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Read (Pitch p), Read t) => Read (Note p t) Source # | |||||
| (Show (Pitch p), Show t) => Show (Note p t) Source # | |||||
| (Eq p, Eq t) => Eq (Note p t) Source # | |||||
| (Ord p, Ord t) => Ord (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| (Hashable p, Hashable t) => Hashable (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| Interval p => HasPitch (Note p t) Source # | |||||
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (Note p t) p2) ~ p2 => Lens (Note p t) (ReTypeInterval (Note p t) p2) (Pitch (IntervalOf (Note p t))) (Pitch p2) Source # pitch :: Note p t -> Pitch (IntervalOf (Note p t)) Source # setPitch :: IntervalOf (ReTypeInterval (Note p t) p2) ~ p2 => Pitch p2 -> Note p t -> ReTypeInterval (Note p t) p2 Source # | |||||
| (Num t, Ord t) => HasTime (Note p t) Source # | |||||
Defined in Musicology.Core Methods onsetL :: Lens' (Note p t) (TimeOf (Note p t)) Source # offsetL :: Lens' (Note p t) (TimeOf (Note p t)) Source # onset :: Note p t -> TimeOf (Note p t) Source # offset :: Note p t -> TimeOf (Note p t) Source # setOnset :: TimeOf (Note p t) -> Note p t -> Note p t Source # setOffset :: TimeOf (Note p t) -> Note p t -> Note p t Source # | |||||
| Interval p => Pitched (Note p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (Note p t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| type Rep (Note p t) Source # | |||||
Defined in Musicology.Core type Rep (Note p t) = D1 ('MetaData "Note" "Musicology.Core" "musicology-core-0.1.0.0-6oBpOL1WWBeK2htKlnTlKJ" 'False) (C1 ('MetaCons "Note" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Pitch p)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t)))) | |||||
| type IntervalOf (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| type TimeOf (Note p t) Source # | |||||
Defined in Musicology.Core | |||||
| type ReTypeInterval (Note p t) p2 Source # | |||||
Defined in Musicology.Core | |||||
Instances
| (FromJSON p, FromJSON t, FromJSON i) => FromJSON (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| (ToJSON p, ToJSON t, ToJSON i) => ToJSON (NoteId p t i) Source # | |||||
| (NFData p, NFData t, NFData i) => NFData (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| Generic (NoteId p t i) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Read (Pitch p), Read t, Read i) => Read (NoteId p t i) Source # | |||||
| (Show (Pitch p), Show t, Show i) => Show (NoteId p t i) Source # | |||||
| (Eq p, Eq t, Eq i) => Eq (NoteId p t i) Source # | |||||
| (Ord p, Ord t, Ord i) => Ord (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| (Hashable p, Hashable t, Hashable i) => Hashable (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| Interval p => HasPitch (NoteId p t i) Source # | |||||
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (NoteId p t i) p2) ~ p2 => Lens (NoteId p t i) (ReTypeInterval (NoteId p t i) p2) (Pitch (IntervalOf (NoteId p t i))) (Pitch p2) Source # pitch :: NoteId p t i -> Pitch (IntervalOf (NoteId p t i)) Source # setPitch :: IntervalOf (ReTypeInterval (NoteId p t i) p2) ~ p2 => Pitch p2 -> NoteId p t i -> ReTypeInterval (NoteId p t i) p2 Source # | |||||
| (Num t, Ord t) => HasTime (NoteId p t i) Source # | |||||
Defined in Musicology.Core Methods onsetL :: Lens' (NoteId p t i) (TimeOf (NoteId p t i)) Source # offsetL :: Lens' (NoteId p t i) (TimeOf (NoteId p t i)) Source # onset :: NoteId p t i -> TimeOf (NoteId p t i) Source # offset :: NoteId p t i -> TimeOf (NoteId p t i) Source # setOnset :: TimeOf (NoteId p t i) -> NoteId p t i -> NoteId p t i Source # setOffset :: TimeOf (NoteId p t i) -> NoteId p t i -> NoteId p t i Source # | |||||
| Identifiable (NoteId p t i) Source # | |||||
| Interval p => Pitched (NoteId p t i) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (NoteId p t i) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| type Rep (NoteId p t i) Source # | |||||
Defined in Musicology.Core type Rep (NoteId p t i) = D1 ('MetaData "NoteId" "Musicology.Core" "musicology-core-0.1.0.0-6oBpOL1WWBeK2htKlnTlKJ" 'False) (C1 ('MetaCons "NoteId" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Pitch p)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 i)))) | |||||
| type IdOf (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| type IntervalOf (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| type TimeOf (NoteId p t i) Source # | |||||
Defined in Musicology.Core | |||||
| type ReTypeInterval (NoteId p t i) p2 Source # | |||||
Defined in Musicology.Core | |||||
Instances
| (NFData c, NFData t) => NFData (OnOff c t) Source # | |||||
Defined in Musicology.Core | |||||
| Generic (OnOff c t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Read c, Read t) => Read (OnOff c t) Source # | |||||
| (Show c, Show t) => Show (OnOff c t) Source # | |||||
| (Eq c, Eq t) => Eq (OnOff c t) Source # | |||||
| (Ord c, Ord t) => Ord (OnOff c t) Source # | |||||
| (Hashable c, Hashable t) => Hashable (OnOff c t) Source # | |||||
Defined in Musicology.Core | |||||
| HasInterval c => HasInterval (OnOff c t) Source # | |||||
Defined in Musicology.Core Methods intervalL :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Lens (OnOff c t) (ReTypeInterval (OnOff c t) p2) (IntervalOf (OnOff c t)) p2 Source # interval :: OnOff c t -> IntervalOf (OnOff c t) Source # setInterval :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => p2 -> OnOff c t -> ReTypeInterval (OnOff c t) p2 Source # | |||||
| HasPitch c => HasPitch (OnOff c t) Source # | |||||
Defined in Musicology.Core Methods pitchL :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Lens (OnOff c t) (ReTypeInterval (OnOff c t) p2) (Pitch (IntervalOf (OnOff c t))) (Pitch p2) Source # pitch :: OnOff c t -> Pitch (IntervalOf (OnOff c t)) Source # setPitch :: IntervalOf (ReTypeInterval (OnOff c t) p2) ~ p2 => Pitch p2 -> OnOff c t -> ReTypeInterval (OnOff c t) p2 Source # | |||||
| (Num t, Ord t) => HasTime (OnOff p t) Source # | |||||
Defined in Musicology.Core Methods onsetL :: Lens' (OnOff p t) (TimeOf (OnOff p t)) Source # offsetL :: Lens' (OnOff p t) (TimeOf (OnOff p t)) Source # onset :: OnOff p t -> TimeOf (OnOff p t) Source # offset :: OnOff p t -> TimeOf (OnOff p t) Source # setOnset :: TimeOf (OnOff p t) -> OnOff p t -> OnOff p t Source # setOffset :: TimeOf (OnOff p t) -> OnOff p t -> OnOff p t Source # | |||||
| Pitched c => Pitched (OnOff c t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| (Num t, Ord t) => Timed (OnOff c t) Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| type Rep (OnOff c t) Source # | |||||
Defined in Musicology.Core type Rep (OnOff c t) = D1 ('MetaData "OnOff" "Musicology.Core" "musicology-core-0.1.0.0-6oBpOL1WWBeK2htKlnTlKJ" 'False) (C1 ('MetaCons "Onset" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t)) :+: C1 ('MetaCons "Offset" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t))) | |||||
| type IntervalOf (OnOff c t) Source # | |||||
Defined in Musicology.Core | |||||
| type TimeOf (OnOff c t) Source # | |||||
Defined in Musicology.Core | |||||
| type ReTypeInterval (OnOff c t) p2 Source # | |||||
Defined in Musicology.Core | |||||
Instances
| NFData Tied Source # | |||||
Defined in Musicology.Core | |||||
| Generic Tied Source # | |||||
Defined in Musicology.Core Associated Types
| |||||
| Show Tied Source # | |||||
| Eq Tied Source # | |||||
| Ord Tied Source # | |||||
| Hashable Tied Source # | |||||
Defined in Musicology.Core | |||||
| type Rep Tied Source # | |||||
Defined in Musicology.Core type Rep Tied = D1 ('MetaData "Tied" "Musicology.Core" "musicology-core-0.1.0.0-6oBpOL1WWBeK2htKlnTlKJ" 'False) ((C1 ('MetaCons "Single" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Starts" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Continues" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Stops" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
Instances
| NFData LeftTied Source # | |
Defined in Musicology.Core | |
| Generic LeftTied Source # | |
Defined in Musicology.Core | |
| Show LeftTied Source # | |
| Eq LeftTied Source # | |
| Ord LeftTied Source # | |
Defined in Musicology.Core | |
| Hashable LeftTied Source # | |
Defined in Musicology.Core | |
| type Rep LeftTied Source # | |
Instances
| NFData RightTied Source # | |
Defined in Musicology.Core | |
| Generic RightTied Source # | |
Defined in Musicology.Core | |
| Show RightTied Source # | |
| Eq RightTied Source # | |
| Ord RightTied Source # | |
| Hashable RightTied Source # | |
Defined in Musicology.Core | |
| type Rep RightTied Source # | |