Minimap2 Wrapper

Types

PanGraph.Minimap.Buffer — Type
struct Buffer
	handle :: Ptr{Cvoid}
end

Store the untyped address to a minimap2 sequence buffer (working space).

source
PanGraph.Minimap.Extra — Type
struct Extra
	capacity :: UInt32
	dp_score :: Int32
	dp_max   :: Int32
	dp_max2  :: Int32
	packed   :: UInt32 # n_ambi (30 bits) / strand (2 bits)
	n_cigar  :: UInt32
	cigar UInt32[] (variable length array)
end

Copied from minimap2.h. See mmextrat.

source
PanGraph.Minimap.Index — Type
struct Index
	handle :: Ptr{Cvoid}
end

Store the untyped address to a minimap2 sequence index (set of minimizers).

source
PanGraph.Minimap.IndexOptions — Type
struct IndexOptions
	k    :: Cshort
	w    :: Cshort
	flag :: Cshort
	bucket_bits :: Cshort
	mini_batch_size :: Int64
	batch_size :: UInt64

	IndexOptions() = new()
end

Copied from minimap2.h. See mmidxoptt.

source
PanGraph.Minimap.MapOptions — Type
mutable struct MapOptions
	flag :: Int64
	seed :: Cint
	sdust_thres :: Cint

	max_qlen :: Cint

	bw :: Cint; bw_long :: Cint
	max_gap :: Cint; max_gap_ref :: Cint 
	max_frag_len :: Cint
	max_chain_skip :: Cint; max_chain_iter :: Cint
	min_cnt :: Cint
	min_chain_score :: Cint
	chain_gap_scale :: Cfloat
	rmq_size_cap :: Cint; rmq_inner_dist :: Cint
	rmq_rescue_size :: Cint
	rmq_rescue_ratio :: Cfloat

	mask_level :: Cfloat
	mask_len :: Cint
	pri_ratio :: Cfloat
	best_n :: Cint

	alt_drop :: Cfloat

	a :: Cint; b :: Cint; q :: Cint; e :: Cint; q2 :: Cint; e2 :: Cint
	sc_ambi :: Cint
	noncan :: Cint 
	junc_bonus :: Cint
	zdrop :: Cint; zdrop_inv :: Cint
	end_bonus :: Cint
	min_dp_max :: Cint
	min_ksw_len :: Cint
	anchor_ext_len :: Cint; anchor_ext_shift :: Cint
	max_clip_ratio :: Cfloat

	rank_min_len :: Cint
	rank_frac :: Cfloat

	pe_ori :: Cint; pe_bonus :: Cint

	mid_occ_frac :: Cfloat
	min_mid_occ :: Int32; max_mid_occ :: Int32
	mid_occ :: Int32
	max_occ :: Int32; max_max_occ :: Int32; occ_dist :: Int32;
	mini_batch_size :: Int64
	max_sw_mat :: Int64
	cap_kalloc :: Int64

	split_prefix :: Cstring
end

Copied from minimap2.h. See mmmapoptt.

source
PanGraph.Minimap.Record — Type
struct Record
	id :: Int32; cnt :: Int32; rid :: Int32; score :: Int32
	qs :: Int32; qe  :: Int32; rs  :: Int32; re :: Int32

	parent :: Int32; subsc :: Int32

	as     :: Int32
	mlen   :: Int32; blen :: Int32
	nsub   :: Int32;
	score0 :: Int32;

	pack :: UInt32 # mapq(8) ; split(2); rev(1); inv(1); sam_pri(1); proper_frag(1); pe_thru(1); seg_split(1); seg_id(8); split_inv(1); is_alt(1); dummy(6)
	hash :: UInt32
	div  :: Cfloat
	p    :: Ptr{Extra}
end

Copied from minimap2.h. See mmreg1t.

source

Functions

PanGraph.Minimap.align — Method
align(ref::PanContigs, qry::PanContigs, minblock::Int, preset::String)

Call into minimap to align the set of blocks qry to blocks ref. Preset should be a string ∈ ["asm5","asm10","asm20"]. See minimap2 manual for details. This is probably the function you want. If you call into the function specifically, all memory management is taken care of for you.

source
PanGraph.Minimap.makeindex — Method
makeindex(w, k, names, sequence; bucketbits::Int=14)

Given a window size w and kmer length k, return a handle to a minimizer index for sequences sequence.

source