JWS-112 Bumping version of ClustalW (src, binaries and windows) to version 2.1.
[jabaws.git] / binaries / src / clustalw / src / fileInput / ClustalFileParser.cpp
index d63b6b6..ea312c0 100644 (file)
@@ -52,7 +52,7 @@ ClustalFileParser::~ClustalFileParser()
 }
 
 
-    Sequence ClustalFileParser::getSeq(int seqNum, string *offendingSeq)
+Sequence ClustalFileParser::getSeq(int seqNum, string *offendingSeq)
 {
     char line[MAXLINE + 1];
     line[0] = EOS;
@@ -148,6 +148,9 @@ ClustalFileParser::~ClustalFileParser()
         }
         freeFileResources(_fileIn);
 
+       // getSecStructure(vector<char>& gapPenaltyMask, 
+       //      vector<char>& secStructMask, string& secStructName, int &structPenalties, int length)
+
         if ((int)characterSeq.length() > userParameters->getMaxAllowedSeqLength())
         {
             parseExitCode=SEQUENCETOOBIG;
@@ -237,6 +240,12 @@ int ClustalFileParser::countSeqs()
 void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask, 
       vector<char>& secStructMask, string& secStructName, int &structPenalties, int length)
 {
+    bool guigetss = false;
+    if(userParameters->getProfileNum() == 1 && userParameters->getStructPenalties1())
+         guigetss = true;
+    if(userParameters->getProfileNum() == 2 && userParameters->getStructPenalties2())
+         guigetss = true;
+
     char title[MAXLINE + 1];
     title[0] = '\0';
     char line[MAXLINE + 1];
@@ -318,7 +327,7 @@ void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask,
                 utilityObject->rTrim(sname);
                 utilityObject->blankToUnderscore(sname);
             
-                if (userParameters->getInteractive())
+                if (userParameters->getInteractive() && !userParameters->getGui())
                 {
                     strcpy(title, "Found secondary structure in alignment file: ");
                     strcat(title, sname);
@@ -329,7 +338,7 @@ void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask,
                 {
                     (*lin2) = 'y';
                 }
-                if ((*lin2 != 'n') && (*lin2 != 'N'))
+                if (guigetss || ((*lin2 != 'n') && (*lin2 != 'N')))
                 {
                     structPenalties = SECST;
                     struct_index = ix;
@@ -374,7 +383,7 @@ void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask,
                 utilityObject->rTrim(sname);
                 utilityObject->blankToUnderscore(sname);
             
-                if (userParameters->getInteractive())
+                if (userParameters->getInteractive() && !userParameters->getGui())
                 {
                     strcpy(title, "Found gap penalty mask in alignment file: ");
                     strcat(title, sname);
@@ -385,7 +394,7 @@ void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask,
                 {
                     (*lin2) = 'y';
                 }
-                if ((*lin2 != 'n') && (*lin2 != 'N'))
+                if (guigetss || ((*lin2 != 'n') && (*lin2 != 'N')))
                 {
                     structPenalties = GMASK;
                     struct_index = ix;
@@ -563,7 +572,7 @@ void ClustalFileParser::getSecStructure(vector<char>& gapPenaltyMask,
                 }
                 if (!_fileIn->getline(line, MAXLINE + 1))
                 {
-                    freeFileResources(_fileIn);    
+                    freeFileResources(_fileIn);
                     return ;
                 }
             }