-- | Module contains enumeration of helix types, and auxiliary functions -- for converting these into PDB CLASS codes. module Bio.PDB.EventParser.HelixTypes(HelixT, helix2code, code2helix) where {-| Enumeration of helix types PDB Class number in columns 39-40 for each type of helix in HELIX record: (1) Right-handed alpha (default, most common) (2) Right-handed omega (3) Right-handed pi (4) Right-handed gamma (5) Right-handed 3 - 10 (6) Left-handed alpha (7) Left-handed omega (8) Left-handed gamma (9) 2 - 7 ribbon/helix (10) Polyproline -} data HelixT = RightAlpha | RightOmega | RightPi | RightGamma | Right3_10 | LeftAlpha | LeftOmega | LeftGamma | Ribbon2_7 | Polyproline deriving (Eq, Ord, Show, Read) -- | helix2code converts a 'HelixT' enumeration into an PDB CLASS code. helix2code RightAlpha = 1 helix2code RightOmega = 2 helix2code RightPi = 3 helix2code RightGamma = 4 helix2code Right3_10 = 5 helix2code LeftAlpha = 6 helix2code LeftOmega = 7 helix2code LeftGamma = 8 helix2code Ribbon2_7 = 9 helix2code Polyproline = 10 -- | helix2code converts an PDB CLASS code into a 'HelixT' enumeration. code2helix 1 = RightAlpha code2helix 2 = RightOmega code2helix 3 = RightPi code2helix 4 = RightGamma code2helix 5 = Right3_10 code2helix 6 = LeftAlpha code2helix 7 = LeftOmega code2helix 8 = LeftGamma code2helix 9 = Ribbon2_7 code2helix 10 = Polyproline