moved to: https://sites.google.com/site/cmzmasek/home/software/forester
[jalview.git] / forester / java / src / org / forester / application / mcc.java
index e31679a..23320fc 100644 (file)
 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
 //
 // Contact: phylosoft @ gmail . com
-// WWW: www.phylosoft.org/forester
+// WWW: https://sites.google.com/site/cmzmasek/home/software/forester
 
 package org.forester.application;
 
 import java.io.File;
 import java.io.FileInputStream;
+import java.io.InputStream;
 
+import org.forester.io.parsers.FastaParser;
 import org.forester.io.parsers.GeneralMsaParser;
 import org.forester.msa.Msa;
 import org.forester.msa.MsaMethods;
@@ -76,7 +78,13 @@ public class mcc {
                 System.exit( 0 );
             }
             Msa msa = null;
-            msa = GeneralMsaParser.parse( new FileInputStream( in ) );
+            final InputStream is = new FileInputStream( in );
+            if ( FastaParser.isLikelyFasta( in ) ) {
+                msa = FastaParser.parseMsa( is );
+            }
+            else {
+                msa = GeneralMsaParser.parse( is );
+            }
             if ( cla.isOptionSet( FROM_OPTION ) ) {
                 singleCalc( in, from, to, msa );
             }
@@ -90,7 +98,13 @@ public class mcc {
     }
 
     private static void printHelp() {
-        ForesterUtil.printProgramInformation( PRG_NAME, PRG_DESC, PRG_VERSION, PRG_DATE, E_MAIL, WWW, ForesterUtil.getForesterLibraryInformation() );
+        ForesterUtil.printProgramInformation( PRG_NAME,
+                                              PRG_DESC,
+                                              PRG_VERSION,
+                                              PRG_DATE,
+                                              E_MAIL,
+                                              WWW,
+                                              ForesterUtil.getForesterLibraryInformation() );
         System.out.println( "Usage:" );
         System.out.println();
         System.out.println( PRG_NAME + " <options> <msa input file>" );
@@ -115,15 +129,15 @@ public class mcc {
             step = 1;
         }
         final double id_ratios[] = new double[ msa.getLength() ];
-        for( int i = 0; i <= msa.getLength() - 1; ++i ) {
+        for( int i = 0; i <= ( msa.getLength() - 1 ); ++i ) {
             id_ratios[ i ] = MsaMethods.calculateIdentityRatio( msa, i );
         }
         String min_pos = "";
         String max_pos = "";
         double min = 1;
         double max = 0;
-        for( int i = 0; i <= msa.getLength() - 1; i += step ) {
-            int to = i + window - 1;
+        for( int i = 0; i <= ( msa.getLength() - 1 ); i += step ) {
+            int to = ( i + window ) - 1;
             if ( to > ( msa.getLength() - 1 ) ) {
                 to = msa.getLength() - 1;
             }