{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
module Data.BAM.Version1_6.BGZFBlock (
BAM_V1_6_BGZFBlock(..)
) where
import Data.BAM.Version1_6.BAM
import Data.BAM.Version1_6.GZipHeader
import Data.Data
import Data.Word
import Generics.Deriving.Base
data BAM_V1_6_BGZFBlock = BAM_V1_6_BGZFBlock
{ :: BAM_V1_6_GZipHeader
, BAM_V1_6_BGZFBlock -> Word8
bam_v1_6_bgzfblock_subfield_identifier_one :: Word8
, BAM_V1_6_BGZFBlock -> Word8
bam_v1_6_bgzfblock_subfield_identifier_two :: Word8
, BAM_V1_6_BGZFBlock -> Word16
bam_v1_6_bgzfblock_subfield_length :: Word16
, BAM_V1_6_BGZFBlock -> Word16
bam_v1_6_bgzfblock_total_block_size_minus_one :: Word16
, BAM_V1_6_BGZFBlock -> BAM_V1_6_BAM
bam_v1_6_bgzfblock_cdata :: BAM_V1_6_BAM
, BAM_V1_6_BGZFBlock -> Word32
bam_v1_6_bgzfblock_crc32 :: Word32
, BAM_V1_6_BGZFBlock -> Word32
bam_v1_6_bgzfblock_isize :: Word32
} deriving ((forall x. BAM_V1_6_BGZFBlock -> Rep BAM_V1_6_BGZFBlock x)
-> (forall x. Rep BAM_V1_6_BGZFBlock x -> BAM_V1_6_BGZFBlock)
-> Generic BAM_V1_6_BGZFBlock
forall x. Rep BAM_V1_6_BGZFBlock x -> BAM_V1_6_BGZFBlock
forall x. BAM_V1_6_BGZFBlock -> Rep BAM_V1_6_BGZFBlock x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. BAM_V1_6_BGZFBlock -> Rep BAM_V1_6_BGZFBlock x
from :: forall x. BAM_V1_6_BGZFBlock -> Rep BAM_V1_6_BGZFBlock x
$cto :: forall x. Rep BAM_V1_6_BGZFBlock x -> BAM_V1_6_BGZFBlock
to :: forall x. Rep BAM_V1_6_BGZFBlock x -> BAM_V1_6_BGZFBlock
Generic,Typeable)
instance Eq BAM_V1_6_BGZFBlock where
BAM_V1_6_BGZFBlock BAM_V1_6_GZipHeader
bam_v1_6_bgzfblock_gzip_header1
Word8
bam_v1_6_bgzfblock_subfield_identifier_one1
Word8
bam_v1_6_bgzfblock_subfield_identifier_two1
Word16
bam_v1_6_bgzfblock_subfield_length1
Word16
bam_v1_6_bgzfblock_total_block_size_minus_one1
BAM_V1_6_BAM
bam_v1_6_bgzfblock_cdata1
Word32
bam_v1_6_bgzfblock_crc321
Word32
bam_v1_6_bgzfblock_isize1 == :: BAM_V1_6_BGZFBlock -> BAM_V1_6_BGZFBlock -> Bool
==
BAM_V1_6_BGZFBlock BAM_V1_6_GZipHeader
bam_v1_6_bgzfblock_gzip_header2
Word8
bam_v1_6_bgzfblock_subfield_identifier_one2
Word8
bam_v1_6_bgzfblock_subfield_identifier_two2
Word16
bam_v1_6_bgzfblock_subfield_length2
Word16
bam_v1_6_bgzfblock_total_block_size_minus_one2
BAM_V1_6_BAM
bam_v1_6_bgzfblock_cdata2
Word32
bam_v1_6_bgzfblock_crc322
Word32
bam_v1_6_bgzfblock_isize2 =
BAM_V1_6_GZipHeader
bam_v1_6_bgzfblock_gzip_header1 BAM_V1_6_GZipHeader -> BAM_V1_6_GZipHeader -> Bool
forall a. Eq a => a -> a -> Bool
== BAM_V1_6_GZipHeader
bam_v1_6_bgzfblock_gzip_header2 Bool -> Bool -> Bool
&&
Word8
bam_v1_6_bgzfblock_subfield_identifier_one1 Word8 -> Word8 -> Bool
forall a. Eq a => a -> a -> Bool
== Word8
bam_v1_6_bgzfblock_subfield_identifier_one2 Bool -> Bool -> Bool
&&
Word8
bam_v1_6_bgzfblock_subfield_identifier_two1 Word8 -> Word8 -> Bool
forall a. Eq a => a -> a -> Bool
== Word8
bam_v1_6_bgzfblock_subfield_identifier_two2 Bool -> Bool -> Bool
&&
Word16
bam_v1_6_bgzfblock_subfield_length1 Word16 -> Word16 -> Bool
forall a. Eq a => a -> a -> Bool
== Word16
bam_v1_6_bgzfblock_subfield_length2 Bool -> Bool -> Bool
&&
Word16
bam_v1_6_bgzfblock_total_block_size_minus_one1 Word16 -> Word16 -> Bool
forall a. Eq a => a -> a -> Bool
== Word16
bam_v1_6_bgzfblock_total_block_size_minus_one2 Bool -> Bool -> Bool
&&
BAM_V1_6_BAM
bam_v1_6_bgzfblock_cdata1 BAM_V1_6_BAM -> BAM_V1_6_BAM -> Bool
forall a. Eq a => a -> a -> Bool
== BAM_V1_6_BAM
bam_v1_6_bgzfblock_cdata2 Bool -> Bool -> Bool
&&
Word32
bam_v1_6_bgzfblock_crc321 Word32 -> Word32 -> Bool
forall a. Eq a => a -> a -> Bool
== Word32
bam_v1_6_bgzfblock_crc322 Bool -> Bool -> Bool
&&
Word32
bam_v1_6_bgzfblock_isize1 Word32 -> Word32 -> Bool
forall a. Eq a => a -> a -> Bool
== Word32
bam_v1_6_bgzfblock_isize2
instance Show BAM_V1_6_BGZFBlock where
show :: BAM_V1_6_BGZFBlock -> String
show (BAM_V1_6_BGZFBlock BAM_V1_6_GZipHeader
gzip_header
Word8
subfield_identifier_one
Word8
subfield_identifier_two
Word16
subfield_length
Word16
total_block_size_minus_one
BAM_V1_6_BAM
cdata
Word32
crc32
Word32
isize
) =
String
"BAM_V1_6_BGZFBlock { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_bgzfblock_gzip_header = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(BAM_V1_6_GZipHeader -> String
forall a. Show a => a -> String
show BAM_V1_6_GZipHeader
gzip_header) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_subfield_identifier_one = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word8 -> String
forall a. Show a => a -> String
show Word8
subfield_identifier_one) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_subfield_identifier_two = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word8 -> String
forall a. Show a => a -> String
show Word8
subfield_identifier_two) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_subfield_length = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word16 -> String
forall a. Show a => a -> String
show Word16
subfield_length) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_total_block_size_minus_one = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word16 -> String
forall a. Show a => a -> String
show Word16
total_block_size_minus_one) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_cdata = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(BAM_V1_6_BAM -> String
forall a. Show a => a -> String
show BAM_V1_6_BAM
cdata) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_crc32 = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word32 -> String
forall a. Show a => a -> String
show Word32
crc32) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bgzfblock_isize = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Word32 -> String
forall a. Show a => a -> String
show Word32
isize) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"