Class: ReportGff

Inherits:
Report show all
Defined in:
lib/gene_assembler/report_gff.rb

Instance Method Summary collapse

Methods inherited from Report

#initialize

Constructor Details

This class inherits a constructor from Report

Instance Method Details

#create(output_file_mode, parent = nil) ⇒ Object

output_file_mode se pone a ‘w’ si los contig presentes en el dataset son independientes entre si, x lo q no se especifica el parent. En caso de que tengamos contigs dependientes, se ha de escribir primero el contig principal especificando el modo ‘a’. Luego se escriben los contigs dependientes especificando el modo ‘a’ y el nombre del parent (que sera el contig principal que se ha escrito antes)



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/gene_assembler/report_gff.rb', line 5

def create(output_file_mode,parent=nil) #output_file_mode se pone a 'w' si los contig presentes en el dataset son independientes entre si, x lo q no se especifica el parent. En caso de que  tengamos contigs dependientes, se ha de escribir primero el contig principal especificando el modo 'a'. Luego se escriben los contigs dependientes especificando el modo 'a' y el nombre del parent (que sera el contig principal que se ha escrito antes)

  #Escribir cabecero del gff3
  if parent.nil? && !File.exists?(@path) || !File.exists?(@path)
    @content_file << '##gff-version 3'
  end
  
  #Conversion de datos de dataset a content_file
  gff_contig=GffContig.new
  @dataset.each_contig{|contig|      
    if contig.has_hit?
      @content_file << gff_contig.report(contig,contig.name,parent,@name_mode)
    end
  }
  @content_file.flatten!
  
  #Write content_file
  gff=File.open(@path,output_file_mode)
  @content_file.each do |line|
    gff.puts line
  end
  gff.close
  
end