Wrapper for Clustal Omega.
[jabaws.git] / binaries / src / clustalo / src / clustal / progress.h
diff --git a/binaries/src/clustalo/src/clustal/progress.h b/binaries/src/clustalo/src/clustal/progress.h
new file mode 100644 (file)
index 0000000..8ebca56
--- /dev/null
@@ -0,0 +1,50 @@
+/*********************************************************************
+ * Clustal Omega - Multiple sequence alignment
+ *
+ * Copyright (C) 2010 University College Dublin
+ *
+ * Clustal-Omega is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This file is part of Clustal-Omega.
+ *
+ ********************************************************************/
+
+/*
+ *  RCS $Id: progress.h 193 2011-02-07 15:45:21Z andreas $
+ */
+
+
+#ifndef CLUSTALO_PROGRESS_H
+#define CLUSTALO_PROGRESS_H
+
+#include "squid/stopwatch.h"
+
+typedef struct {
+    /* where to write to */
+    FILE *prFile;
+    /* prefix printed before each step */
+    char *pcPrefix;
+    bool bPrintCR;
+    char pcLastLogMsg[1024];
+    Stopwatch_t *prStopwatch;
+} progress_t;
+
+
+extern void
+NewProgress(progress_t **pprProgress, FILE *prFile, char *pcPrefix, bool bPrintCR);
+
+extern void
+FreeProgress(progress_t **pprProgress);
+
+extern void
+ProgressLog(progress_t *prProgress, 
+                       unsigned long int iStep, unsigned long int iTotalSteps,
+                       bool bForceOutput);
+
+extern void
+ProgressDone(progress_t *pprProgress);
+
+#endif