1 /* 2 * njdist.h 3 * 4 * $Id$ 5 * 6 ***************************************************************************** 7 * 8 * Copyright (c) 2004, Luke Sheneman 9 * All rights reserved. 10 * 11 * Redistribution and use in source and binary forms, with or without 12 * modification, are permitted provided that the following conditions 13 * are met: 14 * 15 * + Redistributions of source code must retain the above copyright 16 * notice, this list of conditions and the following disclaimer. 17 * + Redistributions in binary form must reproduce the above copyright 18 * notice, this list of conditions and the following disclaimer in 19 * the documentation and/or other materials provided with the 20 * distribution. 21 * + The names of its contributors may not be used to endorse or promote 22 * products derived from this software without specific prior 23 * written permission. 24 * 25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 28 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 29 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35 * POSSIBILITY OF SUCH DAMAGE. 36 * 37 ***************************************************************************** 38 * 39 * AUTHOR: 40 * 41 * Luke Sheneman 42 * sheneman@cs.uidaho.edu 43 * 44 */ 45 46 47 #ifndef _INC_NJ_CMDARGS_H_ 48 #define _INC_NJ_CMDARGS_H_ 1 49 50 #include "clearcut.h" 51 52 53 /* some datatypes */ 54 typedef struct _STRUCT_NJ_ARGS { 55 56 char *infilename; /* the name of the input file */ 57 char *outfilename; /* the name of the output tree */ 58 char *matrixout; /* the name of the distance matrix output file */ 59 60 int input_mode; 61 int aligned_flag; 62 63 int verbose_flag; 64 int quiet_flag; 65 66 int stdin_flag; 67 int stdout_flag; 68 69 int help; 70 int version; 71 72 int norandom; 73 int shuffle; 74 75 int dna_flag; 76 int protein_flag; 77 78 int seed; 79 80 /* correction models for distance */ 81 int correction_model; 82 int jukes_flag; 83 int kimura_flag; 84 85 /* flag for using traditional neighbor-joining */ 86 int neighbor; 87 88 /* number of trees to output */ 89 int ntrees; 90 91 /* exponential notation output */ 92 int expblen; /* exp notation for tree branch lengths */ 93 int expdist; /* exp notation for distances in matrix output */ 94 95 } NJ_ARGS; 96 97 98 99 /* some function prototypes */ 100 101 NJ_ARGS * 102 NJ_handle_args(int argc, 103 char *argv[]); 104 105 void 106 NJ_print_args(NJ_ARGS *nj_args); 107 108 void 109 NJ_usage(void); 110 111 112 #endif /* _INC_NJ_CMDARGS_H_ */ 113 114