summaryrefslogtreecommitdiff
path: root/tracker.h
blob: 098f4a17927a1c23162627ed6da5676a5cb7a272 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdint.h>
#include "profile.h"

typedef struct tracker_t tracker_t;

tracker_t *tracker_new (void);
void	   tracker_free (tracker_t *);

void tracker_add_process (tracker_t  *tracker,
			  pid_t	      pid,
			  const char *command_line);
void tracker_add_fork (tracker_t *tracker,
		       pid_t      pid,
		       pid_t	  child_pid);
void tracker_add_exit (tracker_t *tracker,
		       pid_t      pid);
void tracker_add_map (tracker_t * tracker,
		      pid_t	     pid,
		      uint64_t    start,
		      uint64_t    end,
		      uint64_t    offset,
		      uint64_t    inode,
		      const char *filename);
void tracker_add_sample  (tracker_t *tracker,
			  pid_t	     pid,
			  uint64_t  *ips,
			  int        n_ips);

Profile *tracker_create_profile (tracker_t *tracker);