tep_event_common_fields(3) — Linux manual page

LIBTRACEEVENT(3)          libtraceevent Manual          LIBTRACEEVENT(3)

NAME

       tep_event_common_fields, tep_event_fields - Get a list of fields
       for an event.

SYNOPSIS

       #include <event-parse.h>

       struct tep_format_field **tep_event_common_fields(struct tep_event *event);
       struct tep_format_field **tep_event_fields(struct tep_event *event);

DESCRIPTION

       The tep_event_common_fields() function returns an array of
       pointers to common fields for the event. The array is allocated
       in the function and must be freed by free(). The last element of
       the array is NULL.

       The tep_event_fields() function returns an array of pointers to
       event specific fields for the event. The array is allocated in
       the function and must be freed by free(). The last element of the
       array is NULL.

RETURN VALUE

       Both tep_event_common_fields() and tep_event_fields() functions
       return an array of pointers to tep_format_field structures in
       case of success, or NULL in case of an error.

EXAMPLE

           #include <event-parse.h>
           ...
           struct tep_handle *tep = tep_alloc();
           ...
           int i;
           struct tep_format_field **fields;
           struct tep_event *event = tep_find_event_by_name(tep, "kvm", "kvm_exit");
           if (event != NULL) {
                   fields = tep_event_common_fields(event);
                   if (fields != NULL) {
                           i = 0;
                           while (fields[i]) {
                                   /*
                                     walk through the list of the common fields
                                     of the kvm_exit event
                                   */
                                   i++;
                           }
                           free(fields);
                   }
                   fields = tep_event_fields(event);
                   if (fields != NULL) {
                           i = 0;
                           while (fields[i]) {
                                   /*
                                     walk through the list of the event specific
                                     fields of the kvm_exit event
                                   */
                                   i++;
                           }
                           free(fields);
                   }
           }
           ...

FILES

           event-parse.h
                   Header file to include in order to have access to the library APIs.
           -ltraceevent
                   Linker switch to add when building a program that uses the library.

SEE ALSO

       libtraceevent(3), trace-cmd(1)

AUTHOR

           Steven Rostedt <rostedt@goodmis.org[1]>, author of libtraceevent.
           Tzvetomir Stoyanov <tz.stoyanov@gmail.com[2]>, author of this man page.

REPORTING BUGS

       Report bugs to <linux-trace-devel@vger.kernel.org[3]>

LICENSE

       libtraceevent is Free Software licensed under the GNU LGPL 2.1

RESOURCES

       https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/ 

NOTES

        1. rostedt@goodmis.org
           mailto:rostedt@goodmis.org

        2. tz.stoyanov@gmail.com
           mailto:tz.stoyanov@gmail.com

        3. linux-trace-devel@vger.kernel.org
           mailto:linux-trace-devel@vger.kernel.org

COLOPHON

       This page is part of the libtraceevent (Linux kernel trace event
       library) project.  Information about the project can be found at
       ⟨https://www.trace-cmd.org/⟩.  If you have a bug report for this
       manual page, see ⟨https://www.trace-cmd.org/⟩.  This page was
       obtained from the project's upstream Git repository
       ⟨https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git⟩
       on 2024-06-14.  (At that time, the date of the most recent commit
       that was found in the repository was 2024-05-17.)  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to man-pages@man7.org

libtraceevent 1.7.3            09/24/2023               LIBTRACEEVENT(3)