123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- // SPDX-License-Identifier: LGPL-2.1
- /*
- * Copyright (C) 2009, 2010 Red Hat Inc, Steven Rostedt <[email protected]>
- *
- */
- #ifndef _PARSE_EVENTS_INT_H
- #define _PARSE_EVENTS_INT_H
- struct tep_cmdline;
- struct cmdline_list;
- struct func_map;
- struct func_list;
- struct event_handler;
- struct func_resolver;
- struct tep_plugins_dir;
- #define __hidden __attribute__((visibility ("hidden")))
- struct tep_handle {
- int ref_count;
- int header_page_ts_offset;
- int header_page_ts_size;
- int header_page_size_offset;
- int header_page_size_size;
- int header_page_data_offset;
- int header_page_data_size;
- int header_page_overwrite;
- enum tep_endian file_bigendian;
- enum tep_endian host_bigendian;
- int old_format;
- int cpus;
- int long_size;
- int page_size;
- struct tep_cmdline *cmdlines;
- struct cmdline_list *cmdlist;
- int cmdline_count;
- struct func_map *func_map;
- struct func_resolver *func_resolver;
- struct func_list *funclist;
- unsigned int func_count;
- struct printk_map *printk_map;
- struct printk_list *printklist;
- unsigned int printk_count;
- struct tep_event **events;
- int nr_events;
- struct tep_event **sort_events;
- enum tep_event_sort_type last_type;
- int type_offset;
- int type_size;
- int pid_offset;
- int pid_size;
- int pc_offset;
- int pc_size;
- int flags_offset;
- int flags_size;
- int ld_offset;
- int ld_size;
- int test_filters;
- int flags;
- struct tep_format_field *bprint_ip_field;
- struct tep_format_field *bprint_fmt_field;
- struct tep_format_field *bprint_buf_field;
- struct event_handler *handlers;
- struct tep_function_handler *func_handlers;
- /* cache */
- struct tep_event *last_event;
- struct tep_plugins_dir *plugins_dir;
- };
- enum tep_print_parse_type {
- PRINT_FMT_STRING,
- PRINT_FMT_ARG_DIGIT,
- PRINT_FMT_ARG_POINTER,
- PRINT_FMT_ARG_STRING,
- };
- struct tep_print_parse {
- struct tep_print_parse *next;
- char *format;
- int ls;
- enum tep_print_parse_type type;
- struct tep_print_arg *arg;
- struct tep_print_arg *len_as_arg;
- };
- void free_tep_event(struct tep_event *event);
- void free_tep_format_field(struct tep_format_field *field);
- void free_tep_plugin_paths(struct tep_handle *tep);
- unsigned short data2host2(struct tep_handle *tep, unsigned short data);
- unsigned int data2host4(struct tep_handle *tep, unsigned int data);
- unsigned long long data2host8(struct tep_handle *tep, unsigned long long data);
- /* access to the internal parser */
- int peek_char(void);
- void init_input_buf(const char *buf, unsigned long long size);
- unsigned long long get_input_buf_ptr(void);
- const char *get_input_buf(void);
- enum tep_event_type read_token(char **tok);
- void free_token(char *tok);
- #endif /* _PARSE_EVENTS_INT_H */
|