Use a common function to print stats of all modules
[lttv.git] / lttv / lttv / sync / sync_chain.c
index e65415971f6f148ad7c308a821ce8525dc4b5716..c32f341bd72508a59f1e62117d5816ba3d37b5d1 100644 (file)
@@ -33,6 +33,29 @@ GQueue analysisModules= G_QUEUE_INIT;
 GQueue moduleOptions= G_QUEUE_INIT;
 
 
+/*
+ * Calculate the elapsed time between two timeval values
+ *
+ * Args:
+ *   syncState:    Container for synchronization data
+ */
+void printStats(SyncState* const syncState)
+{
+       if (syncState->processingModule->printProcessingStats != NULL)
+       {
+               syncState->processingModule->printProcessingStats(syncState);
+       }
+       if (syncState->matchingModule->printMatchingStats != NULL)
+       {
+               syncState->matchingModule->printMatchingStats(syncState);
+       }
+       if (syncState->analysisModule->printAnalysisStats != NULL)
+       {
+               syncState->analysisModule->printAnalysisStats(syncState);
+       }
+}
+
+
 /*
  * Calculate the elapsed time between two timeval values
  *
@@ -122,3 +145,19 @@ gint gcfCompareAnalysis(gconstpointer a, gconstpointer b)
        return strncmp(analysisModule->name, name, strlen(analysisModule->name) +
                1);
 }
+
+
+/*
+ * A GFunc for g_queue_foreach()
+ *
+ * Concatenate analysis module names.
+ *
+ * Args:
+ *   data:         AnalysisModule*
+ *   user_data:    GString*, concatenated names
+ */
+void gfAppendAnalysisName(gpointer data, gpointer user_data)
+{
+       g_string_append((GString*) user_data, ((AnalysisModule*) data)->name);
+       g_string_append((GString*) user_data, ", ");
+}
This page took 0.022903 seconds and 4 git commands to generate.