PSL files. Tested only on PSL files generated by BLAT version 34,
which output psLayout version 3 files.
module Biocaml_psl:
sig
type
item = {
|
matches : |
(* | number of bases that match that aren't repeats | *) |
|
mismatches : |
(* | number of bases that don't match | *) |
|
rep_matches : |
(* | number of bases that match but are part of repeats | *) |
|
n_count : |
(* | number of 'N' bases | *) |
|
q_num_insert : |
(* | number of inserts in query | *) |
|
q_base_insert : |
(* | number of bases inserted in query | *) |
|
t_num_insert : |
(* | number of inserts in target | *) |
|
t_base_insert : |
(* | number of bases inserted in target | *) |
|
q_name : |
(* | query sequence name | *) |
|
q_strand : |
(* | '+' or '-' for query strand | *) |
|
q_size : |
(* | query sequence size | *) |
|
q_start : |
(* | alignment start position in query | *) |
|
q_end : |
(* | alignment end position in query | *) |
|
t_name : |
(* | target sequence name | *) |
|
t_strand : |
(* | target strand for translated alignments | *) |
|
t_size : |
(* | target sequence size | *) |
|
t_start : |
(* | alignment start position in target | *) |
|
t_end : |
(* | alignment end position in target | *) |
|
block_count : |
(* | number of blocks in the alignment (a block contains no gaps) | *) |
|
block_sizes : |
(* | sizes of each block | *) |
|
q_starts : |
(* | starting positions of each block in query | *) |
|
t_starts : |
(* | starting positions of each block in target | *) |
module Error:
sig
typet =
[ `incomplete_input of
Biocaml_internal_utils.Pos.t * string list * string option
| `invalid_int of Biocaml_internal_utils.Pos.t * string * string
| `invalid_number_of_columns of Biocaml_internal_utils.Pos.t * string * int
| `invalid_strands of Biocaml_internal_utils.Pos.t * string * string ]
end
exception Error of Error.t
val in_channel_to_item_stream : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
(item, [> Error.t ]) Biocaml_internal_utils.Result.t
Biocaml_internal_utils.Stream.t
val in_channel_to_item_stream_exn : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel -> item Biocaml_internal_utils.Stream.t
module Transform:
sig
val string_to_item : ?filename:string ->
unit ->
(string,
(Biocaml_psl.item, [> Biocaml_psl.Error.t ]) Biocaml_internal_utils.Result.t)
Biocaml_transform.t
end
val line_to_item : Biocaml_internal_utils.Pos.t ->
Biocaml_internal_utils.Line.t ->
(item, Error.t) Biocaml_internal_utils.Result.t
val item_of_sexp : Sexplib.Sexp.t -> item
val sexp_of_item : item -> Sexplib.Sexp.t
end