1 /** 2 * PLL (version 1.0.0) a software library for phylogenetic inference 3 * Copyright (C) 2013 Tomas Flouri and Alexandros Stamatakis 4 * 5 * Derived from 6 * RAxML-HPC, a program for sequential and parallel estimation of phylogenetic 7 * trees by Alexandros Stamatakis 8 * 9 * This program is free software: you can redistribute it and/or modify it 10 * under the terms of the GNU General Public License as published by the Free 11 * Software Foundation, either version 3 of the License, or (at your option) 12 * any later version. 13 * 14 * This program is distributed in the hope that it will be useful, but WITHOUT 15 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 16 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 17 * more details. 18 * 19 * You should have received a copy of the GNU General Public License along with 20 * this program. If not, see <http://www.gnu.org/licenses/>. 21 * 22 * For any other enquiries send an Email to Tomas Flouri 23 * Tomas.Flouri@h-its.org 24 * 25 * When publishing work that uses PLL please cite PLL 26 * 27 * @file errcodes.h 28 */ 29 #ifndef ERRCODES_H 30 #define ERRCODES_H 31 32 #define PLL_ERROR_FILE_OPEN 1 /**< Error while opening file */ 33 #define PLL_ERROR_INVALID_FILETYPE 2 /**< Invalid fileType given at pllParseAlignmeFile */ 34 35 #define PLL_NNI_P_TIP 1 << 0 /**< Node p is a tip */ 36 #define PLL_NNI_Q_TIP 1 << 1 /**< Node p->back is a tip */ 37 38 #define PLL_PARTITION_OUT_OF_BOUNDS 1 << 0 /**< Trying to access a partition index that is out of bounds */ 39 #define PLL_BASE_FREQUENCIES_DO_NOT_SUM_TO_1 1 << 1 /**< base frequencies don't sum to 1.0 */ 40 41 #define PLL_LINKAGE_LIST_OUT_OF_BOUNDS 1 << 0 /**< trying to link a partition index that is out of bounds */ 42 43 #define PLL_SUBSTITUTION_RATE_OUT_OF_BOUNDS 1 << 0 /**< trying to set a substitution rate to a value that is out of bounds */ 44 #define PLL_INVALID_Q_MATRIX_SYMMETRY 1 << 1 /**< specifyng an invalid parameter symmetry in the Q matrix */ 45 #define PLL_Q_MATRIX_SYMMETRY_OUT_OF_BOUNDS 1 << 2 /**<specifying a Q matrix symmetry that is out of bounds */ 46 47 #define PLL_UNKNOWN_MOLECULAR_DATA_TYPE 1 << 0 /**<PLL is trying to do something for an unknown data type */ 48 49 #define PLL_INCONSISTENT_SUBST_RATE_OPTIMIZATION_SETTING 1 << 0 /**<PLL detected an inconsistent setting for the Q matrix rate optimization */ 50 #define PLL_INCONSISTENT_Q_MATRIX_SYMMETRIES_ACROSS_LINKED_PARTITIONS 1 << 1 /**<Q matrix symmetry vector is not identical for linked partitions */ 51 #define PLL_INCONSISTENT_Q_MATRIX_ENTRIES_ACROSS_LINKED_PARTITIONS 1 << 2 /**<Q matrix entries are not identical for linked partitions */ 52 #define PLL_INCONSISTENT_ALPHA_STATES_ACROSS_LINKED_PARTITIONS 1 << 3 /**<alpha states are not identical across linked partitions */ 53 #define PLL_INCONSISTENT_ALPHA_VALUES_ACROSS_LINKED_PARTITIONS 1 << 4 /**<alpha values are not identical across linked partitions */ 54 #define PLL_INCONSISTENT_FREQUENCY_STATES_ACROSS_LINKED_PARTITIONS 1 << 5 /**<frequency states are not identical across linked partitions */ 55 #define PLL_INCONSISTENT_FREQUENCY_VALUES_ACROSS_LINKED_PARTITIONS 1 << 6 /**<frequency values are not identical across linked partitions */ 56 57 #define PLL_NEWICK_ROOTED_TREE 1 << 0 /**< @brief Binary root detected */ 58 #define PLL_NEWICK_BAD_STRUCTURE 1 << 1 /**< @brief Errornous tree detected */ 59 60 61 62 #define PLL_ERROR_PHYLIP_HEADER_SYNTAX 5 63 #define PLL_ERROR_PHYLIP_BODY_SYNTAX 6 64 #define PLL_ERROR_FASTA_SYNTAX 7 65 66 67 68 69 #endif 70