Use a common function to print stats of all modules
authorBenjamin Poirier <benjamin.poirier@polymtl.ca>
Thu, 26 Nov 2009 20:57:03 +0000 (15:57 -0500)
committerBenjamin Poirier <benjamin.poirier@polymtl.ca>
Fri, 18 Dec 2009 19:04:17 +0000 (14:04 -0500)
Removes code duplication.

Signed-off-by: Benjamin Poirier <benjamin.poirier@polymtl.ca>
lttv/lttv/sync/sync_chain.c
lttv/lttv/sync/sync_chain.h
lttv/lttv/sync/sync_chain_lttv.c
lttv/modules/text/sync_chain_batch.c

index 0d9773fac75633eb0cd1b82beb45edaf8d3a407c..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
  *
index d187b30402c14f79cbe33c1aed605659594436dc..d999c9ce4327cafd6eafb9b78e41aaec04ccb45d 100644 (file)
@@ -65,6 +65,7 @@ extern GQueue matchingModules;
 extern GQueue analysisModules;
 extern GQueue moduleOptions;
 
+void printStats(SyncState* const syncState);
 
 void timeDiff(struct timeval* const end, const struct timeval* const start);
 
index f2389bd8f54405a001d36c3aeb057a92f10f2861..640042d1c61c92e583a9972874d998ab28578357 100644 (file)
@@ -181,7 +181,7 @@ void syncTraceset(LttvTracesetContext* const traceSetContext)
                syncState->stats= false;
        }
 
-       if (optionSyncGraphs.present)
+       if (!optionSyncNull.present && optionSyncGraphs.present)
        {
                // Create the graph directory right away in case the module initialization
                // functions have something to write in it.
@@ -242,7 +242,7 @@ void syncTraceset(LttvTracesetContext* const traceSetContext)
        syncState->processingModule->finalizeProcessing(syncState);
 
        // Write graphs file
-       if (optionSyncGraphs.present)
+       if (!optionSyncNull.present && optionSyncGraphs.present)
        {
                writeGraphsScript(syncState);
 
@@ -252,21 +252,10 @@ void syncTraceset(LttvTracesetContext* const traceSetContext)
                }
        }
 
-       if (syncState->processingModule->printProcessingStats != NULL)
+       if (!optionSyncNull.present && optionSyncStats.present)
        {
-               syncState->processingModule->printProcessingStats(syncState);
-       }
-       if (syncState->matchingModule->printMatchingStats != NULL)
-       {
-               syncState->matchingModule->printMatchingStats(syncState);
-       }
-       if (syncState->analysisModule->printAnalysisStats != NULL)
-       {
-               syncState->analysisModule->printAnalysisStats(syncState);
-       }
+               printStats(syncState);
 
-       if (optionSyncStats.present)
-       {
                printf("Resulting synchronization factors:\n");
                for (i= 0; i < syncState->traceNb; i++)
                {
index c88b13c5962623fdf3491829d9e1c0bf4f91ae8a..55abb676c946678a29fcd552c6d1a1f5f6fe6f2d 100644 (file)
@@ -291,6 +291,7 @@ void setupSyncChain(LttvTracesetContext* const traceSetContext)
        tracesetChainState->syncState= syncState;
        syncState->traceNb= lttv_traceset_number(traceSetContext->ts);
 
+       // Statistics are always on with eval
        syncState->stats= true;
 
        if (optionEvalGraphs)
@@ -357,18 +358,7 @@ void teardownSyncChain(LttvTracesetContext* const traceSetContext)
                }
        }
 
-       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);
-       }
+       printStats(syncState);
 
        printf("Resulting synchronization factors:\n");
     for (i= 0; i < syncState->traceNb; i++)
This page took 0.026223 seconds and 4 git commands to generate.