Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- newtype Channel = Channel {}
- newtype ChannelCount = ChannelCount {}
- newtype Note = Note {}
- newtype Velocity = Velocity {}
- newtype ControlNum = ControlNum {}
- newtype ControlVal = ControlVal {}
- newtype Pressure = Pressure {}
- newtype ProgramNum = ProgramNum {}
- newtype PitchBend = PitchBend {}
- newtype Song = Song {}
- newtype Position = Position {}
- newtype ShortManf = ShortManf {}
- newtype LongManf = LongManf {
- unLongManf :: Word16
- data Manf
- data QuarterTimeUnit
- data QuarterTime = QuarterTime {
- qtUnit :: !QuarterTimeUnit
- qtValue :: !Word4
- data ChanStatus = ChanStatus !Channel !ChanStatusType
- data RtStatus
- data CommonStatus
- data LiveStatus
- data RecStatus
- data ShortStatus
- data ChanStatusType
- data ChanVoiceData
- data ChanModeData
- data ChanData
- data UnivSysEx = UnivSysEx {
- useSubId :: !Word8
- usePayload :: !ShortByteString
- data ManfSysEx = ManfSysEx {
- mseManf :: !Manf
- msePayload :: !ShortByteString
- data SysExData
- data CommonData
- data LiveMsg
- newtype MetaString = MetaString {}
- data MetaData = MetaData {
- mdType :: !Word8
- mdBody :: !MetaString
- data RecMsg
- data ShortMsg
- msgNoteOn :: HasChanData s c => Channel -> Note -> Velocity -> c
- msgNoteOff :: Channel -> Note -> LiveMsg
- data Event = Event {}
- newtype Track = Track {}
- data MidFileType
- data MidFile = MidFile {}
- newtype SysExDump = SysExDump {}
Documentation
Instances
Bounded Channel Source # | |
Enum Channel Source # | |
Num Channel Source # | |
Integral Channel Source # | |
Defined in Dahdit.Midi.Midi | |
Real Channel Source # | |
Defined in Dahdit.Midi.Midi toRational :: Channel -> Rational # | |
Show Channel Source # | |
Binary Channel Source # | |
StaticByteSized Channel Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Channel :: Nat # staticByteSize :: Proxy Channel -> ByteCount # | |
Eq Channel Source # | |
Ord Channel Source # | |
Hashable Channel Source # | |
Defined in Dahdit.Midi.Midi | |
Newtype Channel MidiWord7 Source # | |
type StaticSize Channel Source # | |
Defined in Dahdit.Midi.Midi |
newtype ChannelCount Source #
Instances
Instances
Enum Note Source # | |
Num Note Source # | |
Integral Note Source # | |
Real Note Source # | |
Defined in Dahdit.Midi.Midi toRational :: Note -> Rational # | |
Show Note Source # | |
Binary Note Source # | |
StaticByteSized Note Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Note :: Nat # staticByteSize :: Proxy Note -> ByteCount # | |
Eq Note Source # | |
Ord Note Source # | |
Hashable Note Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize Note Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Enum Velocity Source # | |
Num Velocity Source # | |
Integral Velocity Source # | |
Defined in Dahdit.Midi.Midi | |
Real Velocity Source # | |
Defined in Dahdit.Midi.Midi toRational :: Velocity -> Rational # | |
Show Velocity Source # | |
Binary Velocity Source # | |
StaticByteSized Velocity Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Velocity :: Nat # staticByteSize :: Proxy Velocity -> ByteCount # | |
Eq Velocity Source # | |
Ord Velocity Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable Velocity Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize Velocity Source # | |
Defined in Dahdit.Midi.Midi |
newtype ControlNum Source #
Instances
newtype ControlVal Source #
Instances
Instances
Enum Pressure Source # | |
Num Pressure Source # | |
Integral Pressure Source # | |
Defined in Dahdit.Midi.Midi | |
Real Pressure Source # | |
Defined in Dahdit.Midi.Midi toRational :: Pressure -> Rational # | |
Show Pressure Source # | |
Binary Pressure Source # | |
StaticByteSized Pressure Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Pressure :: Nat # staticByteSize :: Proxy Pressure -> ByteCount # | |
Eq Pressure Source # | |
Ord Pressure Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable Pressure Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize Pressure Source # | |
Defined in Dahdit.Midi.Midi |
newtype ProgramNum Source #
Instances
Instances
Enum PitchBend Source # | |
Defined in Dahdit.Midi.Midi succ :: PitchBend -> PitchBend # pred :: PitchBend -> PitchBend # fromEnum :: PitchBend -> Int # enumFrom :: PitchBend -> [PitchBend] # enumFromThen :: PitchBend -> PitchBend -> [PitchBend] # enumFromTo :: PitchBend -> PitchBend -> [PitchBend] # enumFromThenTo :: PitchBend -> PitchBend -> PitchBend -> [PitchBend] # | |
Num PitchBend Source # | |
Integral PitchBend Source # | |
Defined in Dahdit.Midi.Midi | |
Real PitchBend Source # | |
Defined in Dahdit.Midi.Midi toRational :: PitchBend -> Rational # | |
Show PitchBend Source # | |
Binary PitchBend Source # | |
StaticByteSized PitchBend Source # | |
Defined in Dahdit.Midi.Midi type StaticSize PitchBend :: Nat # staticByteSize :: Proxy PitchBend -> ByteCount # | |
Eq PitchBend Source # | |
Ord PitchBend Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable PitchBend Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize PitchBend Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Enum Song Source # | |
Num Song Source # | |
Integral Song Source # | |
Real Song Source # | |
Defined in Dahdit.Midi.Midi toRational :: Song -> Rational # | |
Show Song Source # | |
Binary Song Source # | |
StaticByteSized Song Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Song :: Nat # staticByteSize :: Proxy Song -> ByteCount # | |
Eq Song Source # | |
Ord Song Source # | |
Hashable Song Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize Song Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Enum Position Source # | |
Num Position Source # | |
Integral Position Source # | |
Defined in Dahdit.Midi.Midi | |
Real Position Source # | |
Defined in Dahdit.Midi.Midi toRational :: Position -> Rational # | |
Show Position Source # | |
Binary Position Source # | |
StaticByteSized Position Source # | |
Defined in Dahdit.Midi.Midi type StaticSize Position :: Nat # staticByteSize :: Proxy Position -> ByteCount # | |
Eq Position Source # | |
Ord Position Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable Position Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize Position Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Enum ShortManf Source # | |
Defined in Dahdit.Midi.Midi succ :: ShortManf -> ShortManf # pred :: ShortManf -> ShortManf # fromEnum :: ShortManf -> Int # enumFrom :: ShortManf -> [ShortManf] # enumFromThen :: ShortManf -> ShortManf -> [ShortManf] # enumFromTo :: ShortManf -> ShortManf -> [ShortManf] # enumFromThenTo :: ShortManf -> ShortManf -> ShortManf -> [ShortManf] # | |
Num ShortManf Source # | |
Integral ShortManf Source # | |
Defined in Dahdit.Midi.Midi | |
Real ShortManf Source # | |
Defined in Dahdit.Midi.Midi toRational :: ShortManf -> Rational # | |
Show ShortManf Source # | |
Binary ShortManf Source # | |
StaticByteSized ShortManf Source # | |
Defined in Dahdit.Midi.Midi type StaticSize ShortManf :: Nat # staticByteSize :: Proxy ShortManf -> ByteCount # | |
Eq ShortManf Source # | |
Ord ShortManf Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable ShortManf Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize ShortManf Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Enum LongManf Source # | |
Num LongManf Source # | |
Integral LongManf Source # | |
Defined in Dahdit.Midi.Midi | |
Real LongManf Source # | |
Defined in Dahdit.Midi.Midi toRational :: LongManf -> Rational # | |
Show LongManf Source # | |
Binary LongManf Source # | |
StaticByteSized LongManf Source # | |
Defined in Dahdit.Midi.Midi type StaticSize LongManf :: Nat # staticByteSize :: Proxy LongManf -> ByteCount # | |
Eq LongManf Source # | |
Ord LongManf Source # | |
Defined in Dahdit.Midi.Midi | |
Hashable LongManf Source # | |
Defined in Dahdit.Midi.Midi | |
type StaticSize LongManf Source # | |
Defined in Dahdit.Midi.Midi |
Instances
Generic Manf Source # | |
Show Manf Source # | |
Binary Manf Source # | |
Eq Manf Source # | |
Ord Manf Source # | |
type Rep Manf Source # | |
Defined in Dahdit.Midi.Midi type Rep Manf = D1 ('MetaData "Manf" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "ManfShort" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortManf)) :+: C1 ('MetaCons "ManfLong" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 LongManf))) |
data QuarterTimeUnit Source #
QTUFramesLow | |
QTUFramesHigh | |
QTUSecondsLow | |
QTUSecondsHigh | |
QTUMinutesLow | |
QTUMinutesHigh | |
QTUHoursLow | |
QTUHoursHigh |
Instances
data QuarterTime Source #
QuarterTime | |
|
Instances
data ChanStatus Source #
Instances
RtStatusTimingClock | |
RtStatusStart | |
RtStatusContinue | |
RtStatusStop | |
RtStatusActiveSensing | |
RtStatusSystemReset |
Instances
Bounded RtStatus Source # | |
Enum RtStatus Source # | |
Generic RtStatus Source # | |
Show RtStatus Source # | |
Eq RtStatus Source # | |
Ord RtStatus Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep RtStatus Source # | |
Defined in Dahdit.Midi.Midi type Rep RtStatus = D1 ('MetaData "RtStatus" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) ((C1 ('MetaCons "RtStatusTimingClock" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RtStatusStart" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RtStatusContinue" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "RtStatusStop" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RtStatusActiveSensing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RtStatusSystemReset" 'PrefixI 'False) (U1 :: Type -> Type)))) |
data CommonStatus Source #
Instances
data LiveStatus Source #
LiveStatusChan !ChanStatus | |
LiveStatusSysEx | |
LiveStatusSysCommon !CommonStatus | |
LiveStatusSysRt !RtStatus |
Instances
Instances
Generic RecStatus Source # | |
Show RecStatus Source # | |
Binary RecStatus Source # | |
StaticByteSized RecStatus Source # | |
Defined in Dahdit.Midi.Midi type StaticSize RecStatus :: Nat # staticByteSize :: Proxy RecStatus -> ByteCount # | |
Eq RecStatus Source # | |
Ord RecStatus Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep RecStatus Source # | |
Defined in Dahdit.Midi.Midi type Rep RecStatus = D1 ('MetaData "RecStatus" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "RecStatusChan" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChanStatus)) :+: (C1 ('MetaCons "RecStatusSysEx" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RecStatusMeta" 'PrefixI 'False) (U1 :: Type -> Type))) | |
type StaticSize RecStatus Source # | |
Defined in Dahdit.Midi.Midi |
data ShortStatus Source #
Instances
data ChanStatusType Source #
ChanStatusNoteOff | |
ChanStatusNoteOn | |
ChanStatusKeyAftertouch | |
ChanStatusControlChange | |
ChanStatusProgramChange | |
ChanStatusChanAftertouch | |
ChanStatusPitchBend |
Instances
data ChanVoiceData Source #
Instances
Show ChanVoiceData Source # | |
Defined in Dahdit.Midi.Midi showsPrec :: Int -> ChanVoiceData -> ShowS # show :: ChanVoiceData -> String # showList :: [ChanVoiceData] -> ShowS # | |
Eq ChanVoiceData Source # | |
Defined in Dahdit.Midi.Midi (==) :: ChanVoiceData -> ChanVoiceData -> Bool # (/=) :: ChanVoiceData -> ChanVoiceData -> Bool # | |
Ord ChanVoiceData Source # | |
Defined in Dahdit.Midi.Midi compare :: ChanVoiceData -> ChanVoiceData -> Ordering # (<) :: ChanVoiceData -> ChanVoiceData -> Bool # (<=) :: ChanVoiceData -> ChanVoiceData -> Bool # (>) :: ChanVoiceData -> ChanVoiceData -> Bool # (>=) :: ChanVoiceData -> ChanVoiceData -> Bool # max :: ChanVoiceData -> ChanVoiceData -> ChanVoiceData # min :: ChanVoiceData -> ChanVoiceData -> ChanVoiceData # |
data ChanModeData Source #
ChanModeAllSoundOff | |
ChanModeResetAllControllers | |
ChanModeLocalControlOff | |
ChanModeLocalControlOn | |
ChanModeAllNotesOff | |
ChanModeOmniOff | |
ChanModeOmniOn | |
ChanModeMonoOn !ChannelCount | |
ChanModeMonoOff |
Instances
Instances
Generic ChanData Source # | |
Show ChanData Source # | |
Eq ChanData Source # | |
Ord ChanData Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep ChanData Source # | |
Defined in Dahdit.Midi.Midi type Rep ChanData = D1 ('MetaData "ChanData" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "ChanDataVoice" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChanVoiceData)) :+: C1 ('MetaCons "ChanDataMode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChanModeData))) |
UnivSysEx | |
|
ManfSysEx | |
|
Instances
Generic SysExData Source # | |
Show SysExData Source # | |
Binary SysExData Source # | |
Eq SysExData Source # | |
Ord SysExData Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep SysExData Source # | |
Defined in Dahdit.Midi.Midi type Rep SysExData = D1 ('MetaData "SysExData" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "SysExDataUniv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnivSysEx)) :+: C1 ('MetaCons "SysExDataManf" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ManfSysEx))) |
data CommonData Source #
CommonDataTimeFrame !QuarterTime | |
CommonDataSongPointer !Position | |
CommonDataSongSelect !Song | |
CommonDataTuneRequest |
Instances
LiveMsgChan !Channel !ChanData | |
LiveMsgSysEx !SysExData | |
LiveMsgSysCommon !CommonData | |
LiveMsgSysRt !RtStatus |
Instances
newtype MetaString Source #
A byte string prefixed by a single-byte length
Instances
IsString MetaString Source # | |
Defined in Dahdit.Midi.Midi fromString :: String -> MetaString # | |
Show MetaString Source # | |
Defined in Dahdit.Midi.Midi showsPrec :: Int -> MetaString -> ShowS # show :: MetaString -> String # showList :: [MetaString] -> ShowS # | |
Binary MetaString Source # | |
Defined in Dahdit.Midi.Midi | |
Eq MetaString Source # | |
Defined in Dahdit.Midi.Midi (==) :: MetaString -> MetaString -> Bool # (/=) :: MetaString -> MetaString -> Bool # | |
Ord MetaString Source # | |
Defined in Dahdit.Midi.Midi compare :: MetaString -> MetaString -> Ordering # (<) :: MetaString -> MetaString -> Bool # (<=) :: MetaString -> MetaString -> Bool # (>) :: MetaString -> MetaString -> Bool # (>=) :: MetaString -> MetaString -> Bool # max :: MetaString -> MetaString -> MetaString # min :: MetaString -> MetaString -> MetaString # |
MetaData | |
|
Instances
Generic MetaData Source # | |
Show MetaData Source # | |
Binary MetaData Source # | |
Eq MetaData Source # | |
Ord MetaData Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep MetaData Source # | |
Defined in Dahdit.Midi.Midi type Rep MetaData = D1 ('MetaData "MetaData" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "MetaData" 'PrefixI 'True) (S1 ('MetaSel ('Just "mdType") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word8) :*: S1 ('MetaSel ('Just "mdBody") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MetaString))) |
Instances
Generic RecMsg Source # | |
Show RecMsg Source # | |
Binary RecMsg Source # | |
Eq RecMsg Source # | |
Ord RecMsg Source # | |
type Rep RecMsg Source # | |
Defined in Dahdit.Midi.Midi type Rep RecMsg = D1 ('MetaData "RecMsg" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "RecMsgChan" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Channel) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChanData)) :+: (C1 ('MetaCons "RecMsgSysEx" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SysExData)) :+: C1 ('MetaCons "RecMsgMeta" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MetaData)))) |
Instances
Generic ShortMsg Source # | |
Show ShortMsg Source # | |
Binary ShortMsg Source # | |
Eq ShortMsg Source # | |
Ord ShortMsg Source # | |
Defined in Dahdit.Midi.Midi | |
type Rep ShortMsg Source # | |
Defined in Dahdit.Midi.Midi type Rep ShortMsg = D1 ('MetaData "ShortMsg" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "ShortMsgChan" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Channel) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChanData)) :+: (C1 ('MetaCons "ShortMsgSysCommon" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CommonData)) :+: C1 ('MetaCons "ShortMsgSysRt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RtStatus)))) |
NOTE: Time delta is in number of ticks since previous message
Instances
Generic Event Source # | |
Show Event Source # | |
Eq Event Source # | |
Ord Event Source # | |
type Rep Event Source # | |
Defined in Dahdit.Midi.Midi type Rep Event = D1 ('MetaData "Event" "Dahdit.Midi.Midi" "dahdit-midi-0.5.5-HLhlRmHnmQsIINFCiIJAbf" 'False) (C1 ('MetaCons "Event" 'PrefixI 'True) (S1 ('MetaSel ('Just "evDelta") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 VarWord) :*: S1 ('MetaSel ('Just "evMsg") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RecMsg))) |
data MidFileType Source #
Instances
NOTE: Ticks could also be SMTPE-related, but we don't support that here