source: tags/initial/ALIV3/a3_bihelix.hxx

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: 2.1 KB
Line 
1// -----------------------------------------------------------------------------
2
3#ifndef _A3_BI_Helix_HXX
4#define _A3_BI_Helix_HXX
5
6// -----------------------------------------------------------------------------
7//      Include-Dateien
8// -----------------------------------------------------------------------------
9
10#include "a3_arbdb.hxx"
11
12// -----------------------------------------------------------------------------
13//      Makros und Definitionen
14// -----------------------------------------------------------------------------
15
16#define HELIX_MAX_NON_ST                10
17
18#define HELIX_AWAR_PAIR_TEMPLATE        "Helix/pairs/%s"
19#define HELIX_AWAR_SYMBOL_TEMPLATE      "Helix/symbols/%s"
20
21// -----------------------------------------------------------------------------
22//      Datentypen
23// -----------------------------------------------------------------------------
24
25typedef enum
26{
27        HELIX_NONE,
28        HELIX_STRONG_PAIR,
29        HELIX_PAIR,
30        HELIX_WEAK_PAIR,
31        HELIX_NO_PAIR,
32        HELIX_USER0,
33        HELIX_USER1,
34        HELIX_USER2,
35        HELIX_USER3,
36        HELIX_DEFAULT,
37        HELIX_NON_STANDART0,
38        HELIX_NON_STANDART1,
39        HELIX_NON_STANDART2,
40        HELIX_NON_STANDART3,
41        HELIX_NON_STANDART4,
42        HELIX_NON_STANDART5,
43        HELIX_NON_STANDART6,
44        HELIX_NON_STANDART7,
45        HELIX_NON_STANDART8,
46        HELIX_NON_STANDART9,
47        HELIX_NO_MATCH,
48        HELIX_MAX
49} BI_PAIR_TYPE;
50
51class A3_BI_Helix
52{
53        private:
54
55        int             _check_pair(char left, char right, BI_PAIR_TYPE pair_type);
56
57        public:
58
59        struct A3_BI_Helix_entry
60        {
61                long                    pair_pos;
62                BI_PAIR_TYPE    pair_type;
63                char               *helix_nr;
64        }*entries;
65
66        char       *pairs        [HELIX_MAX],
67                           *char_bind[HELIX_MAX];
68        long            size;
69        static char     error[256];
70
71                        A3_BI_Helix(void);
72                   ~A3_BI_Helix(void); 
73
74        char   *init    ( GBDATA *gb_main );
75        char   *init    ( GBDATA *gb_main,
76                                          char   *alignment_name,
77                                          char   *helix_nr_name,
78                                          char   *helix_name);
79        char   *init    ( GBDATA *gb_helix_nr,
80                                          GBDATA *gb_helix,
81                                          long    size);
82        char   *init    ( char   *helix_nr,
83                                          char   *helix,
84                                          long    size);
85};
86
87// -----------------------------------------------------------------------------
88
89#endif
90
91// -----------------------------------------------------------------------------
Note: See TracBrowser for help on using the repository browser.