source: trunk/GDE/PHYLIP/disc.h

Last change on this file was 2175, checked in by westram, 21 years ago

upgrade to PHYLIP 3.6

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.7 KB
Line 
1
2/* version 3.6. (c) Copyright 1993-2000 by the University of Washington.
3   Written by Joseph Felsenstein, Akiko Fuseki, Sean Lamont, and Andrew Keeffe.
4   Permission is granted to copy and use this program provided no fee is
5   charged for it and provided that this copyright notice is not removed. */
6
7/*
8    disc.h: included in mix, move, penny, dollop, dolmove, dolpenny,
9            & clique
10*/
11
12
13/* node and pointptr used in Dollop, Dolmove, Dolpenny, Move, & Clique */
14
15typedef node **pointptr;
16
17/* node and pointptr used in Mix & Penny */
18
19typedef struct node2 {         /* describes a tip species or an ancestor   */
20  struct node2 *next, *back;
21  long index;
22  boolean tip, bottom,visited;/* present species are tips of tree         */
23  bitptr fulstte1, fulstte0;  /* see in PROCEDURE fillin                  */
24  bitptr empstte1, empstte0;  /* see in PROCEDURE fillin                  */
25  bitptr fulsteps,empsteps;
26  long xcoord, ycoord, ymin;  /* used by printree                        */
27  long ymax;
28} node2;
29
30typedef node2 **pointptr2;
31
32typedef struct gbit {
33  bitptr bits_;
34  struct gbit *next;
35} gbit;
36
37typedef struct htrav_vars {
38  node *r;
39  boolean bottom, nonzero;
40  gbit *zerobelow, *onebelow;
41} htrav_vars;
42
43typedef struct htrav_vars2 {
44  node2 *r;
45  boolean bottom, maybe, nonzero;
46  gbit *zerobelow, *onebelow;
47} htrav_vars2;
48
49
50extern long chars, nonodes,  nextree, which;
51/*  nonodes = number of nodes in tree                                        *
52 *  chars = number of binary characters                                      */
53extern steptr weight, extras;
54extern boolean printdata;
55
56#ifndef OLDC
57/*function prototypes*/
58void inputdata(pointptr, boolean, boolean, FILE *);
59void inputdata2(pointptr2);
60void alloctree(pointptr *);
61void alloctree2(pointptr2 *);
62void setuptree(pointptr);
63void setuptree2(pointptr2);
64void inputancestors(boolean *, boolean *);
65void inputancestorsnew(boolean *, boolean *);
66void printancestors(FILE *, boolean *, boolean *);
67void add(node *, node *, node *, node **, pointptr);
68void add2(node *, node *, node *, node **, boolean, boolean, pointptr);
69
70void add3(node2 *, node2 *, node2 *, node2 **, pointptr2);
71void re_move(node **, node **, node **, pointptr);
72void re_move2(node **, node **, node **, boolean *, pointptr);
73void re_move3(node2 **, node2 **, node2 **, pointptr2);
74void coordinates(node *, long *, double , long *);
75void coordinates2(node2 *, long *);
76void treeout(node *, long, long *, node *);
77void treeout2(node2 *, long *, node2 *);
78void standev(long, long, double, double *, double **, longer);
79void guesstates(Char *);
80
81void freegarbage(gbit **);
82void disc_gnu(gbit **, gbit **);
83void disc_chuck(gbit *, gbit **);
84/*function prototypes*/
85#endif
Note: See TracBrowser for help on using the repository browser.