Class: HTS::Native::BamIteratorHandle

Inherits:
Object
  • Object
show all
Defined in:
ext/htslib_native/native_bam.c

Instance Method Summary collapse

Instance Method Details

#closeObject



672
673
674
675
676
677
# File 'ext/htslib_native/native_bam.c', line 672

static VALUE native_bam_iterator_close(VALUE self) {
    ruby_bam_iterator_t *value;
    TypedData_Get_Struct(self, ruby_bam_iterator_t, &bam_iterator_type, value);
    if (value->iterator) { hts_itr_destroy(value->iterator); value->iterator = NULL; }
    return Qnil;
}

#next(record) ⇒ Object



665
666
667
668
669
670
671
# File 'ext/htslib_native/native_bam.c', line 665

static VALUE native_bam_iterator_next(VALUE self, VALUE record) {
    ruby_bam_iterator_t *iterator = get_iterator(self);
    ruby_bam_file_t *file = get_file(iterator->file, 0);
    bam_io_args_t args={file->file,NULL,get_record(record)->pointer,iterator->iterator,0};
    bam_io_run(file,bam_iterator_without_gvl,&args);
    return INT2NUM(args.result);
}