# tep_get_header_page_size

## NAME



           tep_get_header_page_size, tep_get_header_timestamp_size,
           tep_is_old_format - Get the data stored in the header page, in
           kernel context.
    


## SYNOPSIS



           **#include <event-parse.h>**
    
           int **tep_get_header_page_size**(struct tep_handle *_tep_);
           int **tep_get_header_timestamp_size**(struct tep_handle *_tep_);
           bool **tep_is_old_format**(struct tep_handle *_tep_);
    


## DESCRIPTION



           These functions retrieve information from kernel context, stored
           in tracefs events/header_page. Old kernels do not have header page
           info, so default values from user space context are used.
    
           The **tep_get_header_page_size()** function returns the size of a long
           integer, in kernel context. The _tep_ argument is trace event parser
           context. This information is retrieved from tracefs
           events/header_page, "commit" field.
    
           The **tep_get_header_timestamp_size()** function returns the size of
           timestamps, in kernel context. The _tep_ argument is trace event
           parser context. This information is retrieved from tracefs
           events/header_page, "timestamp" field.
    
           The **tep_is_old_format()** function returns true if the kernel
           predates the addition of events/header_page, otherwise it returns
           false.
    


## RETURN VALUE



           The **tep_get_header_page_size()** function returns the size of a long
           integer, in bytes.
    
           The **tep_get_header_timestamp_size()** function returns the size of
           timestamps, in bytes.
    
           The **tep_is_old_format()** function returns true, if an old kernel is
           used to generate the tracing data, which has no event/header_page.
           If the kernel is new, or _tep_ is NULL, false is returned.
    


## EXAMPLE



               #include <event-parse.h>
               ...
               struct tep_handle *tep = tep_alloc();
               ...
                       int longsize;
                       int timesize;
                       bool old;
    
                       longsize = tep_get_header_page_size(tep);
                       timesize = tep_get_header_timestamp_size(tep);
                       old = tep_is_old_format(tep);
    
                       printf ("%s kernel is used to generate the tracing data.\n",
                               old?"Old":"New");
                       printf("The size of a long integer is %d bytes.\n", longsize);
                       printf("The timestamps size is %d bytes.\n", timesize);
               ...
    


## 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.
    


## 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
    


* * *