Mac binaries
[jabaws.git] / website / archive / binaries / mac / src / clustalw / src / general / clustalw.h
diff --git a/website/archive/binaries/mac/src/clustalw/src/general/clustalw.h b/website/archive/binaries/mac/src/clustalw/src/general/clustalw.h
new file mode 100644 (file)
index 0000000..68b0b66
--- /dev/null
@@ -0,0 +1,303 @@
+/**
+ * Author: Mark Larkin
+ * 
+ * Copyright (c) 2007 Des Higgins, Julie Thompson and Toby Gibson.  
+ *
+ * Changes:
+ *
+ * 13-02-07,Nigel Brown(EMBL): Increased maximum sequence identifier
+ * width MAXNAMES from 30 to 150.
+ * 20-12-07, Paul McGettigan: bug #53 change MAXNAMESTODISPLAY back to 10 from 30
+ */
+
+#ifndef CLUSTALW_H
+#define CLUSTALW_H
+/* Mark tidy up Nov 2005 */
+/*********************CLUSTALW.H*********************************************/
+/****************************************************************************/
+
+/*
+ *** AW NOT NEEDED ANYMORE since 2.0.9
+ *** done via including config.h(clustalw) or DEFINE(clustalx)
+ * Main header file for ClustalW.  Uncomment ONE of the following 4 lines
+ * depending on which compiler you wish to use.
+ */
+/* NOT SUPPORTED #define VMS 1                 VAX or ALPHA VMS */
+/* Think_C for Macintosh */
+//#define MAC 1 */
+/* Turbo C for PC's */
+// #define WINDOWS 1
+/* unix */
+//#define UNIX 1
+// d
+
+
+#define DEBUGFULL 0
+const bool DEBUGLOG = false;
+/***************************************************************************/
+/***************************************************************************/
+
+
+#include "general.h"
+#include "Array2D.h"
+#include "SquareMat.h"
+#include "SymMatrix.h"
+#include <vector>
+#include <string>
+using namespace std;
+namespace clustalw
+{
+
+typedef SymMatrix DistMatrix;
+typedef std::vector<vector <int> > TreeGroups;
+
+struct TreeNames
+{
+    string phylipName;
+    string clustalName;
+    string distName;
+    string nexusName;
+    string pimName;
+};
+
+struct AlignmentFileNames
+{
+    string treeFile;
+    string profile2TreeFile;
+    string clustalFile; 
+    string nrbfFile;
+    string gcgFile;
+    string phylipFile;
+    string gdeFile;
+    string nexusFile;
+    string fastaFile;
+};
+
+struct TreeNode
+{
+    // phylogenetic tree structure
+    struct TreeNode *left;
+    struct TreeNode *right;
+    struct TreeNode *parent;
+    float dist;
+    int leaf;
+    int order;
+    string name;
+};
+
+struct PhyloTree
+{
+    TreeGroups treeDesc;
+    vector<double> leftBranch;
+    vector<double> rightBranch;
+};
+struct SeqInfo
+{
+    int firstSeq;
+    int lastSeq;
+    int numSeqs;
+};
+
+struct LowScoreSegParams
+{
+    int firstSeq; 
+    int nSeqs;
+    int lastSeq;
+    int nCols;
+    vector<int>* seqWeight;
+    Array2D<int>* lowScoreRes;
+    bool seqWeightCalculated;
+};
+/* Global constants */
+const int extraEndElemNum = 2;
+const int ENDALN = 127;
+const int OK = -200;
+const int CANNOTOPENFILE = -300;
+const int NOSEQUENCESINFILE = -400;
+const int OTHERERROR = -500;
+const int ALLNAMESNOTDIFFERENT = -600;
+const int MUSTREADINPROFILE1FIRST = -700;
+const int EMPTYSEQUENCE = -800;
+const int SEQUENCETOOBIG = -900;
+const int BADFORMAT = -1000;
+     
+const int AABLOSUM = 0;
+const int AAPAM = 1;
+const int AAGONNET = 2;
+const int AAIDENTITY = 3;
+const int AAUSERDEFINED = 4;
+
+const int PWAABLOSUM = 0;
+const int PWAAPAM = 1;
+const int PWAAGONNET = 2;
+const int PWAAIDENTITY = 3;
+const int PWAAUSER = 4;
+
+const int DNAIUB = 0;
+const int DNACLUSTALW = 1;
+const int DNAUSERDEFINED = 2;
+
+const int AAHISTIDENTITY = 0;
+const int AAHISTGONNETPAM80 = 1;
+const int AAHISTGONNETPAM120 = 2;
+const int AAHISTGONNETPAM250 = 3;
+const int AAHISTGONNETPAM350 = 4;
+const int AAHISTUSER = 5;
+
+const int QTAASEGGONNETPAM80 = 0;
+const int QTAASEGGONNETPAM120 = 1;
+const int QTAASEGGONNETPAM250 = 2;
+const int QTAASEGGONNETPAM350 = 3;
+const int QTAASEGUSER = 4;
+
+const int MAXHYDRESIDUES = 9; // Only allowing 9 hyd residue choices
+const int Protein = 0;
+const int DNA = 1;
+const int Pairwise = 0;
+const int MultipleAlign = 1;
+
+const int OUTSECST = 0;
+const int OUTGAP = 1;
+const int OUTBOTH = 2;
+const int OUTNONE = 3;
+
+const int MAXNAMES = 150;    /* Max chars read for seq. names */ //nige, was 30
+//const int MAXNAMESTODISPLAY = 30; // Used for printout. Mark 18-7-07
+//const int MAXNAMESTODISPLAY = 10; // Bug #53. Paul 20-12-07
+const int MAXNAMESTODISPLAY = 30; //Paul replicate 1.83 behavour 9-2-08
+const int MINNAMESTODISPLAY = 10; //Paul replicate 1.83 behavour 9-2-08
+const int MAXTITLES = 60;      /* Title length */
+const int FILENAMELEN = 256;             /* Max. file name length */
+
+const int  UNKNOWN  = 0;
+const int  EMBLSWISS = 1;
+const int  PIR      = 2;
+const int  PEARSON  = 3;
+const int  GDE = 4;
+const int  CLUSTAL = 5;    /* DES */
+const int  MSF = 6; /* DES */
+const int  RSF = 7;    /* JULIE */
+const int  USER = 8;    /* DES */
+const int  PHYLIP = 9;    /* DES */
+const int  NEXUS = 10; /* DES */
+const int  FASTA = 11; /* Ramu */
+
+const int  NONE = 0;
+const int  SECST = 1;
+const int  GMASK = 2;
+
+const int  PROFILE = 0;
+const int  SEQUENCE = 1;
+
+const int  BS_NODE_LABELS = 2;
+const int  BS_BRANCH_LABELS = 1;
+
+const int  PAGE_LEN = 22;   /* Number of lines of help sent to screen */
+
+const int  PAGEWIDTH = 80;  /* maximum characters on output file page */
+const int  LINELENGTH = 60;  /* Output file line length */
+const int  GCG_LINELENGTH = 50;
+
+const int NJ = 1;
+const int UPGMA = 2;
+
+const int ALIGNMENT = 1;
+const int TREE = 2;
+
+const int MinIdentifier = 1;
+
+const string VALID_COMMAND_SEP = "-/";
+
+#ifdef OS_MAC
+    const char default_commandsep = '-';
+    const char DIRDELIM = '/';
+    const int INT_SCALE_FACTOR = 100;  /* Scaling factor to convert float to integer
+        for profile scores */
+
+#elif OS_WINDOWS
+    const char  default_commandsep = '/';
+    const char DIRDELIM = '\\';
+    const int INT_SCALE_FACTOR = 100;  /* Scaling factor to convert float to integer
+        for profile scores */
+
+#elif OS_UNIX
+    const char default_commandsep = '-';
+    const char DIRDELIM = '/';
+    const int INT_SCALE_FACTOR = 1000; /* Scaling factor to convert float to integer
+        for profile scores */
+#endif
+
+       
+const int NUMRES = 32; /* max size of comparison matrix */
+const int INPUT = 0;
+const int ALIGNED = 1;
+
+const int LEFT = 1;
+const int RIGHT = 2;
+
+const int NODE = 0;
+const int LEAF = 1;
+
+const int GAPCOL = 32;        /* position of gap open penalty in profile */
+const int LENCOL = 33;        /* position of gap extension penalty in profile */
+
+typedef struct
+{
+   /* Holds values for the pairwise scales */
+   float gapOpenScale; 
+   float gapExtendScale;
+   int intScale; 
+}PairScaleValues;
+
+typedef struct
+{
+    float scale;
+    float intScale;
+}PrfScaleValues;
+typedef struct node
+{
+     /* phylogenetic tree structure */
+    struct node *left;
+    struct node *right;
+    struct node *parent;
+    float dist;
+    int leaf;
+    int order;
+    char name[64];
+} stree,  *treeptr;
+
+typedef struct
+{
+    char title[30];
+    char string[30];
+} MatMenuEntry;
+
+typedef struct
+{
+    int noptions;
+    MatMenuEntry opt[10];
+} MatMenu;
+
+const int MAXMAT = 10;
+
+typedef struct
+{
+    int llimit;
+    int ulimit;
+    vector<short>* matptr;
+    vector<short>* AAXref;
+} SeriesMat;
+
+/*
+ * UserMatSeries holds the number of matrices in the series and 
+ */
+typedef struct
+{
+    int nmat;
+    SeriesMat mat[MAXMAT];
+} UserMatrixSeries;
+
+}
+#endif
+