linux/tools/perf/util/data.h
<<
>>
Prefs
   1#ifndef __PERF_DATA_H
   2#define __PERF_DATA_H
   3
   4#include <stdbool.h>
   5
   6enum perf_data_mode {
   7        PERF_DATA_MODE_WRITE,
   8        PERF_DATA_MODE_READ,
   9};
  10
  11struct perf_data_file {
  12        const char              *path;
  13        int                      fd;
  14        bool                     is_pipe;
  15        bool                     force;
  16        unsigned long            size;
  17        enum perf_data_mode      mode;
  18};
  19
  20static inline bool perf_data_file__is_read(struct perf_data_file *file)
  21{
  22        return file->mode == PERF_DATA_MODE_READ;
  23}
  24
  25static inline bool perf_data_file__is_write(struct perf_data_file *file)
  26{
  27        return file->mode == PERF_DATA_MODE_WRITE;
  28}
  29
  30static inline int perf_data_file__is_pipe(struct perf_data_file *file)
  31{
  32        return file->is_pipe;
  33}
  34
  35static inline int perf_data_file__fd(struct perf_data_file *file)
  36{
  37        return file->fd;
  38}
  39
  40static inline unsigned long perf_data_file__size(struct perf_data_file *file)
  41{
  42        return file->size;
  43}
  44
  45int perf_data_file__open(struct perf_data_file *file);
  46void perf_data_file__close(struct perf_data_file *file);
  47ssize_t perf_data_file__write(struct perf_data_file *file,
  48                              void *buf, size_t size);
  49
  50#endif /* __PERF_DATA_H */
  51