Perform factor reduction as a modular step
[lttv.git] / lttv / lttv / sync / event_processing_text.c
index 8268d823c6237297491e74c8e78325448a1cf634..bcbea9b2565a24e73b044318dfc6aae352d1d144 100644 (file)
@@ -37,8 +37,7 @@
 // Functions common to all processing modules
 static void initProcessingText(SyncState* const syncState, ...);
 static void destroyProcessingText(SyncState* const syncState);
-static void finalizeProcessingText(SyncState* const syncState);
-static void printProcessingStatsText(SyncState* const syncState);
+static AllFactors* finalizeProcessingText(SyncState* const syncState);
 static void writeProcessingTraceTimeOptionsText(SyncState* const syncState,
        const unsigned int i, const unsigned int j);
 static void writeProcessingTraceTraceOptionsText(SyncState* const syncState,
@@ -56,7 +55,6 @@ static ProcessingModule processingModuleText = {
        .initProcessing= &initProcessingText,
        .destroyProcessing= &destroyProcessingText,
        .finalizeProcessing= &finalizeProcessingText,
-       .printProcessingStats= &printProcessingStatsText,
        .graphFunctions= {
                .writeVariables= &writeProcessingGraphVariablesText,
                .writeTraceTraceOptions= &writeProcessingTraceTraceOptionsText,
@@ -122,7 +120,7 @@ static void destroyProcessingText(SyncState* const syncState)
 
        if (syncState->stats && processingData->factors)
        {
-               g_array_free(processingData->factors, TRUE);
+               freeAllFactors(processingData->factors, syncState->traceNb);
        }
 
        free(syncState->processingData);
@@ -136,12 +134,15 @@ static void destroyProcessingText(SyncState* const syncState)
  *
  * Args:
  *   syncState:    container for synchronization data.
+ *
+ * Returns:
+ *   AllFactors    synchronization factors for each trace pair
  */
-static void finalizeProcessingText(SyncState* const syncState)
+static AllFactors* finalizeProcessingText(SyncState* const syncState)
 {
        int retval;
        unsigned int* seq;
-       GArray* factors;
+       AllFactors* factors;
        ProcessingDataText* processingData= (ProcessingDataText*)
                syncState->processingData;
        FILE* testCase= processingData->testCase;
@@ -277,33 +278,8 @@ static void finalizeProcessingText(SyncState* const syncState)
        {
                processingData->factors= factors;
        }
-       else
-       {
-               g_array_free(factors, TRUE);
-       }
-}
-
 
-/*
- * Print statistics related to processing. Must be called after
- * finalizeProcessing.
- *
- * Args:
- *   syncState     container for synchronization data.
- */
-static void printProcessingStatsText(SyncState* const syncState)
-{
-       unsigned int i;
-
-       printf("Resulting synchronization factors:\n");
-       for (i= 0; i < syncState->traceNb; i++)
-       {
-               Factors* factors= &g_array_index(((ProcessingDataText*)
-                               syncState->processingData)->factors, Factors, i);
-
-               printf("\ttrace %u drift= %g offset= %g (%f)\n", i, factors->drift,
-                       factors->offset, factors->offset / CPU_FREQ);
-       }
+       return factors;
 }
 
 
This page took 0.025688 seconds and 4 git commands to generate.