source: branches/port5/TREEGEN/base.h

Last change on this file was 5128, checked in by westram, 17 years ago
  • removed my own strange defines
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1011 bytes
Line 
1#ifndef __BASE_H
2#define __BASE_H
3
4#ifndef __DEFINES_H
5#include "defines.h"
6#endif
7
8typedef enum
9{
10    BASE_A,
11    BASE_C,
12    BASE_G,
13    BASE_T,
14    BASE_DEL
15
16} BaseType;
17
18#define BASETYPES           4
19#define BASECHARS           (BASETYPES+1)
20#define BASEQUAD            (BASETYPES*BASETYPES)
21
22#define MAXBASECHAR         ((int)'t')    /* vom ASCII-Wert her gr”átes Zeichen */
23#define PROB_NOT_DEF        (-1.0)
24
25#define isDeleted(b)        (charIsDelete[(int)(b)])
26#define isHelical(b)        (charIsHelical[(int)(b)])
27#define isPairing(b1,b2)    (basesArePairing[(int)(b1)][(int)(b2)])
28
29extern char helixBaseChar[BASECHARS],
30            loopBaseChar[BASECHARS];
31extern int  basesArePairing[BASECHARS][BASECHARS], /* Kombination paarend? */
32            baseCharType[],
33            charIsDelete[],
34            charIsHelical[];
35
36#define char2BaseType(c)    ((BaseType)baseCharType[(int)c])
37
38#ifdef __cplusplus
39extern "C" {
40#endif   
41
42    void initBaseLookups (void);
43
44#ifdef __cplusplus
45}
46#endif   
47
48#endif
Note: See TracBrowser for help on using the repository browser.