#include <config.h>
#endif
+#include <stdarg.h>
#include <stdlib.h>
#include "sync_chain.h"
// Functions common to all processing modules
-static void initProcessingLTTVNull(SyncState* const syncState,
- LttvTracesetContext* const traceSetContext);
+static void initProcessingLTTVNull(SyncState* const syncState, ...);
static void destroyProcessingLTTVNull(SyncState* const syncState);
static void finalizeProcessingLTTVNull(SyncState* const syncState);
* syncState: container for synchronization data.
* This function allocates these processingData members:
* hookListList
- * traceSetContext: set of LTTV traces
+ * traceSetContext: LttvTracesetContext*, set of LTTV traces
*/
-static void initProcessingLTTVNull(SyncState* const syncState,
- LttvTracesetContext* const traceSetContext)
+static void initProcessingLTTVNull(SyncState* const syncState, ...)
{
ProcessingDataLTTVNull* processingData;
+ LttvTracesetContext* traceSetContext;
+ va_list ap;
processingData= malloc(sizeof(ProcessingDataLTTVNull));
syncState->processingData= processingData;
processingData->hookListList= g_array_sized_new(FALSE, FALSE,
sizeof(GArray*), syncState->traceNb);
+ va_start(ap, syncState);
+ traceSetContext= va_arg(ap, LttvTracesetContext*);
+ va_end(ap);
registerHooks(processingData->hookListList, traceSetContext,
&processEventLTTVNull, syncState,
syncState->matchingModule->canMatch);