Exemple #1
0
 def get_features_for_seqid(self, seqid):
     rval = gtlib.gt_feature_index_get_features_for_seqid(self.fi,
             seqid)
     if rval:
         a = Array(rval, True)
         result = []
         for i in range(a.size()):
             fptr = gtlib.gt_genome_node_ref(a.get(i))
             result.append(FeatureNode.create_from_ptr(fptr))
         return result
     else:
         return None
Exemple #2
0
 def feature_node_w(fn_p, err_p):
     fn = FeatureNode.create_from_ptr(fn_p)
     err = Error(err_p)
     try:
         try:
             self.visit_feature_node(fn)
         except AttributeError:
             pass
         return 0
     except GTError, errmsg:
         err.set(str(errmsg))
         return -1
 def feature_node_w(fn_p, err_p):
     fn = FeatureNode.create_from_ptr(fn_p)
     err = Error(err_p)
     try:
         try:
             self.visit_feature_node(fn)
         except AttributeError:
             pass
         return 0
     except GTError, errmsg:
         err.set(str(errmsg))
         return -1
Exemple #4
0
 def get_features_for_range(self, start, end, seqid):
     from ctypes import byref
     a = Array.create()
     err = Error()
     rng = Range(start, end)
     rval = gtlib.gt_feature_index_get_features_for_range(self.fi, a,
             seqid, byref(rng), err)
     if rval != 0:
         gterror(err)
     result = []
     for i in range(a.size()):
         fptr = gtlib.gt_genome_node_ref(a.get(i))
         result.append(FeatureNode.create_from_ptr(fptr))
     return result
Exemple #5
0
 def get_features_for_seqid(self, seqid):
     err = Error()
     result = []
     rval = gtlib.gt_feature_index_get_features_for_seqid(
         self.fi, seqid.encode('UTF-8'), err)
     if rval:
         a = Array(rval, True)
         for i in range(a.size()):
             fptr = gtlib.gt_genome_node_ref(a.get(i))
             result.append(FeatureNode.create_from_ptr(fptr))
         return result
     else:
         gterror(err)
     return result
Exemple #6
0
 def get_features_for_seqid(self, seqid):
     err = Error()
     result = []
     rval = gtlib.gt_feature_index_get_features_for_seqid(self.fi,
             seqid, err._as_parameter_)
     if rval:
         a = Array(rval, True)
         for i in range(a.size()):
             fptr = gtlib.gt_genome_node_ref(a.get(i))
             result.append(FeatureNode.create_from_ptr(fptr))
         return result
     else:
         gterror(err)
     return result
Exemple #7
0
 def get_features_for_range(self, start, end, seqid):
     from ctypes import byref
     a = Array.create()
     err = Error()
     rng = Range(start, end)
     rval = gtlib.gt_feature_index_get_features_for_range(
         self.fi, a, seqid, byref(rng), err)
     if rval != 0:
         gterror(err)
     result = []
     for i in range(a.size()):
         fptr = gtlib.gt_genome_node_ref(a.get(i))
         result.append(FeatureNode.create_from_ptr(fptr))
     return result
Exemple #8
0
    def get_genome_feature(self):

    #refcount only this FeatureNode!

        return FeatureNode.create_from_ptr(gtlib.gt_rec_map_get_genome_feature(self.rm),
                True)
Exemple #9
0
 def visit_feature_node(self, fn):
     new_child = FeatureNode.create_new(fn.get_seqid(), "bar", 100, 1000,
                                        "+")
     fn.add_child(new_child)
Exemple #10
0
 def get_top_level_feature(self):
     f = gtlib.gt_block_get_top_level_feature(self.block)
     if f != 0:
         return FeatureNode.create_from_ptr(f, True)
     else:
         return None
Exemple #11
0
 def get_top_level_feature(self):
     f = gtlib.gt_block_get_top_level_feature(self.block)
     if f != 0:
         return FeatureNode.create_from_ptr(f, True)
     else:
         return None
 def visit_feature_node(self, fn):
     new_child = FeatureNode.create_new(fn.get_seqid(), "bar", 100, 1000, "+")
     fn.add_child(new_child)