source: tags/initial/PROBE_COM/PT.aisc

Last change on this file was 2, checked in by oldcode, 24 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 11.5 KB
Line 
1PROJECT pb_com
2OBJECT_KEY PT,                  # MAIN PREFIX
3MAX_KEY 100,                    # MAX NUMBER OF AN ATTRIBUTE
4MAX_OBJECT 20,                  # MAX DIFFERENT STRUCTURES
5MAX_STRING_LEN 1024,
6MAX_PAR_CNT 16,
7MAGIC_NUMBER 0x471100,          #       MAGIC_NUMBER 6 HEX DIGITS
8
9SERVER_INCLUDES (~
10#include <stdio.h>
11#include "PT_server.h"
12#include "PT_com.h"~)
13INCLUDE_INCLUDES (~$$(#FILE aisc_include.header)~)
14
15DATA {
16
17# ********************************* USER DATA *******************************************
18
19@CONST,         @VALUE,         @DOCU;
20LIST_SIZE,      20,             (~Size of I_STR Buffer~);
21PERC_SIZE,      20,             (~How many centigrades to look~);
22ALPHA_SIZE,     24,             (~24 letters~);
23DOMAIN_MIN_LENGTH, 8,           (~Minimum length of a domain~);
24PT_PART_DEEP,   2,              (~The Deep of the Partitions~);
25
26
27# ******************************* PRIVAT STRUCTURES: DO NOT CHANGE *********************************
28
29@STRUCT, @SKEY, @SKEYC, @SDOCU;
30
31dll_public,     ,       ,       (~Vater einer DoubledLinkedList dll~), {
32        @TYPE,          @IDENT, @REF,   @ACC,   @SAVE,  @KEY,   @KEYC,  @INIT,  @DOCU;
33        t_key,          key,    t,      r,      ,       ,       ,       ,       (~ The key~);
34        int,            cnt,    t,      r,      ,       CNT,    0,      ,       (~ Number of elements~);
35        long,           hash,   t,      ,       ,       ,       ,       ,       (~ Hash Table~);
36        dllheader_ext,  parent, flt,    r,      ,       PARENT, 1,      ,       (~ My Owner~);
37        dllheader_ext,  last,   flt,    r,      ,       LAST,   2,      ,       (~ Pointer to the last element~);
38        };
39
40
41dll_header,     COMMON, 0,      (~Der Link Header (sollte Kopf jeder Funktion sein)~), {
42        @TYPE,          @IDENT, @REF,   @ACC,   @SAVE,  @KEY,   @KEYC,  @INIT,  @DOCU;
43        t_key,          key,    t,      r,      ,       KEY,    0,      ,       (~ The Key~);
44        aisc_string,            aisc_get_keystring,%,r, ,       KEYSTRING,1,    ,       (~ THE STRING of the KEY ~);
45        dll_public,     parent, ls,     r,      ,       (~~),   2,      ,       (~ Pointer to dll_public~);
46        aisc_string,            ident,  t,      ,       1,      IDENT,  5,      ,       (~ The ident [not necessary]~);
47        };
48
49
50# ********************************* USER STRUCTURES *******************************************
51
52#       new probe design
53
54PT_probeparts, TPROBEPARTS,     9,      (~a part of a probe to search in the Prefix tree~), {
55        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
56        dllh,   mh,     t,      ,       (~~),           0,      ,               (~Header~);
57        aisc_string,    sequence,t,     ,       ,               ,       ,               (~ The Sequence to check ~);
58        PT_tprobes,source,fl,   ,       ,               ,       ,               (~ A pointer to the source ~);
59        int,    start,  t,      ,       ,               ,       ,               (~ The number of characters cut off at the start of the tprobe~);
60        double, dt,     t,      ,       ,               ,       ,               (~ Add this temperature to the result ~);
61        double, sum_bonds,t,    ,       ,               ,       ,               (~ The sum of bonds of the longest non mismatch string ~);
62};
63
64PT_pdc_specials, SPECIALS,      10,     (~ non standard substrings of a probe ~), {
65        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
66        dllh,   mh,     t,      ,       (~~),           0,      ,               (~Header~);
67        int,    mode,   t,      ,       MODE,           9,      ,               (~ ==1 -> split domains; ==0 -> dont split domains ~);
68        double, ll,     t,      ,       LLEFT,          10,     ,               (~ the bond value of the character left of the left ~);
69        double, l,      t,      ,       LEFT,           11,     ,               (~ The bond value left character ~);
70        double, c,      t,      ,       CENTER,         12,     ,               (~ The center character~);
71        double, r,      t,      ,       RIGHT,          13,     ,               (~...~);
72        double, rr,     t,      ,       RRIGHT,         14,     ,               (~...~);
73};
74
75PT_tprobes, TPROBE,     11,     (~ The probe we want to test ~), {
76        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
77        dllh,   mh,     t,      ,       (~~),           0,      ,               (~Header~);
78        aisc_string,    sequence,t,     r,      SEQUENCE,       10,     ,               (~ The Sequence to check ~);
79        int,    seq_len,t,      ,       ,               ,       ,               (~ The len of the sequence ~);
80        double, sum_bonds,t,    ,       ,               ,       ,               (~ The sum of all bonds ~);
81        double, quality,t,      r,      QUALITY,        11,     ,               (~ The quality of the probe = GROUPSIZE*dT ~);
82        int,    groupsize,t,    r,      GROUPSIZE,      15,     ,               (~ The Size of the group ~);
83        int,    hairpin,t,      r,      HAIRPIN,        16,     ,               (~ How many hairpin bonds ~);
84        double, whairpin,t,     r,      WHAIRPIN,       17,     ,               (~ Weighted Hairpins ~);
85        int,    perc,   vt,     r,      PERC,           18,     ,               (~ Result: How many non group hits per centigrade ~), SIZE PERC_SIZE;
86        double, temp,   t,      r,      TEMPERATURE,    20,     ,               (~ The temperature of the probe ~);
87        int,    mishit, t,      r,      MISHIT,         25,     ,               (~ How many non group members hit ~);
88        int,    apos,   t,      ,       APOS,           26,     ,               (~ The absolute position of probe ~);
89        int,    get_r_pos,t,    ,       ECOLI_POS,      27,     ,               (~ The ecoli based position of probe ~);
90        aisc_string,    get_design_hinfo,%,r,   INFO_HEADER,    30,     ,               (~the combined info text of a probe design~);
91        aisc_string,    get_design_info,%,r,    INFO,           31,     ,               (~the combined info text of a probe design~);
92};
93
94PT_bond,   ,    ,       (~ The definition of a bond ~), {
95        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
96        double, val,    t,      ,       VAL,            0,      0.0,            (~ how strong is that bond ~);
97};
98
99PT_sequence, SEQUENCE,  13,     (~ The additional sequences ~), {
100        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
101        dllh,   mh,     t,      ,       (~~),           0,      ,               (~Header~);
102        bytestring,seq, t,      ,       SEQUENCE,       10,     ,               (~The Sequence~);
103};
104
105PT_pdc, PDC,    12,     (~ The new probe design ~), {
106        @TYPE,  @IDENT, @REF,   @ACC,   @KEY,           @KEYC,  @INIT,          @DOCU;
107        dllh,   mh,     t,      ,       (~~),           0,      ,               (~Header~);
108        PT_probeparts,parts,d,  ,       ,               ,       ,               (~ The parts of the probes ~);
109        PT_probeparts,dparts,d, ,       ,               ,       ,               (~ The duplikated parts of the probes ~);
110
111        PT_bond, bond,  siv,    ,       BOND,           10,     ,               (~The bond matrix~), SIZE (4*4);
112        int,    dummy,  t,      ,       ,               ,       init_bond_matrix(THIS), (~ init bond matrix ~);
113        double, dte,    t,      ,       DTEDGE,         12,     50.0,           (~ The Temperature drop per percent mismatch on the edge of the probe ~);
114        double, dt,     t,      ,       DT,             13,     50.0,           (~ The temperature drop per percent mismatch ~);
115        double, split,  t,      ,       SPLIT,          14,     .5,             (~ Split the domains if bond value is less the average bond value - split ~);
116        PT_pdc_specials,specials,d,,    SPECIALS,       15,     ,               (~ Exceptions of splitting domains~);
117        int,    looplen,t,      ,       LOOPLEN,        17,     4,              (~ The Loop Length of a probe ~);
118
119        int,    probelen,t,     ,       PROBELENGTH,    20,     18,             (~the length of the probe~);
120
121        double, mintemp,t,      ,       MINTEMP,        22,     30.0,           (~minimum temperuture~);
122        double, maxtemp,t,      ,       MAXTEMP,        23,     100.0,          (~maximum temperature~);
123
124        double, min_gc, t,      ,       MINGC,          25,     .3,             (~the minimum GC content~);
125        double, max_gc, t,      ,       MAXGC,          26,     1.0,            (~the maximum GC content~);
126
127        double, maxbonds,t,     ,       MAXBOND,        27,     4.0,            (~The maximum of hairpin bonds~);
128
129        int,    minpos, t,      ,       MINPOS,         30,     0,              (~the minimum position~);
130        int,    maxpos, t,      ,       MAXPOS,         31,     100000,         (~the maximum position~);
131
132        double, mintarget,t,    ,       MINTARGETS,     35,     .7,             (~the minimum targets for a group of species~);
133        int,    mishit,t,       ,       MISHIT,         36,     0,              (~the maximum mis hits~);
134
135        int,    clipresult,t,   ,       CLIPRESULT,     40,     40,             (~Clip the Result list~);
136        int,    pos_groups,vt,  ,       ,               ,       ,               (~Position of Groups~), SIZE ALPHA_SIZE;
137
138        bytestring,checksums,t, w,      CHECKSUMS,      44,     ,               (~a list of sequence checksums seperated by '#' is optional~);
139        bytestring,names,t,     w,      NAMES,          45,     ,               (~a list of names seperated by '#' is expected~);
140        bytestring,PT_unknown_names,%,r,UNKNOWN_NAMES,  46,     ,               (~List of unknown names~);
141        PT_sequence,sequences,d,,       SEQUENCE,       47,     ,               (~Additional Sequences~);       
142        int     ,PT_start_design,%,w,   GO,             50,     ,               (~Start the design procedure~);
143        PT_tprobes, tprobes,d,  r,      TPROBE,         60,     ,               (~ The result ~);               
144};
145
146# old structures
147
148PT_probematch, MATCHLIST,       1,      (~the  PROBEMATCH list~), {
149        @TYPE,  @IDENT, @REF,   @ACC,   @SAVE,  @KEY,           @KEYC,  @INIT,          @DOCU;
150        dllh,   mh,     t,      ,       ,       (~~),           0,      ,               (~Header~);
151        int,    name,   t,      r,      ,       ID,             10,     ,               (~id of species~);
152        aisc_string,    virt_name,%,    r,      ,       NAME,           11,     ,               (~name of species~);
153        int,    b_pos,  t,      r,      ,       POS,            12,     ,               (~pos of probe~);
154        int,    rpos,   t,      r,      ,       ,               ,       ,               (~relative pos of probe~);
155        int,    mismatches,t,   r,      ,       MISMATCHES,     13,     ,               (~number of mismatches~);
156        aisc_string,    virt_fullname,%,r,      ,       FULLNAME,       14,     ,               (~fullname of species~);
157        double, wmismatches,t,  r,      ,       WMISMATCHES,    15,     ,               (~number of weighted mismatches~);
158        int,    N_mismatches,t, r,      ,       N_MISMATCHES,   16,     ,               (~number of 'N' mismatches~);
159        int,    is_member,t,    r,      ,       IS_MEMBER,      18,     ,               (~member of group~);
160        double, dt,     t,      r,      ,       DT,             19,     ,               (~the dt of a probe~);
161        char,   sequence,l,     r,      ,       SEQUENCE,       22,     ,               (~path of probe~);
162        int,    reversed,t,     r,      ,       REVERSED,       25,     ,               (~reversed probe matches~);
163        aisc_string,    get_match_hinfo,%,r,    ,       INFO_HEADER,    26,     ,               (~the combined info text of a probe match~);
164        aisc_string,    get_match_info,%,r,     ,       INFO,           27,     ,               (~the combined info text of a probe match~);
165        };
166
167
168PT_species_list, SPECIESLIST,   5,      (~the  species  list~), {
169        @TYPE,  @IDENT, @REF,   @ACC,   @SAVE,  @KEY,           @KEYC,  @INIT,          @DOCU;
170        dllh,   mh,     t,      ,       ,       (~~),           0,      ,               (~Header~);
171        int,    member,t,       rw,     ,       MEMBER,         12,     ,               (~species member of group~);
172        };
173
174PT_family_list, FAMILYLIST,     8,      (~the  family  list~), {
175        @TYPE,  @IDENT, @REF,   @ACC,   @SAVE,  @KEY,           @KEYC,  @INIT,          @DOCU;
176        dllh,   mh,     t,      ,       ,       (~~),           0,      ,               (~Header~);
177        aisc_string, name,      t,      r,      ,       NAME,           11,     ,               (~name of species~);
178        int, matches,   t,      r,      ,       MATCHES,        13,     ,               (~number of matches~);
179        double, rel_matches, t, r,      ,       REL_MATCHES,    14,     ,               (~MATCHES / (SEQ_LEN - PROBE_LEN + 1) ~);
180        };
181
182PT_local, LOCS,         6,      (~local communication buffer~), {
183        @TYPE,  @IDENT,         @REF,   @ACC,   @SAVE,  @KEY,           @KEYC,  @INIT,          @DOCU;
184        dllh,   mh,             t,      ,       ,       (~~),           0,      ,               (~Header~);
185        int,    socket,         t,      ,       ,       ,               ,pt_init_socket(THIS),  (~the callback~),
186                                                                                        DESTROY pt_destroy_socket(THIS);
187        aisc_string, probe_match,       %,      w,      ,       SEARCHMATCH,    8,      ,               (~ Searches all species where probe maches ~);
188        aisc_string, pm_sequence,       t,      ,       ,       ,               ,       ,               (~ the sequence ~);
189        aisc_string, pm_csequence,      t,      ,       ,       ,               ,       ,               (~ the complement sequence ~);
190        int,    pm_reversed,    t,      rw,     ,       MATCH_REVERSED, 9,      1,              (~ reverse probe ~);
191        int,    pm_complement,  t,      rw,     ,       MATCH_COMPLEMENT,10,    ,               (~ complement probe ~);
192        int,    pm_max,         t,      rw,     ,       MATCH_MAX_MISMATCHES,11,,               (~ max mismatches ~);
193        int,    pm_max_spec,    t,      rw,     ,       MATCH_MAX_SPECIES,12,   ,               (~ max number of species maching ~);
194        int,    sort_by,        t,      rw,     ,       MATCH_SORT_BY,  13,     ,               (~ 0 == mismatches  1 == weighted mismatches 2 == weighted mismatches with pos and strength~);
195
196        PT_probematch,pm,       d,      r,      ,       MATCH_LIST,     15,     ,               (~ result: List of species where probe maches ~);
197        bytestring,match_string,%,      r,      ,       MATCH_STRING,   17,     ,               (~ result: List of species where probe maches ~);
198        bytestring,MP_match_string,%,   r,      ,       MP_MATCH_STRING,18,     ,               (~ result: List of species where probe maches and #mismatches ~);
199        bytestring,MP_all_species_string,%,     r,,     MP_ALL_SPECIES_STRING,  19,     ,       (~ result: List of all species in Database ~);
200        int       ,MP_count_all_species,%,      r,,     MP_COUNT_ALL_SPECIES,   20,     ,       (~ result: Number of all species in Database ~);
201
202        aisc_string, ls_error,  t       ,r,     ,       ERROR,          23,     "",             (~ the error text ~);
203
204        int,    group_count,    t,      r,      ,       PROBE_NGROUP,   34,     ,               (~ result: Number of selected species~);
205
206
207        PT_pdc, pdc,            d,      ,       ,       PROBE_DESIGN_CONFIG,    40,     ,       (~The new probe design~);
208
209        bytestring,find_family, %,      w,      ,       FIND_FAMILY,    50,     ,               (~ Searches the family ~);
210        int,    pr_len,         t,      rw,     ,       PROBE_LEN,      51,     12,             (~ Length of probes ~);
211        int,    mis_nr,         t,      rw,     ,       MISMATCH_NUMBER,52,     0,              (~ Number of mismatches ~);
212        int,  find_type,        t,      rw,     ,       FIND_TYPE,      53,     0,              (~ Type of find 0 = search all, 1 = a* ~);
213        int,  sort_type,        t,      rw,     ,       SORT_TYPE,      54,     0,              (~ Type of sorting 0 = MATCHES, 1 = REL_MATCHES ~);
214        PT_family_list,fl,      d,      r,      ,       FAMILY_LIST,    55,     ,               (~ Sorted List of family ~);
215
216        aisc_string,    user,           t,      rw,     ,       USER,           60,     "unknown",      (~the username~);
217        aisc_string,    address,        t,      rw,     ,       ADDRESS,        61,     "unknown",      (~the useraddress~);
218        aisc_string,    login,          t,      rw,     ,       LOGINTIME,      62,     "notime",       (~the date the user logged in~);
219
220        };
221
222
223PT_main, MAIN, 7, (~Die globalen Daten~), {
224        @TYPE,  @IDENT,         @REF,   @ACC,   @SAVE,  @KEY,           @KEYC,  @INIT,          @DOCU;
225        t_key,  key,            t,      n,      ,       ,               ,       ,               (~Der KEY~);
226        PT_local,loc_st,        d,      ,       ,       LOCS,           10,     ,               (~Die Parameter~);
227        aisc_string,    server_shutdown,%,      w,      ,       SHUTDOWN,       20,     ,               (~shut down~);
228        int,    who,            t,      rw,     ,       STARTER,        21,     ,               (~who started this server~);
229        int,    m_type,         t,      ,       ,       MESSAGE_TYPE,   31,     0,              (~the message type ~);
230        aisc_string,    m_text,         t,      ,       ,       MESSAGE,        32,     "NO_MSG",       (~ the message text ~);
231        int,    broadcast,      %,      w,      ,       BROADCAST,      33,     ,               (~ broadcast func ~);
232        PT_species_list, sl,    d,      r,      ,       SPECIESLIST,    50,     ,               (~list of species~);
233        };
234};
Note: See TracBrowser for help on using the repository browser.