File: satutil.h

package info (click to toggle)
ncbi-tools6 6.1.20170106%2Bdfsg1-0%2Bdeb10u2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 468,492 kB
  • sloc: ansic: 1,474,204; pascal: 6,740; cpp: 6,248; xml: 3,390; sh: 2,137; perl: 1,084; csh: 508; makefile: 427; ruby: 93; lisp: 81
file content (125 lines) | stat: -rw-r--r-- 4,233 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125


/***********************************************************************
*
*	Header file for satutil.c (for copy Seq-feat based on sequence
*	alignment
*
************************************************************************/
#ifndef _SATUTIL_
#define _SATUTIL_

#include <ncbi.h>
#include <objfeat.h>
#include <objseq.h>
#include <objloc.h>
#include <objalign.h>
#include <sequtil.h>
#include <edutil.h>
#include <seqport.h>
#include <seqmgr.h>

#undef NLM_EXTERN
#ifdef NLM_IMPORT
#define NLM_EXTERN NLM_IMPORT
#else
#define NLM_EXTERN extern
#endif

#define DEFAULT_GAP_CHOICE 0
#define IGNORE_GAP_CHOICE 1
#define TAKE_GAP_CHOICE 2
#define MAX_GAP_LEN_BY_DEFAULT 10	/*the maximum allowd length of gap*/

/******************************************************************
*
*       CopyFeatureFromAlign(source_sfp, target_id, source_id, align,
*       gap_choice, check_trunc
*
*       Copy the source_sfp to the target sequence based on their
*       alignment
*       source_sfp: Seq-feat of the source
*       target_id:  Seq-id of the target
*       source_id:  Seq-id of the source in the alignment. This is
*       neccessary when the source_sfp may composed from different
*       segment of a Bioseq-set
*       align:      The Seq-align that contains alignment of the source
*       and the target
*       gap_choice: choice to select to map the gap to the new feature
*       can have default, ignore or take
*       check_trunc: load the fuzziness of the new Seq-feat
*
******************************************************************/
NLM_EXTERN SeqFeatPtr CopyFeatureFromAlign PROTO((SeqFeatPtr source_sfp, SeqIdPtr target_id, SeqIdPtr source_id, SeqAlignPtr align, Uint1 gap_choice, Boolean check_trunc));

/***************************************************************
*
*       Load a protein Bioseq to replace the Bogo product
*       sfp: the coding region feature
*       new_prot_id: if NULL a new default will be generated
*
***************************************************************/
NLM_EXTERN Boolean LoadProteinForCdRegion PROTO((SeqFeatPtr sfp, SeqIdPtr new_prot_id));


/********************************************************
*
*       functions related to the Bogo product
*
*********************************************************/

/*make the bogo product UserObject and link it to the chain*/
NLM_EXTERN void make_bogo_product PROTO((UserObjectPtr PNTR head));


/************************************************************* 
* 
*       check if the UserObject contains the identifyer for the 
*       BOGO product 
*
**************************************************************/ 
NLM_EXTERN Boolean IS_BOGO_Product PROTO((UserObjectPtr uop));


/************************************************************ 
* 
*       DeleteBogoProduct(head)
*       Delete the UserObject of Bogo Product from the chain 
* 
**************************************************************/
NLM_EXTERN void DeleteBogoProduct PROTO((UserObjectPtr PNTR head));

/**********************************************************************
*
*	map_one_location()
*	map the source_loc to the target by the Sequence alignment
*	source_loc:	the source Seq-loc
*	align:		the alignment between the source and the target
*	target_sip:	the Seq-id for the target 
*	gap_choice:	choice for mapping the gaps
*	r_start, r_stop:	the real start, stop value in the source 
*			sequence during the mapping. This value allows 
*			the mapping of truncation info for the results
*	return NULL for failure
*
*********************************************************************/
NLM_EXTERN SeqLocPtr map_one_location PROTO((SeqLocPtr source_loc, SeqAlignPtr align, SeqIdPtr target_sip, Uint1 gap_choice, Int4Ptr r_start, Int4Ptr r_stop));

/******************************************************************** 
* 
*  SeqAlignReplaceId () 
*       replaces a Seq-Id (oldId) in a Seq-Id list in a Seq-Align (salp)
*       with a new Seq-Id (newId)
* 
*********************************************************************/
NLM_EXTERN SeqAlignPtr SeqAlignReplaceId (SeqIdPtr oldId, SeqIdPtr newId, SeqAlignPtr salp); 
 

#undef NLM_EXTERN
#ifdef NLM_EXPORT
#define NLM_EXTERN NLM_EXPORT
#else
#define NLM_EXTERN
#endif

#endif