1 // SPDX-License-Identifier: LGPL-2.1
3 * Copyright (C) 2009, 2010 Red Hat Inc, Steven Rostedt <srostedt@redhat.com>
7 #ifndef _PARSE_EVENTS_INT_H
8 #define _PARSE_EVENTS_INT_H
16 struct tep_plugins_dir
;
18 #define __hidden __attribute__((visibility ("hidden")))
23 int header_page_ts_offset
;
24 int header_page_ts_size
;
25 int header_page_size_offset
;
26 int header_page_size_size
;
27 int header_page_data_offset
;
28 int header_page_data_size
;
29 int header_page_overwrite
;
31 enum tep_endian file_bigendian
;
32 enum tep_endian host_bigendian
;
40 struct tep_cmdline
*cmdlines
;
41 struct cmdline_list
*cmdlist
;
44 struct func_map
*func_map
;
45 struct func_resolver
*func_resolver
;
46 struct func_list
*funclist
;
47 unsigned int func_count
;
49 struct printk_map
*printk_map
;
50 struct printk_list
*printklist
;
51 unsigned int printk_count
;
53 struct tep_event
**events
;
55 struct tep_event
**sort_events
;
56 enum tep_event_sort_type last_type
;
77 struct tep_format_field
*bprint_ip_field
;
78 struct tep_format_field
*bprint_fmt_field
;
79 struct tep_format_field
*bprint_buf_field
;
81 struct event_handler
*handlers
;
82 struct tep_function_handler
*func_handlers
;
85 struct tep_event
*last_event
;
87 struct tep_plugins_dir
*plugins_dir
;
90 enum tep_print_parse_type
{
93 PRINT_FMT_ARG_POINTER
,
97 struct tep_print_parse
{
98 struct tep_print_parse
*next
;
102 enum tep_print_parse_type type
;
103 struct tep_print_arg
*arg
;
104 struct tep_print_arg
*len_as_arg
;
107 void free_tep_event(struct tep_event
*event
);
108 void free_tep_format_field(struct tep_format_field
*field
);
109 void free_tep_plugin_paths(struct tep_handle
*tep
);
111 unsigned short data2host2(struct tep_handle
*tep
, unsigned short data
);
112 unsigned int data2host4(struct tep_handle
*tep
, unsigned int data
);
113 unsigned long long data2host8(struct tep_handle
*tep
, unsigned long long data
);
115 /* access to the internal parser */
117 void init_input_buf(const char *buf
, unsigned long long size
);
118 unsigned long long get_input_buf_ptr(void);
119 const char *get_input_buf(void);
120 enum tep_event_type
read_token(char **tok
);
121 void free_token(char *tok
);
123 #endif /* _PARSE_EVENTS_INT_H */