Class: HTS::Bam::Flag
- Inherits:
-
Object
- Object
- HTS::Bam::Flag
- Defined in:
- lib/hts/bam/flag.rb
Overview
SAM flags
Constant Summary collapse
- PAIRED =
1- PROPER_PAIR =
2- UNMAPPED =
4- MATE_UNMAPPED =
8- REVERSE =
16- MATE_REVERSE =
32- READ1 =
64- READ2 =
128- SECONDARY =
256- QCFAIL =
512- DUPLICATE =
1024- SUPPLEMENTARY =
2048- TABLE =
{ paired?: PAIRED, proper_pair?: PROPER_PAIR, unmapped?: UNMAPPED, mate_unmapped?: MATE_UNMAPPED, reverse?: REVERSE, mate_reverse?: MATE_REVERSE, read1?: READ1, read2?: READ2, secondary?: SECONDARY, qcfail?: QCFAIL, duplicate?: DUPLICATE, supplementary?: SUPPLEMENTARY }.freeze
Instance Attribute Summary collapse
-
#value ⇒ Object
Returns the value of attribute value.
Instance Method Summary collapse
- #&(other) ⇒ Object
- #<<(f) ⇒ Object
- #>>(other) ⇒ Object
- #^(other) ⇒ Object
- #duplicate? ⇒ Boolean
- #has_flag?(f) ⇒ Boolean
-
#initialize(flag_value) ⇒ Flag
constructor
A new instance of Flag.
- #mate_reverse? ⇒ Boolean
- #mate_unmapped? ⇒ Boolean
- #paired? ⇒ Boolean
- #proper_pair? ⇒ Boolean
- #qcfail? ⇒ Boolean
- #read1? ⇒ Boolean
- #read2? ⇒ Boolean
- #reverse? ⇒ Boolean
- #secondary? ⇒ Boolean
- #supplementary? ⇒ Boolean
- #to_i ⇒ Object
- #to_s ⇒ Object
- #unmapped? ⇒ Boolean
- #|(other) ⇒ Object
- #~ ⇒ Object
Constructor Details
#initialize(flag_value) ⇒ Flag
Returns a new instance of Flag.
10 11 12 13 14 |
# File 'lib/hts/bam/flag.rb', line 10 def initialize(flag_value) raise TypeError unless flag_value.is_a? Integer @value = flag_value end |
Instance Attribute Details
#value ⇒ Object
Returns the value of attribute value.
16 17 18 |
# File 'lib/hts/bam/flag.rb', line 16 def value @value end |
Instance Method Details
#&(other) ⇒ Object
64 65 66 |
# File 'lib/hts/bam/flag.rb', line 64 def &(other) self.class.new(@value & other.to_i) end |
#<<(f) ⇒ Object
82 83 84 |
# File 'lib/hts/bam/flag.rb', line 82 def <<(f) self.class.new(@value << f.to_i) end |
#>>(other) ⇒ Object
86 87 88 |
# File 'lib/hts/bam/flag.rb', line 86 def >>(other) self.class.new(@value >> other.to_i) end |
#^(other) ⇒ Object
72 73 74 |
# File 'lib/hts/bam/flag.rb', line 72 def ^(other) self.class.new(@value ^ other.to_i) end |
#duplicate? ⇒ Boolean
57 |
# File 'lib/hts/bam/flag.rb', line 57 generate :duplicate? |
#has_flag?(f) ⇒ Boolean
60 61 62 |
# File 'lib/hts/bam/flag.rb', line 60 def has_flag?(f) (@value & f) != 0 end |
#mate_reverse? ⇒ Boolean
52 |
# File 'lib/hts/bam/flag.rb', line 52 generate :mate_reverse? |
#mate_unmapped? ⇒ Boolean
50 |
# File 'lib/hts/bam/flag.rb', line 50 generate :mate_unmapped? |
#paired? ⇒ Boolean
47 |
# File 'lib/hts/bam/flag.rb', line 47 generate :paired? |
#proper_pair? ⇒ Boolean
48 |
# File 'lib/hts/bam/flag.rb', line 48 generate :proper_pair? |
#qcfail? ⇒ Boolean
56 |
# File 'lib/hts/bam/flag.rb', line 56 generate :qcfail? |
#read1? ⇒ Boolean
53 |
# File 'lib/hts/bam/flag.rb', line 53 generate :read1? |
#read2? ⇒ Boolean
54 |
# File 'lib/hts/bam/flag.rb', line 54 generate :read2? |
#reverse? ⇒ Boolean
51 |
# File 'lib/hts/bam/flag.rb', line 51 generate :reverse? |
#secondary? ⇒ Boolean
55 |
# File 'lib/hts/bam/flag.rb', line 55 generate :secondary? |
#supplementary? ⇒ Boolean
58 |
# File 'lib/hts/bam/flag.rb', line 58 generate :supplementary? |
#to_i ⇒ Object
90 91 92 |
# File 'lib/hts/bam/flag.rb', line 90 def to_i @value end |
#to_s ⇒ Object
94 95 96 |
# File 'lib/hts/bam/flag.rb', line 94 def to_s Native.bam_flag_string(@value) end |
#unmapped? ⇒ Boolean
49 |
# File 'lib/hts/bam/flag.rb', line 49 generate :unmapped? |
#|(other) ⇒ Object
68 69 70 |
# File 'lib/hts/bam/flag.rb', line 68 def |(other) self.class.new(@value | other.to_i) end |
#~ ⇒ Object
76 77 78 79 80 |
# File 'lib/hts/bam/flag.rb', line 76 def ~ # FIXME: Only 12bits are used for flags # The result is different from the Crystal version. self.class.new(~@value) end |