Move and update documentation
[lttv.git] / lttv / lttv / sync / event_processing.h
CommitLineData
70407e86 1/* This file is part of the Linux Trace Toolkit viewer
277e5b53 2 * Copyright (C) 2009, 2010 Benjamin Poirier <benjamin.poirier@polymtl.ca>
70407e86 3 *
277e5b53
BP
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation, either version 2.1 of the License, or (at
7 * your option) any later version.
70407e86 8 *
277e5b53
BP
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
12 * License for more details.
70407e86 13 *
277e5b53
BP
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
70407e86
BP
16 */
17
18#ifndef EVENT_PROCESSING_H
19#define EVENT_PROCESSING_H
20
21#include <glib.h>
08365995 22#include <stdio.h>
70407e86 23
10341d26 24#include "data_structures.h"
467066ee 25#include "graph_functions.h"
70407e86
BP
26
27
28struct _SyncState;
29
30typedef struct
31{
32 char* name;
33
eb8e0e6f
BP
34 /*
35 * This function is called at the beginning of a synchronization run for a
36 * set of traces. Allocate and initialize data structures for
37 * synchronizing a traceset.
38 */
2f076594 39 void (*initProcessing)(struct _SyncState* const syncStateLttv, ...);
eb8e0e6f
BP
40
41 /*
42 * Obtain the factors from downstream.
43 */
0a87ec9a 44 AllFactors* (*finalizeProcessing)(struct _SyncState* const syncState);
eb8e0e6f
BP
45
46 /*
47 * Print statistics related to processing. Is always called after
48 * finalizeProcessing.
49 */
70407e86 50 void (*printProcessingStats)(struct _SyncState* const syncState);
eb8e0e6f
BP
51
52 /*
53 * Deallocate processingData. No more functions may be called after this.
54 */
49c335f1 55 void (*destroyProcessing)(struct _SyncState* const syncState);
eb8e0e6f
BP
56
57 /*
58 * Write the processing-specific options and graph commands in the gnuplot
59 * script. Is always called after finalizeProcessing.
60 */
467066ee 61 GraphFunctions graphFunctions;
70407e86
BP
62} ProcessingModule;
63
64#endif
This page took 0.026635 seconds and 4 git commands to generate.