Bio::D...Pileup(3pm)
πΈ Bio::DB::HTS::Pileup β the vibe π
okay bestie, welcome to the manual page for Bio::D...Pileup(3pm) β that's Bio::DB::HTS::Pileup, the little object that gets passed to your pileup() callback. she's small, she's iconic, she's holding a whole column of your alignment in her hands. let's get into it π«Ά
π LICENSE π
Copyright [2015-2018] EMBL-European Bioinformatics Institute
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
no cap, that's the actual legal text and you literally cannot skip it. read it, it's giving "adulting" but it matters π
β¨ NAME β¨
Bio::DB::HTS::Pileup -- the object that gets handed to your pileup() callback π
π SYNOPSIS π
okay so you don't get a big juicy example here, bestie. the page is literally telling you to go read "The generic fetch() and pileup() methods" over in Bio::DB::HTS to see how this object actually gets passed to pileup callbacks. that's the whole synopsis. go read that section, it's the prequel πΈ
π DESCRIPTION π
so here's the tea. a Bio::DB::HTS::Pileup object β or a Bio::DB::HTS::PileupWrapper object β gets passed to the callback you gave to the Bio::DB::HTS->pileup() method, and it happens for every single column in a sequence alignment. every column. she's thorough. π
and the only difference between those two classes? Bio::DB::HTS::PileupWrapper returns the way more convenient Bio::DB::HTS::AlignWrapper objects when you call the alignment() method. sounds slay, right? yeah β but it costs you some performance. nothing in life is free, not even convenience π«
π¦ Methods π¦
$alignment = $pileup->alignmentβ hands you back theBio::DB::HTS::AlignmentorBio::DB::HTS::AlignWrapperobject that represents the aligned read. this is your main character method, fr fr β¨$alignment = $pileup->bβ this one's just an alias foralignment(). she exists purely for compatibility with the C API. same energy, different name π$qpos = $pileup->qposβ gives you the position of this aligned column in read coordinates, and it's zero-based. don't forget the zero, bestie, the off-by-one jump scare is real π$pos = $pileup->posβ same deal, position of this aligned column in read coordinates, except this one is 1-based. yes, both exist. yes, you have to remember which is which π$indel = $pileup->indelβ if this column is an indel you get:- a positive integer for an insertion relative to the reference,
- a negative integer for a deletion relative to the reference,
- or a
0for no indel at this column at all.
$is_del = $pileup->is_delβ true if the base on the padded read is a deletion. simple. iconic. does exactly what it says π$level = $pileup->levelβ okay so if you invokedpileup()orfast_pileup()with the"keep_level"flag, then this method returns a positive integer telling you the level of the read in a printed multiple alignment. no flag, no level. iykyk π$pileup->is_headand$pileup->is_tailβ these fields are defined inbam.h, but their interpretation is obscure. that's it. that's all the manpage gives us. even the docs are like "idk bestie π"
π AUTHOR π
Rishi Nag <rishi@ebi.ac.uk<gt>
π₯ SEE ALSO π₯
Bio::PerlBio::DB::HTSBio::DB::HTS::AlignmentBio::DB::HTS::Constants
and that's the whole page, bestie π§ that was Bio::D...Pileup(3pm) from perl v5.40.0, dated 2024-10-31 β go forth and pile up responsibly πβ¨π
π¦ where this page comes from
- debian trixie: libbio-db-hts-perl 3.01-5 Β· Apache-2.0
- ubuntu questing: libbio-db-hts-perl 3.01-5
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms