Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Basic types and functions for dealing with Jammit song packages.
Synopsis
- data Instrument
- data Part
- data AudioPart
- data SheetPart
- titleToPart :: String -> Maybe Part
- titleToAudioPart :: String -> Instrument -> Maybe AudioPart
- partToInstrument :: Part -> Instrument
- audioPartToInstrument :: AudioPart -> Instrument
- data Info = Info {
- album :: String
- artist :: String
- bpm :: String
- copyright :: String
- countInBeats :: Integer
- courtesyOf :: String
- demo :: Bool
- explicit :: Bool
- genre :: String
- instrument :: Instrument
- publishedBy :: String
- skillLevel :: SkillLevel
- sku :: String
- slow :: Double
- title :: String
- version :: Integer
- writtenBy :: String
- loadInfo :: FilePath -> IO (Maybe Info)
- data Track = Track {}
- loadTracks :: FilePath -> IO (Maybe [Track])
- data SkillLevel
- = OneSkill Integer
- | ManySkills [(Instrument, Integer)]
- findJammitDir :: IO (Maybe FilePath)
- songSubdirs :: FilePath -> IO [FilePath]
- data Beat = Beat {
- isDownbeat :: Bool
- isGhostBeat :: Bool
- position :: Double
- loadBeats :: FilePath -> IO (Maybe [Beat])
- loadGhost :: FilePath -> IO (Maybe [Beat])
- data Section = Section {}
- loadSections :: FilePath -> IO (Maybe [Section])
- findNotation :: Track -> FilePath -> IO [FilePath]
- findTab :: Track -> FilePath -> IO [FilePath]
- findAudio :: Track -> FilePath -> IO (Maybe FilePath)
- sheetWidth :: Num a => a
- sheetHeight :: Num a => a
Documentation
data Instrument Source #
The Enum
instance corresponds to the number used in the instrument
property, and the names (used by Show
and Read
) are capitalized versions
of those used in the skillLevel
property.
Instances
PartGuitar1 | Used for both Guitar and Guitar 1 |
PartGuitar2 | |
PartBass1 | Used for both Bass and Bass 1 |
PartBass2 | Rarely used. Seen in "The Fish (Schindleria Praematurus)", "I've Seen All Good People", "Perpetual Change" |
PartDrums1 | Used for both Drums and Drums 1 |
PartDrums2 | Rarely used. Seen in "Space Truckin'" |
PartKeys1 | Used for both Keys and Keys 1 |
PartKeys2 | |
PartPiano | Rarely used. Seen in "The Answer Lies Within" and "Wait for Sleep" |
PartSynth | Rarely used. Seen in "Wait for Sleep" |
PartOrgan | Rarely used. Seen in "Smoke on the Water" |
PartVocal | |
PartBVocals |
Only Part | An audio file for a single notated part. |
Without Instrument | The backing track for an instrument package. |
Notation Part | For any instrument, the notation sheet music. |
Tab Part | For guitar and bass, the tablature sheet music. |
titleToAudioPart :: String -> Instrument -> Maybe AudioPart Source #
partToInstrument :: Part -> Instrument Source #
Info | |
|
data SkillLevel Source #
Instances
Eq SkillLevel Source # | |
Defined in Sound.Jammit.Base (==) :: SkillLevel -> SkillLevel -> Bool # (/=) :: SkillLevel -> SkillLevel -> Bool # | |
Ord SkillLevel Source # | |
Defined in Sound.Jammit.Base compare :: SkillLevel -> SkillLevel -> Ordering # (<) :: SkillLevel -> SkillLevel -> Bool # (<=) :: SkillLevel -> SkillLevel -> Bool # (>) :: SkillLevel -> SkillLevel -> Bool # (>=) :: SkillLevel -> SkillLevel -> Bool # max :: SkillLevel -> SkillLevel -> SkillLevel # min :: SkillLevel -> SkillLevel -> SkillLevel # | |
Read SkillLevel Source # | |
Defined in Sound.Jammit.Base readsPrec :: Int -> ReadS SkillLevel # readList :: ReadS [SkillLevel] # readPrec :: ReadPrec SkillLevel # readListPrec :: ReadPrec [SkillLevel] # | |
Show SkillLevel Source # | |
Defined in Sound.Jammit.Base showsPrec :: Int -> SkillLevel -> ShowS # show :: SkillLevel -> String # showList :: [SkillLevel] -> ShowS # |
findJammitDir :: IO (Maybe FilePath) Source #
Tries to find the top-level Jammit library directory on Windows or Mac OS X.
songSubdirs :: FilePath -> IO [FilePath] Source #
Searches a directory and all subdirectories for folders containing a Jammit info file.
Beat | |
|
sheetWidth :: Num a => a Source #
sheetHeight :: Num a => a Source #