{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
module Data.BAM.Version1_6.BAM.Header.HD (
BAM_V1_6_File_Level_Metadata(..),
BAM_V1_6_File_Level_Metadata_Format_Version(..),
BAM_V1_6_File_Level_Metadata_Sorting_Order(..),
BAM_V1_6_File_Level_Metadata_Alignment_Grouping(..),
BAM_V1_6_File_Level_Metadata_SubSorting_Order(..)
) where
import Data.ByteString
import Data.Data
import Generics.Deriving.Base
data BAM_V1_6_File_Level_Metadata = BAM_V1_6_File_Level_Metadata { BAM_V1_6_File_Level_Metadata
-> BAM_V1_6_File_Level_Metadata_Format_Version
bam_v1_6_file_level_metadata_format_version :: BAM_V1_6_File_Level_Metadata_Format_Version
, BAM_V1_6_File_Level_Metadata
-> Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
bam_v1_6_file_level_metadata_sorting_order :: Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
, BAM_V1_6_File_Level_Metadata
-> Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
bam_v1_6_file_level_metadata_alignment_grouping :: Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
, BAM_V1_6_File_Level_Metadata
-> Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
bam_v1_6_file_level_metadata_subsorting_order :: Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
}
deriving ((forall x.
BAM_V1_6_File_Level_Metadata -> Rep BAM_V1_6_File_Level_Metadata x)
-> (forall x.
Rep BAM_V1_6_File_Level_Metadata x -> BAM_V1_6_File_Level_Metadata)
-> Generic BAM_V1_6_File_Level_Metadata
forall x.
Rep BAM_V1_6_File_Level_Metadata x -> BAM_V1_6_File_Level_Metadata
forall x.
BAM_V1_6_File_Level_Metadata -> Rep BAM_V1_6_File_Level_Metadata x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_File_Level_Metadata -> Rep BAM_V1_6_File_Level_Metadata x
from :: forall x.
BAM_V1_6_File_Level_Metadata -> Rep BAM_V1_6_File_Level_Metadata x
$cto :: forall x.
Rep BAM_V1_6_File_Level_Metadata x -> BAM_V1_6_File_Level_Metadata
to :: forall x.
Rep BAM_V1_6_File_Level_Metadata x -> BAM_V1_6_File_Level_Metadata
Generic,Typeable)
instance Eq BAM_V1_6_File_Level_Metadata where
BAM_V1_6_File_Level_Metadata BAM_V1_6_File_Level_Metadata_Format_Version
bam_v1_6_file_level_metadata_format_version1
Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
bam_v1_6_file_level_metadata_sorting_order1
Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
bam_v1_6_file_level_metadata_alignment_grouping1
Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
bam_v1_6_file_level_metadata_subsorting_order1 == :: BAM_V1_6_File_Level_Metadata
-> BAM_V1_6_File_Level_Metadata -> Bool
==
BAM_V1_6_File_Level_Metadata BAM_V1_6_File_Level_Metadata_Format_Version
bam_v1_6_file_level_metadata_format_version2
Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
bam_v1_6_file_level_metadata_sorting_order2
Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
bam_v1_6_file_level_metadata_alignment_grouping2
Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
bam_v1_6_file_level_metadata_subsorting_order2 =
BAM_V1_6_File_Level_Metadata_Format_Version
bam_v1_6_file_level_metadata_format_version1 BAM_V1_6_File_Level_Metadata_Format_Version
-> BAM_V1_6_File_Level_Metadata_Format_Version -> Bool
forall a. Eq a => a -> a -> Bool
== BAM_V1_6_File_Level_Metadata_Format_Version
bam_v1_6_file_level_metadata_format_version2 Bool -> Bool -> Bool
&&
Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
bam_v1_6_file_level_metadata_sorting_order1 Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
-> Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order -> Bool
forall a. Eq a => a -> a -> Bool
== Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
bam_v1_6_file_level_metadata_sorting_order2 Bool -> Bool -> Bool
&&
Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
bam_v1_6_file_level_metadata_alignment_grouping1 Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping -> Bool
forall a. Eq a => a -> a -> Bool
== Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
bam_v1_6_file_level_metadata_alignment_grouping2 Bool -> Bool -> Bool
&&
Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
bam_v1_6_file_level_metadata_subsorting_order1 Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order -> Bool
forall a. Eq a => a -> a -> Bool
== Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
bam_v1_6_file_level_metadata_subsorting_order2
instance Show BAM_V1_6_File_Level_Metadata where
show :: BAM_V1_6_File_Level_Metadata -> String
show (BAM_V1_6_File_Level_Metadata BAM_V1_6_File_Level_Metadata_Format_Version
version Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
sorting_order Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
alignment_grouping Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
subsorting_order) =
String
"BAM_V1_6_File_Level_Metadata { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_file_level_metadata_format_version = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(BAM_V1_6_File_Level_Metadata_Format_Version -> String
forall a. Show a => a -> String
show BAM_V1_6_File_Level_Metadata_Format_Version
version) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_file_level_metadata_sorting_order = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order -> String
forall a. Show a => a -> String
show Maybe BAM_V1_6_File_Level_Metadata_Sorting_Order
sorting_order) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_file_level_metadata_alignment_grouping = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping -> String
forall a. Show a => a -> String
show Maybe BAM_V1_6_File_Level_Metadata_Alignment_Grouping
alignment_grouping) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_file_level_metadata_subsorting_order = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order -> String
forall a. Show a => a -> String
show Maybe BAM_V1_6_File_Level_Metadata_SubSorting_Order
subsorting_order) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"
newtype BAM_V1_6_File_Level_Metadata_Format_Version = BAM_V1_6_File_Level_Metadata_Format_Version { BAM_V1_6_File_Level_Metadata_Format_Version -> ByteString
bam_v1_6_file_level_metadata_format_version_value :: ByteString
}
deriving ((forall x.
BAM_V1_6_File_Level_Metadata_Format_Version
-> Rep BAM_V1_6_File_Level_Metadata_Format_Version x)
-> (forall x.
Rep BAM_V1_6_File_Level_Metadata_Format_Version x
-> BAM_V1_6_File_Level_Metadata_Format_Version)
-> Generic BAM_V1_6_File_Level_Metadata_Format_Version
forall x.
Rep BAM_V1_6_File_Level_Metadata_Format_Version x
-> BAM_V1_6_File_Level_Metadata_Format_Version
forall x.
BAM_V1_6_File_Level_Metadata_Format_Version
-> Rep BAM_V1_6_File_Level_Metadata_Format_Version x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_File_Level_Metadata_Format_Version
-> Rep BAM_V1_6_File_Level_Metadata_Format_Version x
from :: forall x.
BAM_V1_6_File_Level_Metadata_Format_Version
-> Rep BAM_V1_6_File_Level_Metadata_Format_Version x
$cto :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Format_Version x
-> BAM_V1_6_File_Level_Metadata_Format_Version
to :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Format_Version x
-> BAM_V1_6_File_Level_Metadata_Format_Version
Generic,Typeable)
instance Eq BAM_V1_6_File_Level_Metadata_Format_Version where
BAM_V1_6_File_Level_Metadata_Format_Version ByteString
bam_v1_6_file_level_metadata_format_version_value1 == :: BAM_V1_6_File_Level_Metadata_Format_Version
-> BAM_V1_6_File_Level_Metadata_Format_Version -> Bool
==
BAM_V1_6_File_Level_Metadata_Format_Version ByteString
bam_v1_6_file_level_metadata_format_version_value2 =
ByteString
bam_v1_6_file_level_metadata_format_version_value1 ByteString -> ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== ByteString
bam_v1_6_file_level_metadata_format_version_value2
instance Show BAM_V1_6_File_Level_Metadata_Format_Version where
show :: BAM_V1_6_File_Level_Metadata_Format_Version -> String
show (BAM_V1_6_File_Level_Metadata_Format_Version ByteString
value) =
String
"BAM_V1_6_File_Level_Metadata_Format_Version { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_file_level_metadata_format_version_value = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(ByteString -> String
forall a. Show a => a -> String
show ByteString
value) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"
newtype BAM_V1_6_File_Level_Metadata_Sorting_Order = BAM_V1_6_File_Level_Metadata_Sorting_Order { BAM_V1_6_File_Level_Metadata_Sorting_Order -> ByteString
bam_v1_6_file_level_metadata_sorting_order_value :: ByteString
}
deriving ((forall x.
BAM_V1_6_File_Level_Metadata_Sorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x)
-> (forall x.
Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
-> BAM_V1_6_File_Level_Metadata_Sorting_Order)
-> Generic BAM_V1_6_File_Level_Metadata_Sorting_Order
forall x.
Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
-> BAM_V1_6_File_Level_Metadata_Sorting_Order
forall x.
BAM_V1_6_File_Level_Metadata_Sorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_File_Level_Metadata_Sorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
from :: forall x.
BAM_V1_6_File_Level_Metadata_Sorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
$cto :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
-> BAM_V1_6_File_Level_Metadata_Sorting_Order
to :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Sorting_Order x
-> BAM_V1_6_File_Level_Metadata_Sorting_Order
Generic,Typeable)
instance Eq BAM_V1_6_File_Level_Metadata_Sorting_Order where
BAM_V1_6_File_Level_Metadata_Sorting_Order ByteString
bam_v1_6_file_level_metadata_sorting_order_value1 == :: BAM_V1_6_File_Level_Metadata_Sorting_Order
-> BAM_V1_6_File_Level_Metadata_Sorting_Order -> Bool
==
BAM_V1_6_File_Level_Metadata_Sorting_Order ByteString
bam_v1_6_file_level_metadata_sorting_order_value2 =
ByteString
bam_v1_6_file_level_metadata_sorting_order_value1 ByteString -> ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== ByteString
bam_v1_6_file_level_metadata_sorting_order_value2
instance Show BAM_V1_6_File_Level_Metadata_Sorting_Order where
show :: BAM_V1_6_File_Level_Metadata_Sorting_Order -> String
show (BAM_V1_6_File_Level_Metadata_Sorting_Order ByteString
value) =
String
"BAM_V1_6_File_Level_Metadata_Sorting_Order { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_file_level_metadata_sorting_order_value = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(ByteString -> String
forall a. Show a => a -> String
show ByteString
value) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"
newtype BAM_V1_6_File_Level_Metadata_Alignment_Grouping = BAM_V1_6_File_Level_Metadata_Alignment_Grouping { BAM_V1_6_File_Level_Metadata_Alignment_Grouping -> ByteString
bam_v1_6_file_level_metadata_alignment_grouping_value :: ByteString
}
deriving ((forall x.
BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x)
-> (forall x.
Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
-> BAM_V1_6_File_Level_Metadata_Alignment_Grouping)
-> Generic BAM_V1_6_File_Level_Metadata_Alignment_Grouping
forall x.
Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
-> BAM_V1_6_File_Level_Metadata_Alignment_Grouping
forall x.
BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
from :: forall x.
BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
$cto :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
-> BAM_V1_6_File_Level_Metadata_Alignment_Grouping
to :: forall x.
Rep BAM_V1_6_File_Level_Metadata_Alignment_Grouping x
-> BAM_V1_6_File_Level_Metadata_Alignment_Grouping
Generic,Typeable)
instance Eq BAM_V1_6_File_Level_Metadata_Alignment_Grouping where
BAM_V1_6_File_Level_Metadata_Alignment_Grouping ByteString
bam_v1_6_file_level_metadata_alignment_grouping_value1 == :: BAM_V1_6_File_Level_Metadata_Alignment_Grouping
-> BAM_V1_6_File_Level_Metadata_Alignment_Grouping -> Bool
==
BAM_V1_6_File_Level_Metadata_Alignment_Grouping ByteString
bam_v1_6_file_level_metadata_alignment_grouping_value2 =
ByteString
bam_v1_6_file_level_metadata_alignment_grouping_value1 ByteString -> ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== ByteString
bam_v1_6_file_level_metadata_alignment_grouping_value2
instance Show BAM_V1_6_File_Level_Metadata_Alignment_Grouping where
show :: BAM_V1_6_File_Level_Metadata_Alignment_Grouping -> String
show (BAM_V1_6_File_Level_Metadata_Alignment_Grouping ByteString
value) =
String
"BAM_V1_6_File_Level_Metadata_Alignment_Grouping { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_file_level_metadata_alignment_grouping_value = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(ByteString -> String
forall a. Show a => a -> String
show ByteString
value) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"
newtype BAM_V1_6_File_Level_Metadata_SubSorting_Order = BAM_V1_6_File_Level_Metadata_SubSorting_Order { BAM_V1_6_File_Level_Metadata_SubSorting_Order -> ByteString
bam_v1_6_file_level_metadata_subsorting_order_value :: ByteString
}
deriving ((forall x.
BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x)
-> (forall x.
Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
-> BAM_V1_6_File_Level_Metadata_SubSorting_Order)
-> Generic BAM_V1_6_File_Level_Metadata_SubSorting_Order
forall x.
Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
-> BAM_V1_6_File_Level_Metadata_SubSorting_Order
forall x.
BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
from :: forall x.
BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
$cto :: forall x.
Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
-> BAM_V1_6_File_Level_Metadata_SubSorting_Order
to :: forall x.
Rep BAM_V1_6_File_Level_Metadata_SubSorting_Order x
-> BAM_V1_6_File_Level_Metadata_SubSorting_Order
Generic,Typeable)
instance Eq BAM_V1_6_File_Level_Metadata_SubSorting_Order where
BAM_V1_6_File_Level_Metadata_SubSorting_Order ByteString
bam_v1_6_file_level_metadata_subsorting_order_value1 == :: BAM_V1_6_File_Level_Metadata_SubSorting_Order
-> BAM_V1_6_File_Level_Metadata_SubSorting_Order -> Bool
==
BAM_V1_6_File_Level_Metadata_SubSorting_Order ByteString
bam_v1_6_file_level_metadata_subsorting_order_value2 =
ByteString
bam_v1_6_file_level_metadata_subsorting_order_value1 ByteString -> ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== ByteString
bam_v1_6_file_level_metadata_subsorting_order_value2
instance Show BAM_V1_6_File_Level_Metadata_SubSorting_Order where
show :: BAM_V1_6_File_Level_Metadata_SubSorting_Order -> String
show (BAM_V1_6_File_Level_Metadata_SubSorting_Order ByteString
value) =
String
"BAM_V1_6_File_Level_Metadata_SubSorting_Order { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_file_level_metadata_subsorting_order_value = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(ByteString -> String
forall a. Show a => a -> String
show ByteString
value) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"