1 /* @include embmol ************************************************************
2 **
3 ** Routines for molecular weight matching.
4 **
5 ** @author Copyright (c) 1999 Alan Bleasby
6 ** @version $Revision: 1.13 $
7 ** @modified $Date: 2011/10/18 14:24:24 $ by $Author: rice $
8 ** @@
9 **
10 ** This library is free software; you can redistribute it and/or
11 ** modify it under the terms of the GNU Lesser General Public
12 ** License as published by the Free Software Foundation; either
13 ** version 2.1 of the License, or (at your option) any later version.
14 **
15 ** This library is distributed in the hope that it will be useful,
16 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18 ** Lesser General Public License for more details.
19 **
20 ** You should have received a copy of the GNU Lesser General Public
21 ** License along with this library; if not, write to the Free Software
22 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
23 ** MA  02110-1301,  USA.
24 **
25 ******************************************************************************/
26 
27 #ifndef EMBMOL_H
28 #define EMBMOL_H
29 
30 
31 /* ========================================================================= */
32 /* ============================= include files ============================= */
33 /* ========================================================================= */
34 
35 #include "ajdefine.h"
36 #include "ajstr.h"
37 #include "embprop.h"
38 
39 AJ_BEGIN_DECLS
40 
41 
42 
43 
44 /* ========================================================================= */
45 /* =============================== constants =============================== */
46 /* ========================================================================= */
47 
48 
49 
50 
51 #define EMBMOLPARDISP (double)1000000.0
52 
53 
54 
55 
56 /* ========================================================================= */
57 /* ============================== public data ============================== */
58 /* ========================================================================= */
59 
60 
61 
62 
63 /* @data EmbPMolFrag **********************************************************
64 **
65 ** Nucleus sequence molecular fragment object.
66 **
67 ** @attr begin [ajint] Start
68 ** @attr end [ajint] End
69 ** @attr mwt [double] Molecular weight
70 ** @@
71 ******************************************************************************/
72 
73 typedef struct EmbSMolFrag
74 {
75     ajint begin;
76     ajint end;
77     double mwt;
78 } EmbOMolFrag;
79 #define EmbPMolFrag EmbOMolFrag*
80 
81 
82 
83 
84 /* ========================================================================= */
85 /* =========================== public functions ============================ */
86 /* ========================================================================= */
87 
88 
89 
90 /*
91 ** Prototype definitions
92 */
93 
94 ajint embMolGetFrags(const AjPStr thys, ajint rno, EmbPPropMolwt const *mwdata,
95 		     AjBool mono, AjPList *l);
96 
97 /*
98 ** End of prototype definitions
99 */
100 
101 AJ_END_DECLS
102 
103 #endif  /* !EMBMOL_H */
104