Commit | Line | Data |
---|---|---|
f10c27a8 | 1 | /* This file is part of the Linux Trace Toolkit viewer |
277e5b53 | 2 | * Copyright (C) 2009, 2010 Benjamin Poirier <benjamin.poirier@polymtl.ca> |
f10c27a8 | 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. | |
f10c27a8 | 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. | |
f10c27a8 | 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/>. | |
f10c27a8 BP |
16 | */ |
17 | ||
18 | #ifndef EVENT_MATCHING_BROADCAST_H | |
19 | #define EVENT_MATCHING_BROADCAST_H | |
20 | ||
21 | #include <glib.h> | |
22 | ||
23 | #include "data_structures.h" | |
24 | ||
25 | ||
26 | typedef struct | |
27 | { | |
28 | unsigned int totComplete, | |
29 | totReceive, | |
30 | totIncomplete, | |
31 | totTransmit; | |
32 | } MatchingStatsBroadcast; | |
33 | ||
ffa21cfd BP |
34 | typedef struct |
35 | { | |
36 | /* This array is used for graphs. It contains file pointers to files where | |
37 | * broadcast differential delay points are output. | |
38 | * | |
39 | * accuracyPoints is divided into three parts depending on the position of an | |
40 | * element accuracyPoints[i][j]: | |
41 | * Lower triangular part of the matrix | |
42 | * i > j | |
43 | * This contains the difference t[i] - t[j] between the times when | |
44 | * a broadcast was received in trace i and trace j. | |
45 | * Diagonal part of the matrix | |
46 | * i = j | |
47 | * This area is not allocated. | |
48 | * Upper triangular part of the matrix | |
49 | * i < j | |
50 | * This area is not allocated. | |
51 | */ | |
52 | FILE*** accuracyPoints; | |
53 | ||
54 | // pointsNb[traceNum][traceNum] has the same structure as accuracyPoints | |
55 | unsigned int** pointsNb; | |
56 | } MatchingGraphsBroadcast; | |
57 | ||
f10c27a8 BP |
58 | typedef struct |
59 | { | |
60 | // Broadcast* pendingBroadcasts[dataStart] | |
61 | GHashTable* pendingBroadcasts; | |
62 | ||
63 | MatchingStatsBroadcast* stats; | |
ffa21cfd | 64 | MatchingGraphsBroadcast* graphs; |
f10c27a8 BP |
65 | } MatchingDataBroadcast; |
66 | ||
2f961b65 BP |
67 | void registerMatchingBroadcast(); |
68 | ||
f10c27a8 | 69 | #endif |